Micropython驱动ST7735显示中文(中文字体库)

  • Post author:
  • Post category:python


大家是不是遇到显示中文就头大了,又是取模又是怎么的,但麻烦,太繁琐了。对确定的字符显示来说还可以,但不确定的内容时就麻烦了。所以,今天还是来讲讲干货了,来使用一个方便的方式来显示中文,不用取模,直接显示你想要的中英文字体。

开始之前要说一下的时,使用官方原版好像是不行的,因为他的FrameBuff不带一个载入字体的方法。

哪么,重要的东西当然要放在前面:


使用到的固件 ” fb增强固件及字库”

,至于是哪位大神弄的,我也不清楚(主要是下载时包里也没有原作者的信息),我也是从网上下的,大家可以网上搜下,当然,后面我会打包一起上传的。

另外推荐下一个开发MicroPython的工具,就是 Thonny,下载地址:



Thonny, Python IDE for beginners



https://thonny.org/



,这个非常的方便,可以直接编译上传,还有文件管理,很赞,重要的是支持Windows和Mac,当然还有Linux,放几张截图:

可以使用这个软件上传固件,再也不用搞不清ESP32的起始地址了,直接刷固件就好了。

点菜单栏–>工具–>设置–>切到解释器–>点 Install or update firmware,选择开发板端口和固件就可以了(我这里产mac系统,所以端口不是COMxx之类的)

点安装就可以开始刷固件了。

好了,准备工作都完成了,现在以ESP32来开始说明吧!

接线方式

ESP32 —- ST7735

GND —- GND

3.3V —- VDD

IO23 —- SDA

IO18 —- SCL

IO22 —- RST

IO21 —- DC

IO16 —- CS

这里还是使用硬件SPI

这里用到的了FrameBuffer,这样刷新速度还是得到了不少的提升,库文件是st7735.py(

和上一讲名称一样,但内容不一样哦,别搞混了

)

好了,我们把库文件和字体文件上传上去,在本地文件列表中点右键选择 “上传到 /”,即可以上传,把st7735.py和GB2312-12.fon上传。

这些准备工作好了之后就简单了,直接上代码,这次我们可以直接在Thonny的shell中执行代码

from machine import Pin,SPI
from st7735 import ST7735


# 初始化SPI
spi=SPI(2, baudrate=20000000, polarity=0, phase=0, sck=Pin(18), mosi=Pin(23))
# 初始化LCD  rot 是显示方向,bgr是默认显示的颜色
lcd=ST7735(128, 160, spi,dc=Pin(21),cs=Pin(16),rst=Pin(22),rot=0,bgr=0)

#执行没有报错我们就继续了,正常初始化后屏幕应该是变黑了,这是因为我们初始化时是传了bgr=0,也就是填充黑色
#加载字体文件 如果不是发的固件,应该就是没有下面这个方法
lcd.font_load('./GB2312-12.fon')

# 现在我们就可以开始显示中文了,试一下吧
lcd.text("中文测试Test",10,10,0xFFFF)
# 记住一定要调用下面这个方法,不然内容是不会显示出来的哦,所以你可以把所有的内容都显示好后再调用,这样刷新没有闪一下的感觉了
lcd.show()

# 其实现在主要是调用的FrameBuffer里的方法在进行显示信息,主要方法有
# 填充屏幕颜色
lcd.fill(0xFFFF)
lcd.show()

# 显示的相关方法和详细介绍请看官方文档说明
# https://docs.micropython.org/en/latest/library/framebuf.html

实际效果

铺垫很多,真正上手时就几行代码就搞定了,是不是很简单,感觉简单就走起吧!

接着就是本文中所有提到的内容打包了:



fb增强固件及字库.zip-Python文档类资源-CSDN下载


fb增强固件及字库,还有驱动ST7735的相关库更多下载资源、学习资料请访问CSDN下载频道.



https://download.csdn.net/download/weixin_57604547/73076423


百度盘下载:

链接: https://pan.baidu.com/s/1m1bL7cgWu2VEUsELCAuqCQ 提取码: nrfs



版权声明:本文为weixin_57604547原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。