准备花几天时间DIY一个小小天气站+万年历,一来可以送给好友,二来也是蹦着熟悉RT-Thread的目的去学习,以提高自己的工作效率,指不定哪天就用上了,总之技多不压身嘛!
1、什么是u8g2?
u8g2是Arduino平台上的一个单色屏显示驱动,关于Arduino,之前写小车专栏区也有一篇文章专门介绍过Arduino这个创客神器:
RT-Thread的大佬竟然把它适配到RT-Thread平台上了,而且通过RT-Thread Studio添加软件包再稍微操作一下就可以轻松适配,简直不要太爽了!
软件包地址:http://packages.rt-thread.org/detail.html?package=u8g2
网上也有不少大佬DIY出作品,如上图所示,把模具都打好了,看起来超Q的!
2、RT-Thread Studio配置u8g2点亮OLED SSD1306
下面我们将基于小熊派驱动这个0.96寸的OLED SSD1306显示屏幕。
2.1 新建一个RT-Thread项目
2.2 添加u8g2软件包
可以看到,软件包就已经添加到RT-Thread的项目中了。
2.3 配置u8g2参数
鼠标右键点击u8g2软件包,然后弹出列表项选择详细配置。
勾选配置对应的选项。
2.4 配置libc组件及C++组件
返回到主配置界面,由于u8g2软件包需要C++组件以及libc的支持,所以我们还需要配置C++组件和libc组件。
然后按快捷键ctrl+S保存配置即可。
2.5 修改OLED PIN
查看原理图得知OLED目前的SDA和SCL分别接在PB4和PA7这两个管脚上。
这两个管脚序号是怎么来的呢?
在这里通过查看drv_gpio.c就可以知道了。
2.6 保存,然后进行编译下载到开发板上
2.7 开启串口终端命令行
输入help,然后回车,查看当前导出的oled命令。
输入oled显示样例命令然后回车
这就可以看到示例的显示效果啦!这效率简直高!
关于u8g2还有很多知识需要学习,后面将会持续分享它的用法。
往期精彩
RT-Thread编程高阶用法-函数扩展之$Sub$$与$Super$$