Arduino驱动OLED显示文字
驱动 显示 文字 Arduino OLED
2023-09-11 14:19:58 时间
简介
OLED,即有机发光二极管( Organic Light Emitting Diode),OLED 由于同时具备自发光,不需背光源、对比度高、厚度薄、视角广、反应速度快、可用于挠曲性面板、使用温度范围广、构造及制程较简单等优异之特性,被认为是下一代的平面显示器新兴应用技术。 LCD 都需要背光,而 OLED 不需要,因为它是自发光的。OLED屏具有多个控制指令,可以控制OLED的亮度、相比度、开关升压电路等指令。
主要硬件
OLED操作方便,功能丰富。可显示汉字、ASCLL、图案等。本次实验主要用于显示文字。
主要参数
1.高分辨率:128*64
2.超广可视角度:大于160°
3.超低功耗:正常显示时 0.06W
4.供电范围:直流3.3V-5V
5.通信方式:IIC
6. OLED屏幕内部驱动芯片:SSD1306
原理图
接线
OLED | Arduino |
---|---|
VCC | 5V |
GND | GND |
SCL | A5 |
SDA | A4 |
文字取模
程序
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define OLED_RESET 4
Adafruit_SSD1306 display(128, 64, &Wire, OLED_RESET);
//取16X16汉字字模 逐行式 顺向高位在前
static const unsigned char PROGMEM you[]=
{
0x08,0x90,0x08,0x88,0x08,0x88,0x10,0x80,0x17,0xFE,0x30,0xA0,0x30,0xA0,0x50,0xA0,
0x90,0xA0,0x10,0xA0,0x11,0x20,0x11,0x22,0x11,0x22,0x12,0x22,0x12,0x1E,0x14,0x00};
/*"优"*/
static const unsigned char PROGMEM xin[] =
{
0x08,0x40,0x08,0x20,0x0B,0xFE,0x10,0x00,0x10,0x00,0x31,0xFC,0x30,0x00,0x50,0x00,
0x91,0xFC,0x10,0x00,0x10,0x00,0x11,0xFC,0x11,0x04,0x11,0x04,0x11,0xFC,0x11,0x04};
/*"信",1*/
static const unsigned char PROGMEM dian[] =
{
0x01,0x00,0x01,0x00,0x01,0x00,0x3F,0xF8,0x21,0x08,0x21,0x08,0x21,0x08,0x3F,0xF8,
0x21,0x08,0x21,0x08,0x21,0x08,0x3F,0xF8,0x21,0x0A,0x01,0x02,0x01,0x02,0x00,0xFE};
/*"电",2*/
static const unsigned char PROGMEM zi[] =
{
0x00,0x00,0x7F,0xF8,0x00,0x10,0x00,0x20,0x00,0x40,0x01,0x80,0x01,0x00,0xFF,0xFE,
0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x05,0x00,0x02,0x00};
/*"子",3*/
void setup() {
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.setTextColor(WHITE);//开像素点发光
display.clearDisplay();//清屏
display.setTextSize(1); //设置字体大小
display.setCursor(35, 5);//设置显示位置
display.println("-Arduino-");//输出字符
display.drawBitmap(32, 32, you, 16, 16, 1); //画出字符对应点阵数据
display.drawBitmap(48, 32, xin, 16, 16, 1); //画出字符对应点阵数据
display.drawBitmap(64, 32, dian, 16, 16, 1); //画出字符对应点阵数据
display.drawBitmap(80, 32, zi , 16, 16, 1); //画出字符对应点阵数据
display.display();//开显示
}
void loop() {
}
实验结果
总结
本次用到的取模软件,大家在取模前记得把格式改成正确的格式哦,避免取模失败,显示不出想要的结果呢。
相关文章
- zedboard学习(1)OLED驱动显示图像
- excel文件的groovy脚本在SoapUI中进行数据驱动测试
- 块设备驱动-----新创建的分区要格式化后,才能使用!
- 数据该如何真正驱动业务增长
- appium,参数化,数据驱动
- lcd显示驱动
- Spring Boot:注解驱动开发综合指南
- 〖Python WEB 自动化测试实战篇⑬〗- 实战 - 数据驱动在自动化测试中的应用
- DTSE Tech Talk | 第9期:EiPaaS驱动企业数字化转型
- 设备树下的 LED 驱动开发
- [0] DDD领域驱动设计(二) 之 值对象
- 完美解决NVIDIA-3060、3070、3080、3090显卡驱动配置深度学习环境的问题
- 英伟达驱动怎么设置显示帧数?
- 第七章 linux-platform设备驱动
- Win10 无线网卡驱动感叹号,显示错误代码56
- Android 图形驱动初始化(二十三)