一般市面上买到的单色oled屏幕模块一般都是同时支持spi和i2c接口的,而默认一般都是spi接口模式,需要根据说明书调整模模块上电阻的位置来转换到i2c模式。我手中这个模块一般比较常见,分辨率是128*64,需要焊接R1和R4,注意下方那个电阻位置要短接。 然后连接到zero的i2c0的位置,reset引脚我连接到了uart2的tx脚位置。我...
寻址模式设置开启地址0-729Write_Cmd(0x00);//设置低列地址30Write_Cmd(0x10);//设置高列地址31Write_Cmd(0x40);//设置显示开始行 0-6332Write_Cmd(0xD9);//设置预充电时期33Write_Cmd(0x22);//充电时间34Write_Cmd(0xDB);//设置取消选择级别35Write_Cmd(0x20);//默认0x20 0.77xvcc36Write_Cmd(0...
I2C类 – 二线串行协议 查找OLEDI2C地址 在使用前,需要在putty中查找OLED的地址,并在ssd1306.py的SSD1306_I2C类中对addr进行特定的修改才能正常使用。 from pyb import I2C i2c = I2C(2) # create on bus 2 i2c.init(I2C.MASTER, baud...
编译后生成的镜像,便可以烧录验证。 注:以上基础工程是基于wlan_demo,oled屏幕显示需要使用I2C外设和移植oled库 库移植 其实XR806本身自带了OLED主控为SSD1306的驱动(采用的是SPI接口方式),移植基于I2C接口的库也相对简单,可以参考开源库 harmonyos-ssd1306,将其中的I2C相关头文件和API替换为XR806OpenHarmony中的相关头...
OLED显示屏I2C接口_哈士奇上蔚的博客-CSDN博客_oled i2c 由于仿真图里OLED的D/C#接高电平。所以I2C从机地址是0x7A,而不是驱动代码里的0x78。我们面临了两个选择:一是改电路,即把D/C#接地;二是修改代码,把0x78改为0x7A。改代码容易,哈哈。 #define SLAVE_ADDRESS 0x7A // 0x78 ...
由于OLED 显示屏使用 I2C 通信协议,因此布线非常简单。您可以使用下表作为参考。 或者,您可以按照下一个示意图将 ESP8266 连接到 OLED 显示屏。 在此示例中,我们使用的是 I2C 通信协议。ESP8266 中最适合 I2C 通信的引脚是GPIO 5(SCL) 和GPIO 4(SDA)。
2.I2C 0.96" OLED 屏 3.面包线若干 连接电路 编写代码 代码简说 上述代码中 OLED 的 I2C 地址是 0x3C,不同厂家的产品地址可能预设不一样,具体参考厂家的说明书。或者也可以通过 I2C.scan()来获取设备地址。sda和scl的引脚请根据你实际的连接来修改。
I2C 总线可以通过外部连线进行在线检测,便于系统故障诊断和调试,故障可以立即被寻址,软件也有利于标准化和模块化,缩短开发时间。 每个连接到 I2C 总线上的器件都有一个唯一的地址(7bit),且每个器件都可以作为主机也可以作为从机(但是同一时间主机只能有一个),总线上的器件增加和删除不影响其他器件正常工作。I2C 总线...
I2C_Init(): typedef struct { uint32_t I2C_ClockSpeed; //I2C传输速率,单位Hz(<=400k) uint16_t I2C_Mode; //选择I2C使用方式(I2C/SMBus) uint16_t I2C_DutyCycle; //设置SCL占空比(无严格要求) uint16_t I2C_OwnAddress1; //配置STM32的I2C地址,与I2C总线上的其他通讯地址不同即可 ...