I2C总线上只能有一个主机,可以有多个从机。只有主机才能发起通信。主机通过叫号(号码就是从机地址,开始通信的第一个命令里必须包含)来选择要通信的从机。 OLED地址在驱动LQ12864.h的两个函数里使用到,如下图所示。 关于I2C OLED地址,以下两篇博文总结得很好,快去看看吧。 0.96寸OLED显示屏 IIC接口(SSD1306) -...
其实XR806本身自带了OLED主控为SSD1306的驱动(采用的是SPI接口方式),移植基于I2C接口的库也相对简单,可以参考开源库 harmonyos-ssd1306,将其中的I2C相关头文件和API替换为XR806 OpenHarmony中的相关头文件和API,编译通过即可。 其中涉及到BUID.gn的修改如下: static_library("oled_ssd1306") { sources = [ "ssd13...
我们将在本教程中使用的 OLED显示屏是 SSD1306 型号:单色 0.96 英寸显示屏,像素为 128×64 像素,如下图所示。 OLED 显示屏不需要背光,在黑暗环境中会形成非常好的对比度。此外,其像素仅在打开时消耗能量,因此 OLED 显示屏与其他显示器相比消耗的电量更少。 我们使用的模型有四个引脚,并使用 I2C 通信协议与任...
在本章节中,我们将使用I2C接口连接ESP32和OLED显示屏,实现信息的显示和控制。 简单来说,与传统液晶显示屏相比,LED显示屏的像素材料由发光二极管组成。由于像素密度不高,早期LED显示屏主要用于户外广告牌等场合。然而,随着技术的不断成熟,LED显示屏的集成度越来越高,现在即使是小尺寸的屏幕也能够实现较高的分辨率。 ...
sudo i2cdetect -y 1 运行结果如图所示(这里有两个地址,0x3C是该oled模块默认的物理地址,0x3D是上述oled修改后的地址) 安装luma.oled库 接下来,您需要在树莓派上安装luma.oled库。可以通过以下命令在终端中进行安装: sudo pip3 install luma.oled 测试Python程序 ...
OLED显示屏是0.96寸OLED显示屏,型号为SSD1306,像素为128 * 64。 OLED液晶屏采用i2c通信方式,根据芯片手册说明,从设备地址为 0x3C。 主要代码分析 这部分代码为i2c初始化的代码。首先用 I2cIoInit() 函数将GPIO0_PC1复用为I2C1_SDA_M1,GPIO0_PC2复用为I2C1_SCL_M1。最后调用 LzI2cInit()函数初始化I2C1端口...
I2C通信 I2C通信是一种单片机常用的通信协议,它具有一根总线设计,具有一个主机,可以挂载多个设备在总线上作为从机,主机通过选定不同的发送地址来发送内容给不同的从机。 OLED屏 采用具有4针脚的,支持I2C通信的OLED屏,大小为0.96寸的单色小屏,像素数为128x64。
1、需要0.96寸I2C驱动的OLED屏幕进行动态显示,SDA—-p511(p50b);SCL—-p512(p50c),公式首先将p去掉还有三位,以p511为例,最后转换的数字为 “(5x16x16)+(1x10)+1”算出来为 1291 转换为16进制为0x50b。注:在程序里的话需要将字符转为数字。
1、要启动OLED显示屏,我们还需要使用Arduino-OLED第三方库,下方的链接是下载库的压缩包。esp8266和esp32都可以用的,通过下载好的压缩包,我们点击项目——>加载库——>添加zip库把它加载进去。 https://github.com/ThingPulse/esp8266-oled-ssd1306/tree/4.2.0 ...