ESP8266 /ESP32OLED显示自定义图标或中文
Posted Kamimiao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ESP8266 /ESP32OLED显示自定义图标或中文相关的知识,希望对你有一定的参考价值。
本文是接着上一篇文章写的
工作准备
字模软件:下载地址
文字取模
打开 - PCtoLCD2002.exe
模式,选择字符模式,输入文字然后生成字模
把生成的字模存在一个列表里
class Chine:
chine=[
0x10,0x60,0x02,0x8C,0x00,0x00,0xFE,0x92,0x92,0x92,0x92,0x92,0xFE,0x00,0x00,0x00,
0x04,0x04,0x7E,0x01,0x40,0x7E,0x42,0x42,0x7E,0x42,0x7E,0x42,0x42,0x7E,0x40,0x00,#/*"温",0*/
0x00,0x00,0xFC,0x24,0x24,0x24,0xFC,0x25,0x26,0x24,0xFC,0x24,0x24,0x24,0x04,0x00,
0x40,0x30,0x8F,0x80,0x84,0x4C,0x55,0x25,0x25,0x25,0x55,0x4C,0x80,0x80,0x80,0x00,#/*"度",1*/
]
把以下函数写进main.c 注意函数内的列表调用要跟随自己放的文件名改
def ByteOpera(num,dat):
byte= [0x01,0x02,0x04,0x8,0x10,0x20,0x40,0x80]
if dat&byte[num]:
return 1
else:
return 0
def LcdShowCh_16x16(n, x_axis, y_axis):
for i in range(2):
for a in range(16):
for b in range(8):
if(ByteOpera(b,Chine.chine[n*32+i*16+a])):
oled.pixel(x_axis+a,y_axis+i*8+b,1)
else:
oled.pixel(x_axis+a,y_axis+i*8+b,0)
测试:
LcdShowCh_16x16(0,0,16)#显示 温
LcdShowCh_16x16(0,16,16)#显示 度
oled.show() #OLED 执行显示
写进板子重启后,应该可以看见第一行显示 温度 两字
手绘图像取模
切换取模软件到图形模式
新建一个空白图像
在这里画出一个符号然后取模 ,像中文那样放进列表再调用就可以显示了
因为刷新率关系,这里漏了个字没拍到
看完这两篇文章,现在你已经可以用OLED显示 英文,中文,和一些小图标了
以上是关于ESP8266 /ESP32OLED显示自定义图标或中文的主要内容,如果未能解决你的问题,请参考以下文章
ESP8266/ESP32 +1.3“ or 0.96“ IIC OLED指针时钟+数字时钟显示
ESP8266 /ESP32软件IIC方式驱动OLED显示字符,基于micropython
ESP8266 /ESP32软件IIC方式驱动OLED显示字符,基于micropython