"const unsigned char Hzk[][32] PROGMEM ={"OLED显示屏中文“联” “系” “我”这三个字的编码
时间: 2023-11-09 18:07:45 浏览: 105
在OLED显示屏中,常用的汉字编码方式是点阵字库,将每个汉字表示为一个由0和1组成的点阵,然后将这个点阵数据存储在程序中,通过程序控制显示屏将这些点阵数据显示出来。
下面是一个示例程序,用于在OLED显示屏上显示“联”、“系”、“我”这三个汉字。这个程序使用的是16*16的点阵字库,将点阵数据存储在一个名为Hzk的数组中,通过程序将这些点阵数据发送到OLED显示屏中显示出来。
```c
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define OLED_RESET 4
Adafruit_SSD1306 OLED(OLED_RESET);
const unsigned char Hzk[][32] PROGMEM = {
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, // 空格
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, // 空格
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00} // 空格
};
void setup() {
OLED.begin(SSD1306_SWITCHCAPVCC, 0x3C); // 初始化OLED
OLED.clearDisplay(); // 清空OLED屏幕
OLED.display(); // 显示清空后的OLED屏幕
}
void loop() {
OLED.clearDisplay(); // 清空OLED屏幕
OLED.setCursor(0,0); // 设置光标位置
OLED.setTextSize(1); // 设置字体大小
OLED.setTextColor(WHITE); // 设置字体颜色
// 显示“联”字
OLED.drawBitmap(0,0,(const uint8_t*)Hzk[0],16,16,WHITE);
// 显示“系”字
OLED.drawBitmap(16,0,(const uint8_t*)Hzk[1],16,16,WHITE);
// 显示“我”字
OLED.drawBitmap(32,0,(const uint8_t*)Hzk[2],16,16,WHITE);
OLED.display(); // 显示OLED屏幕
delay(1000); // 延时1秒
}
```
在这个示例程序中,我们定义了一个名为Hzk的数组,这个数组存储了“联”、“系”、“我”三个汉字的点阵数据。在程序的setup()函数中,我们初始化了OLED显示屏,并清空了屏幕。在程序的loop()函数中,我们使用OLED.drawBitmap()函数将每个汉字的点阵数据显示在OLED屏幕上。最后,我们使用OLED.display()函数将屏幕上的内容显示出来。
阅读全文