目的
了解Microduino OLED,并掌握如何使用库驱动OLED显示屏。
设备
Microduino-Oled 12864 是基于 SSD1306 的 0.96 吋 12864 OLED 显示模块。采用I2C接口,3.3V 电源供电。像素为128*64(128列*64行)。
- 其他设备:
- OLED转接线 一根
- 杜邦线 四根
- USB数据线 一根
IIC通讯接法
OLED |
Core |
Core+
|
SDA |
A4 |
D20或A4
|
SCL |
A5 |
D21或A5
|
3V3 |
3V3 |
3V3
|
GND |
GND |
GND
|
准备
- 【U8glib库google下载 】
- 将下载好的库放入Arduino IDE安装文件夹内的libraries;
- 打开示例程序,如果之前打开了Arduino IDE,先关闭所有,再打开u8glib库里的示例程序;
- 按照IIC接法将OLED显示屏接入电路中。
程序
程序下载:文件:Oled project.zip
实验一
打开OLED_Text测试程序,选择好板卡和串口下载即可。
语法:
- 第一行显示指定字符"*_*Microduino*_*";
- 第二行显示指定字符"Time:";
- 第三行显示mills()函数计时时间以毫秒为单位,及转化为妙的单位,只保留两位小数。
- 语法:
- u8g.setFont(XXX)函数用于设置字体,没有默认字体,必须定义;
- u8g.setPrintPos(X,Y)函数用于指定字符的坐标位置,X表示水平位坐标,Y表示纵向坐标,最上一行的Y值不能为0,值要大于显示字体的高度;
- u8g.print(XXX)函数用于显示字符,静态不动的字符要加””,变化数据则不需要;
- u8g.drawStr(X, Y,XXX)函数可用于显示指定的字符,不能用于显示变化的数据;
- u8g.setRot180()函数用于字体旋转,可将180更改为90、270;默认的是0,根据需要调整。
- 换字体与换坐标需要重新在显示函数前加上字体及坐标函数。
- 更换字体在U8glib\utility文件中的u8g.h文本里查找字体库;
实验二
打开OLED_Paint测试程序,选择好板卡和串口下载即可。
该实验实现如何画一条直线、一个实心圆、空心圆、实心矩形、空心矩形、顶角弯曲矩形,采用系统计时模拟指针表的秒针。
- 语法:
- u8g.drawLine(X,Y,M,N)用来画直线;
- X:起点水平位坐标,Y:起点纵向坐标,M:终点水平位坐标,N:终点纵向坐标
- u8g.drawDisc(X,Y,D)函数用来画实心圆;
- u8g.drawCircle(X,Y,D)函数用来画空心圆;
- u8g.drawFrame(X,Y,I,W)函数用来画空心矩形;
- u8g.drawBox(X,Y,I,W)函数用来画实心矩形;
- u8g.drawRFrame(X,Y,I,W,B)函数用来画顶角弯曲矩形;
实验三
- 字符显示是通过调用库就可以直接将其打印出来,图片及汉字则要通过取模才能打印出来。
取模则需要用到取模软件:文件:PCtolCD.zip
步骤一:打开取模软件,将模式选择为字符模式;
步骤二:设置字体大小为32*32;
步骤三:输入汉字,可以选择字体;
步骤四:设置取模格式;
步骤五:设置完成后生成代码。
步骤六:把原汉字代码替换成生成的代码
语法:
- u8g.drawXBMP( X, Y, I, W, XXXX);
- X:水平位坐标,Y:纵向坐标,I:长,W:宽,XXXX:汉字代码数组名称。
视频
http://v.youku.com/v_show/id_XNjc1NTc1MTE2.html
|