ESP8266如何使用u8g2(I2C)驱动SH1106的OLED

u8g2是一款单色图形库,非常适合12864之类的显示屏,基本上支持了市面上的主流显示控制器。可是偏偏对SH1106不是那么友好,使用起来不是很方便。打开IDE的示例程序可以看到对SH1106列出来的几乎都SPI通信方式,仅仅只有一条是使用了硬件I2C的,但对于使用想使用模拟方式的就不是很方便了。

今天就分享一下怎么在ESP8266上使用u8g2驱动SH1106的OLED,本文中使用的是模拟I2C的方式,Arduino IDE编写。

一.首先在IDE库中安装u8g2库

直接在IDE的库管理器搜索“u8g2”关键字下载安装即可:

二 .打开示例程序修改代码

我打开的是u8g2logo的示例程序。然后再敲下这句代码或者复制示例中硬件I2C的修改:

U8G2_SH1106_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0,  /*SCL*/  14,  /*SDA*/  2,   /*reset*/  U8X8_PIN_NONE);

*注 :函数内的第一个和最后一个参数不用修改,SCL和SDA则修改为自己板子上要对应的引脚。实测8266上的GPIO16不可用作I2C引脚。 

三 .注释steup函数中引脚配置的代码

 四.连接好你的设备,编译上传

编译无误,上传成功。

五 .大功告成

接下来你就可以使用u8g2去玩SH1106了。

*注:本文对于SSD1306控制器也是适用的,但SH1106是不兼容SSD1306代码的,会出现白边或者字体有间隔。

  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值