一、目的
这一节我们来学习如何使用SP32使用加强版本的固件,加载中文字库,驱动st7735显示屏来显示汉字。
二、环境
ESP32开发板(MicroPython v1.15-13-g530c76f6c-dirty on 2021-04-30)+ 增强固件(esp32_1.15_fb_boost_4M_ULAB.bin) + st7735显示屏 + Win10商业版
接线方法:
三、示例代码
from machine import Pin,SPI,PWM,RTC
from st7735 import ST7735
import time
#设置屏幕亮度
BL = PWM(Pin(19),duty = (900),freq = (1000))
#创建SPI对象
spi = SPI(2,baudrate = 60_000_000,polarity = 0,sck = Pin(18),mosi = Pin(23))
#创建TFT液晶驱动对象
tft = ST7735(128,160,spi,dc = Pin(15,Pin.OUT), rst = Pin(4,Pin.OUT), cs = Pin(5,Pin.OUT), rot=2, bgr=0)
#挂载字库
tft.font_load("GB2312-24.fon")
#RTC时钟函数
def RTC_DataTime():
# 创建时钟对象
rtc = RTC()
xingq = ['星期一','星期二','星期三','星期四','星期五','星期六','星期日']
if(rtc.datetime()[0] != 2023):
rtc.datetime(('2023,01,08,6,12,41,0,0'))
# 获取时钟
data = rtc.datetime()
print(data)
nian = data[0]
yue = data[1]
ri = data[2]
xq = data[3]
shi = data[4]
fen = data[5]
miao = data[6]
us = data[7]
# 屏幕背景设为黑色
tft.fill(tft.rgb(0,0,0))
# 显示汉字,并设置字体颜色
tft.text("魔都飘雪",30,6,tft.rgb(0,0,255))
# 显示横线,并设置颜色
tft.hline(0,25,128,tft.rgb(0,255,255))
tft.hline(0,30,128,tft.rgb(0,255,255))
# 显示日期-年月日
tft.text("%d年%.2d月%.2d日"%(nian,yue,ri),24,45,tft.rgb(255,255,255))
# 显示日期-时分秒星期
tft.text("%.2d时%.2d分%.2d秒 - %s"%(shi,fen,miao,xingq[xq]),2,66,tft.rgb(255,200,100))
# 显示汉字
tft.text("欢迎来到上海",2,84,tft.rgb(100,255,255))
tft.text("愿您玩开心!",60,100,tft.rgb(0,0,255))
# 微秒显示,1秒等于1000000us
tft.text("毫秒: %3d" % (us),40,120,tft.rgb(255,255,0))
tft.show()
#主函数
def main():
tft.fill(tft.rgb(0,0,0))
tft.show()
while True:
RTC_DataTime()
if __name__ == "__main__":
main()
四、示例效果
五、增强字库和st7735驱动
请看我的上一篇文章获取。大家根据自己的ESP32开发板的存储大小,选择4M,8M还是16M的固件进行烧录!以及你的ESP32是否支持SPIRAM来选择带SPIRAM的固件。
六、屏幕购买
版权声明:本文为zhusongziye原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。