1419|8

94

帖子

1

TA的资源

一粒金砂(高级)

楼主
 

【得捷电子Follow me第2期】任务1:Adafruit ESP32-S3 TFT Feather 控制屏幕显示中文 [复制链接]

  本帖最后由 aramy 于 2023-8-12 20:43 编辑

"Follow me活动”是DigiKey联合EEWORLD发起的为期一年的“跟技术大咖学技术,完成任务返现报销”活动。这是我参加第二期活动的开发板Adafruit ESP32-S3 TFT Feather。主控是ESP32-S3

 

烧写固件:

ESP32-S3支持Arduino,esp-idf,micropython,circuitpython做开发。其中觉着circuitpython最简单,所以这里就用circuitpython来做开发啦!板子拿到手有厂家的程序,可以点亮屏幕,我们这里从一无所有开始做起。首先到这里下载厂家的固件Adafruit_Feather_ESP32S3_TFT_FactoryTest.bin。使用esp烧写工具通过串口烧写到板子里。如果提示:连接串口失败。就按住boot按键,再按下reset按键就好了。

 

然后烧写固件完成后,上电重启开发板,电脑会有U盘弹出,将circuitpython固件(adafruit-circuitpython-adafruit_feather_esp32s3_tft-en_US-8.2.2.uf2)拖到U盘里,然后开发板就会自动重启。circuitpython就准备好了。

 

驱动屏幕:
circuitpython环境非常好,已经帮忙初始化好了 彩色 1.14“ IPS TFT屏幕。我这里用Thonny作为编辑器,来进行代码的开发。 circuitpython中有个board的库,可以使用dir(board)查看这个类库的方法,这个类库中有DISPLAY是用来控制屏幕显示的,通过dir(board.DISPLAY)可以查看有哪些方法可以使用。这里有个board.DISPLAY.brightness变量,可以用来控制屏幕亮度,设置为0,则屏幕熄灭,设置为1,屏幕为最大亮度。

显示汉字:

给lib目录下上传  adafruit的字库文件,但是这里adafruit的字库都是英文字库,要想显示汉字,还需要额外的中文字库。这里我使用了网上找的

链接已隐藏,如需查看请登录或者注册
。这里要留意,因为空间有限,装不了太大的字库,这里我只载入了wenquanyi_10pt.pcf这个汉字字库。最后将这段代码写到code.py里。就能显示啦!横屏、竖屏都做了适配。

  • import board
  • import displayio
  • from adafruit_display_text import label, wrap_text_to_lines
  • from adafruit_bitmap_font import bitmap_font
  • dis_str=" 搭载 Xtensa® 32 位 LX7 双核处理器,主频高达 240 MHz,内置 512 KB SRAM (TCM),具有 45 个可编程 GPIO 管脚和丰富的通信接口,集成 2.4 GHz Wi-Fi 和 Bluetooth 5 (LE),配备原生 USB,可用作键盘/鼠标、MIDI 设备、磁盘驱动器等"
  • def screen_dispstr(str):
  • if board.DISPLAY.rotation%180==0:
  • char_num=23 #横屏
  • else:
  • char_num=13 #竖屏
  • strbuf="";
  • for i in range(len(str)/char_num):
  • strbuf=strbuf+str[i*char_num:(i+1)*char_num]+"\n"
  • return strbuf
  • display = board.DISPLAY
  • board.DISPLAY.brightness = 0.35
  • board.DISPLAY.rotation = 0
  • font = bitmap_font.load_font("wenquanyi_10pt.pcf")
  • color = 0x00FF00
  • text_group = displayio.Group()
  • text_area = label.Label(font, text=screen_dispstr(dis_str), color=color)
  • text_area.x = 2
  • text_area.y = 10
  • text_area.line_spacing = 0.8
  • text_area.scale = 1
  • text_group.append(text_area)
  • display.show(text_group)
  • while True:
  • pass

 

 

 

 

最新回复

专业专业呀!  详情 回复 发表于 2023-8-20 21:37
点赞(2) 关注
 
 

回复
举报

7189

帖子

11

TA的资源

版主

沙发
 
大佬,你是官方派来教我们的吗?
 
 
 

回复

9

帖子

4

TA的资源

一粒金砂(中级)

板凳
 

ImportError: no module named 'adafruit_display_text'   怎么办

点评

缺库文件,把库文件放到lib里边去  详情 回复 发表于 2023-8-13 17:31
 
 
 

回复

94

帖子

1

TA的资源

一粒金砂(高级)

4
 
lib.zip (22.07 KB, 下载次数: 16) 转生异世界成为码农 发表于 2023-8-13 16:16 ImportError: no module named 'adafruit_display_text'   怎么办

缺库文件,把库文件放到lib里边去。库文件我上传了。

 
 
 

回复

9

帖子

4

TA的资源

一粒金砂(中级)

5
 
aramy 发表于 2023-8-13 17:31 缺库文件,把库文件放到lib里边去。库文件我上传了。

解决了  谢谢

 
 
 

回复

6800

帖子

10

TA的资源

版主

6
 

楼主真迅速,为你点赞  

个人签名

在爱好的道路上不断前进,在生活的迷雾中播撒光引

 
 
 

回复

6800

帖子

10

TA的资源

版主

7
 

楼主你好自动重启时候的屏能过屏蔽吗?  

个人签名

在爱好的道路上不断前进,在生活的迷雾中播撒光引

 
 
 

回复

22

帖子

0

TA的资源

一粒金砂(中级)

8
 

给大佬点赞

 

 
 
 

回复

7189

帖子

11

TA的资源

版主

9
 
专业专业呀!
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
立即报名 | 2025 瑞萨电子工业以太网技术日即将开启!
3月-4月 深圳、广州、北京、苏州、西安、上海 走进全国6城
2025瑞萨电子工业以太网技术巡回沙龙聚焦工业4.0核心需求,为工程师与企业决策者提供实时通信技术最佳解决方案。
预报从速,好礼等您拿~

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表