“OLED”的版本间的差异
来自Labplus盛思维基百科
Tangliufeng(讨论 | 贡献) |
Tangliufeng(讨论 | 贡献) (→串口指令说明) |
||
(未显示同一用户的1个中间版本) | |||
第23行: | 第23行: | ||
== 串口指令说明== | == 串口指令说明== | ||
通过串口接收显示指令,串口配置:115200,8bits,1, 无校验,无流控; | 通过串口接收显示指令,串口配置:115200,8bits,1, 无校验,无流控; | ||
+ | |||
+ | {|style="background-color:#FCF8E3;color:#8A6D3B;" | ||
+ | |- | ||
+ | |style="padding: 2px;"| [[File:warning_yellow.png|25px|center]] ||'''注意''' | ||
+ | |两次指令间隔时间至少要有20毫秒,确保oled能响应 | ||
+ | |} | ||
=== <small>显示字符串指令</small> === | === <small>显示字符串指令</small> === | ||
"@[X],[Y],[C]:<string>\r\n" | "@[X],[Y],[C]:<string>\r\n" | ||
第50行: | 第56行: | ||
[[文件:FBFB11C2@A0528E4(01-08-15-08-45).jpg|800px|居中|有框|8页数据,每页128字节]] | [[文件:FBFB11C2@A0528E4(01-08-15-08-45).jpg|800px|居中|有框|8页数据,每页128字节]] | ||
[[文件:9AA72B51@E9B9A31(01-08-15-08-45).jpg|50px|有框|居中|每个字节数据结构]] | [[文件:9AA72B51@E9B9A31(01-08-15-08-45).jpg|50px|有框|居中|每个字节数据结构]] | ||
+ | |||
== Arduino示例 == | == Arduino示例 == | ||
<pre style="color:blue"> | <pre style="color:blue"> | ||
− | / | + | /************************************************* |
− | + | Copyright:wiki.labplus.cn | |
− | + | Author:tangliufeng | |
− | void setup() { | + | Date:11.July.2018 |
− | // | + | Description:oled模块显示A0引脚的analog value |
− | + | **************************************************/ | |
+ | |||
+ | |||
+ | |||
+ | void setup() | ||
+ | { | ||
+ | Serial.begin(115200); //oled串口通讯波特率为115200 | ||
+ | pinMode(A0,INPUT); | ||
} | } | ||
− | void loop() { | + | void loop() |
− | + | { | |
− | + | uint16_t readDate = analogRead(A0); | |
− | + | Serial.print("@0,0,1:"); | |
− | + | Serial.print("A0模拟值"); | |
+ | Serial.println(); | ||
+ | delay(20); | ||
+ | Serial.print("@80,0,1:"); | ||
+ | Serial.print(readDate); | ||
+ | Serial.println(); | ||
+ | delay(1000); | ||
+ | Serial.print("#0:0,0,127,63\r\n"); | ||
+ | delay(10); | ||
} | } | ||
+ | |||
</pre> | </pre> | ||
2018年7月11日 (三) 16:52的最新版本
目录
概述
128x64OLED显示屏,用于显示图像和文字,可用于串口指令,操作简便
技术参数
- 工作电压: VCC 3.3V -5V
- 0.96英寸OLED,分辨率:128x64
- 支持支持多种字体(2种UNICODE编码字体:宋体16x16,宋体24x24;2种ASCII编码字体:font5x7, Consolas32x32)
- 通讯方式:UART
- 模块尺寸:24x46x7.5mm
引脚定义
VCC | 电源 |
RXI | 串口接收 |
TXD | 串口发送 |
GND | 地 |
串口指令说明
通过串口接收显示指令,串口配置:115200,8bits,1, 无校验,无流控;
注意 | 两次指令间隔时间至少要有20毫秒,确保oled能响应 |
显示字符串指令
"@[X],[Y],[C]:<string>\r\n" '@':前缀 ',':分隔符,必须按照格式内容输入 [X]:显示位置X坐标,输入10进制数字,最大位数3位 [Y]:显示位置Y坐标,输入10进制数字,最大位数3位 [C]:显示的字体代码;'0' = Font5x7, '1' = 宋体16x16, '2' = 宋体24x24, '3' = Consolas32x32 <string>:要显示的字符串内容,最大长度128字节,注意ASCII字符占用1个字节,汉字占用3个字节,超过会自动截断; '\r\n';回车换行,表示字符串结束;
清除区域指令
"#0:[X0],[Y0],[X1],[Y1]\r\n" '#':前缀 '0':清除区域指示 [X0]:区域左上角X坐标,输入10进制数字,最大位数3位 [Y0]:区域左上角Y坐标,输入10进制数字,最大位数3位 [X1]:区域右下角X坐标,输入10进制数字,最大位数3位 [Y1]:区域右下角Y坐标,输入10进制数字,最大位数3位 '\r\n';回车换行,表示字符串结束;
刷屏指令
1.发送'>'字符; 2.在500mS以内发送1024字节屏幕显示内容,数据组织如下
Arduino示例
/************************************************* Copyright:wiki.labplus.cn Author:tangliufeng Date:11.July.2018 Description:oled模块显示A0引脚的analog value **************************************************/ void setup() { Serial.begin(115200); //oled串口通讯波特率为115200 pinMode(A0,INPUT); } void loop() { uint16_t readDate = analogRead(A0); Serial.print("@0,0,1:"); Serial.print("A0模拟值"); Serial.println(); delay(20); Serial.print("@80,0,1:"); Serial.print(readDate); Serial.println(); delay(1000); Serial.print("#0:0,0,127,63\r\n"); delay(10); }
MicroPython示例
from microbit import * uart.init(baudrate=115200, bits=8, parity=None, stop=1, tx=pin1, rx=pin0) #初始化串口 引脚定义 print("@1,1,1:盛思bluebit-OLED\r\n") #发送显示指令
应用示例
版本历史记录
Version | Date | Note [+]新增[-]删除[^]修复 |
---|---|---|
V2.0 |