Micropython学习交流群 学习QQ群:786510434 提供多种固件下载和学习交流。
Micropython-扇贝物联 QQ群:31324057 扇贝物联是一个让你与智能设备沟通更方便的物联网云平台
Micropython学习交流群 学习QQ群:468985481 学习交流ESP8266、ESP32、ESP8285、wifi模块开发交流、物联网。
Micropython老哥俩的IT农场分享QQ群:929132891 为喜欢科创制作的小白们分享一些自制的计算机软硬件免费公益课程,由两位多年从事IT研发的中年大叔发起。
Micropython开发ESP32开发板之合宙ESP32 C3开发板通过串口SPI控制st7789v TFT液晶屏2寸
一、目的
这一节我们学习如何使用合宙的ESP32 C3开发板控制2寸彩色TFT显示屏模块,分辨率240*320,SPI接口,ST7789v驱动芯片。
二、环境
ESP32 C3 + Thonny + 2寸 ST7789v 显示屏模块 + 几根杜邦线 + Win10
接线方法:
三、st7789驱动、字库、字模制作
st7789py.py,font.py,vga2_bold_16x32.py和字模制作方法请从下文获取,谢谢!
物联网开发笔记(89)- 使用Micropython开发ESP32开发板之合宙ESP32 C3开发板通过串口SPI控制st7789 TFT液晶屏1.3寸_魔都飘雪的博客-CSDN博客
使用Micropython开发ESP32开发板之合宙ESP32 C3开发板通过串口SPI控制st7789 TFT 1.3寸液晶屏
https://blog.csdn.net/zhusongziye/article/details/129347036?spm=1001.2014.3001.5501
四、演示代码
from machine import Pin,SPI,PWM import vga2_bold_16x32 as font from font import Chine import st7789py blk = PWM(Pin(8),duty = (600),freq = 1000) cs = Pin(7,Pin.OUT) # CS片选信号单独列出来,点亮屏幕前需要先拉低 spi = SPI(1,baudrate = 60_000_000,polarity = 1,sck = Pin(2),mosi = Pin(3),miso = None) tft = st7789py.ST7789(spi,320,240, reset=Pin(10,Pin.OUT), dc = Pin(6,Pin.OUT),cs = None,backlight=None, rotation=0) #0-3 #16*32字体函数 def ByteOpera16x32(num,dat): byte= [0x01,0x02,0x04,0x8,0x10,0x20,0x40,0x80] if dat&byte[num]: return 1 else: return 0 def LcdShowCh_16x32(n, x_axis, y_axis): for i in range(4): for a in range(16): for b in range(8): if(ByteOpera16x32(b,Chine.chine[n*64+i*16+a])): tft.pixel(x_axis+a,y_axis+i*8+b,st7789py.color565(1,255,1)) else: tft.pixel(x_axis+a,y_axis+i*8+b,st7789py.color565(0,0,0)) def main(): cs.off() # CS片选信号需要先拉低 #tft.fill(0xfff0) tft.text(font,"Welcome China",0,10,st7789py.color565(0,0,255), st7789py.color565(255,0,0)) for i in range(6): LcdShowCh_16x32(i,i*16,42) while True: pass if __name__ == "__main__": main()
五、演示效果
来源:https://blog.csdn.net/zhusongziye/article/details/129349010
Copyright © 2014 ESP56.com All Rights Reserved
执行时间: 0.0090770721435547 seconds