|
|
本帖最后由 bbc11234 于 2015-11-27 22:14 编辑
买了个oled,准备玩玩。拿到手一看,完全不懂。上网一查,关于oled这一块都是语焉不详,就没有好好说说要如何接线,如何设置的。所以说国人的作风就是太粗放了,就没有踏踏实实从基础做起的。
然后我得到了这个:
想要知道怎么做的吗?跟我按下面的步骤一步一步来即可。
1. 先在u8glib的官方网站下载u8glib的库。最新arduino版的:1.18.1
2. 解压文件到arduino IDE安装目录的libraries目录下。
3. 连接你的oled到arduino主控板。我用的是nano。
如何连接呢? u8glib是一个非常强大的库,支持任何连接方式。我买的这个oled需要连5个脚,加上vcc和gnd一共要7个脚。
咱们全联在模拟口上即可。如果你数字口空余你就可以联在数字口。
简单来说,我们把这些端口全联上nano就可以了。除vcc, gnd连在特定端口外,其它口随意插接。
接好后记下你分别联在哪个端口了。
查阅你的模块资料,上面应有写每个口的意义,比如说我这块:
D0 时钟线
D1 数据线
RST 复位线
DC 数据/命令线
CS 片选线
这些翻译成u8glib的语言就是:
- d0->sck 时钟线
- d1->mosi 数据线
- res->reset 复位
- dc->a0 命令线
- cs->cs 片选线
你要记住sck, mossi, reset, a0, cs都插在哪里了。
再查阅一下你的oled用的是什么控制芯片,很多用的是ssd1306的。
在arduino里打开示例->u8glib, 在里面选择helloworld.
打开后,找到下面这一行:
//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
注释去掉,改成
U8GLIB_SSD1306_128X64 u8g(14,15,16,17,18); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
并且在最后加上你插上的reset端口号。虽然官方说reset是可选的,但实测必须指定一下,否则不能点亮。
编译上传,即可完成点点亮。
要注意的几点:- arduino的模拟口对应的号码你需要在资料上查阅一下,比如说nano的:
我这里用的是14-18, 也就是a0-a4口。- reset的端口号是额外加上的,否则实测不行。缺省是不需要的。
- 点亮oled不需要外接电源,功耗非常小。这算是唯一的一个优点吧,毕竟显示太小了,而且就目前这样子,也没有办法封装,加个外壳什么的。
接下来你就可以按照示例的做法来输出文字,或者任何其它的动画效果了。
希望大家都能早日用上oled。
在这个愉快的周末,可以好好玩玩oled.
有写好的例程,别忘了分享!
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|