MicroPython esp32驱动st7789屏幕显示中文

To do the useful thing, to say the courageous thing, to contemplate the beautiful thing: that’s enough for one man’s life.
做有用的事,说勇敢的话,想美好的事,一生足矣

效果

20240721150254484-image

 

接线

ST7789 引脚 ESP32 引脚
VCC 3.3V
GND GND
SCL (SCK) GPIO 18
SDA (MOSI) GPIO 23
RES (RESET) GPIO 15
DC GPIO 2
CS GPIO 5
BLK (背光) 5V,3v3的对面

接线说明

  • VCC: 连接到ESP32的3.3V电源引脚,为显示屏提供电力。
  • GND: 连接到ESP32的地(GND)引脚。
  • SCL (SCK): 连接到ESP32的GPIO 18引脚,这个引脚用于SPI时钟信号。
  • SDA (MOSI): 连接到ESP32的GPIO 23引脚,这个引脚用于SPI数据传输(主输出从输入)。
  • RES (RESET): 连接到ESP32的GPIO 15引脚,这个引脚用于重置显示屏。
  • DC: 连接到ESP32的GPIO 2引脚,这个引脚用于命令/数据切换。
  • CS: 连接到ESP32的GPIO 5引脚,这个引脚用于SPI片选信号。
  • BLK (背光): 连接到ESP32的3.3V电源引脚,使背光常亮。如果需要控制背光,可以将其连接到GPIO引脚并通过代码控制。

 

安装库文件

20240721150749479-image

 

初始化代码

from machine import Pin, SPI
from package import st7789py as st
# 定义颜色常量
WHITE = st.color565(255, 255, 255)
BLACK = st.color565(0, 0, 0)
RED = st.color565(0, 255, 0)
GREEN = st.color565(0, 0, 255)
BLUE = st.color565(255, 0, 0)
YELLOW = st.color565(255, 255, 0)
# 初始化显示器
tft = st.ST7789(
SPI(2, baudrate=30000000), # SPI(2) 对应 GPIO 18 (SCK) 和 GPIO 23 (MOSI)
320, 240, # 屏幕分辨率
reset=Pin(15), # 连接到 RES 引脚
dc=Pin(2), # 连接到 DC 引脚
cs=Pin(5), # 连接到 CS 引脚
rotation=0 # 屏幕旋转
)
tft.inversion_mode(False)
tft.fill(BLACK) # 设置背景颜色
tft.text(16,'欢迎你的访问', 50, 50,WHITE,BLACK)
tft.text(24,'青柠博客', 50, 90,WHITE,BLACK)
from machine import Pin, SPI
from package import st7789py as st

# 定义颜色常量
WHITE = st.color565(255, 255, 255)
BLACK = st.color565(0, 0, 0)
RED = st.color565(0, 255, 0)
GREEN = st.color565(0, 0, 255)
BLUE = st.color565(255, 0, 0)
YELLOW = st.color565(255, 255, 0)

# 初始化显示器
tft = st.ST7789(
    SPI(2, baudrate=30000000),  # SPI(2) 对应 GPIO 18 (SCK) 和 GPIO 23 (MOSI)
    320, 240,                   # 屏幕分辨率
    reset=Pin(15),              # 连接到 RES 引脚
    dc=Pin(2),                  # 连接到 DC 引脚
    cs=Pin(5),                  # 连接到 CS 引脚
    rotation=0                  # 屏幕旋转
)

tft.inversion_mode(False)
tft.fill(BLACK)  # 设置背景颜色
tft.text(16,'欢迎你的访问', 50, 50,WHITE,BLACK)
tft.text(24,'青柠博客', 50, 90,WHITE,BLACK)
from machine import Pin, SPI from package import st7789py as st # 定义颜色常量 WHITE = st.color565(255, 255, 255) BLACK = st.color565(0, 0, 0) RED = st.color565(0, 255, 0) GREEN = st.color565(0, 0, 255) BLUE = st.color565(255, 0, 0) YELLOW = st.color565(255, 255, 0) # 初始化显示器 tft = st.ST7789( SPI(2, baudrate=30000000), # SPI(2) 对应 GPIO 18 (SCK) 和 GPIO 23 (MOSI) 320, 240, # 屏幕分辨率 reset=Pin(15), # 连接到 RES 引脚 dc=Pin(2), # 连接到 DC 引脚 cs=Pin(5), # 连接到 CS 引脚 rotation=0 # 屏幕旋转 ) tft.inversion_mode(False) tft.fill(BLACK) # 设置背景颜色 tft.text(16,'欢迎你的访问', 50, 50,WHITE,BLACK) tft.text(24,'青柠博客', 50, 90,WHITE,BLACK)

 

© 版权声明
THE END
喜欢就支持一下吧
点赞2赞赏 分享
Don’t worry about what others are doing better than you. Concentrate on beating your own records every day.
不要担心别人会做得比你好。你只需要每天都做得比前一天好就可以了
评论 共1条
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片快捷回复

    暂无评论内容