1.3寸OLED显示屏连接Arduino错误使用SSD1306导致出现白边的问题

时间:2024-04-12 19:49:33

这其实是一个很简单的问题,市场上在售的oled 显示屏分为0.96和1.3 寸两个版本,当然这里面还有SPI和I2C不同接线的区分。

0.96 的驱动芯片是SSD1306,而1.3的驱动芯片是SH1106,由于不小心经常会给1.3用上SSD1306的驱动,导致了oled屏幕出现不稳定的情况,甚至出现白边,如下图所示:

 

1.3寸OLED显示屏连接Arduino错误使用SSD1306导致出现白边的问题

如果是使用正确的SH1106驱动,那么则是:

1.3寸OLED显示屏连接Arduino错误使用SSD1306导致出现白边的问题

 

一切正常,

二者在Arduino定义下分别是:

U8G2_SSD1306_128X64_NONAME_1_HW_I2C u8g2(U8G2_R0,SCL,SDA,U8X8_PIN_NONE);

U8G2_SH1106_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE);

SH1106 I2C的只有一个定义,所以大家还是买0.96的,别买1.3寸的给自己找麻烦。

不过让人奇怪的是后者又占用了70%左右的动态内存,前者只有30%多,另外一个问题就是U8G2出现了显示汉字不全的情况,不知道是怎么回事,没有仔细研究过