OLED

来自Labplus盛思维基百科
Tangliufeng讨论 | 贡献2018年3月28日 (三) 14:22的版本
跳转至: 导航搜索
黑色传感器最终版12.20-15.png

概述

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, 无校验,无流控;

显示字符串指令

      "@[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字节屏幕显示内容,数据组织如下
8页数据,每页128字节
每个字节数据结构

Arduino示例

//程序功能:OLED每隔1秒显示helloworld 1秒//
String  message1= "@1,1,1:helloworld\r\n";  //显示字符串指令
String  message2= "#0:1,1,80,16\r\n";   //清除区域指令
void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200); 
}

void loop() {
    Serial.println(message1);
    delay(1000);
    Serial.println(message2);
    delay(1000);
}

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