ESP32-S2原生USB烧录TinyUF2bootloader加CircuitPython

ESP32-S2原⽣USB烧录TinyUF2bootloader加CircuitPython
概述
ESP32-S2最令我⼼仪的改进是原⽣⽀持USB,即带有⼀个集成了收发器的全速 USB OTG 外设,符合 USB 1.1 规范,理论速度1.5m/s,利⽤得当将会是⼀个⾮常巨⼤的进步。
⽬前ESP32-S2已经得到CircuitPython的⽀持,本⽂内容是我经过⼀番资料查询和整理后做出的关于仅使⽤原⽣USB接⼝来烧录 TinyUF2 bootloader 加 CircuitPython 的⽅法总
结。
本⽂列举的操作是在⼀款搭载 ESP32-S2-WROVER 模组的⼩型开发板上进⾏的,操作系统为Windows10,其他不同型号的模组及开发板则需进⾏对应适配,在下就
不另作描述了。
在开发板上接⼀个直连芯⽚的USB母⼝
1. ESP32-S2-Saola-1开发板上并没有提供直连ESP32-S2的USB接⼝,需要参考中的管脚定义确定 USB OTG 从哪些管脚引出的,也可以直接看看外围设计原理图。
2. 整⼀个四线的USB Type-C母⼝对应接⼝焊接上去,当然别的USB接⼝型号也类似。
将ESP32-S2设为 bootloader 引导模式
参考ESP32-S2官⽅API指南中的章节,通过原⽣USB接⼝与PC连接上后,按住 Boot 键的同时按⼀下 Reset 键,再松开 Boot 键,使ESP32-S2芯⽚处于 bootloader 引导模式,
此时在windows设备管理器⾥即可以查看到新的USB串⾏设备。
绝缘软母排通过esptool将TinyUF2烧录进ESP32-S2的flash中
1. 确保已经安装了python3.4或更⾼版本,进⼊cmd命令提⽰符窗⼝,输⼊:
pip install esptool
2. 安装上esptool后,再输⼊以下命令擦除flash:
esptool -p com9 --after no_reset erase_flash
-
-after no_reset在此处⽐较关键,指定在esptool.py操作完成后,不重置芯⽚,⽽将芯⽚留在 bootloader 引导模式中,执⾏结果如下:
>esptool -p com9 --after no_reset erase_flash
esptool.py v3.1-dev
Serial port com9
<
Detecting ESP32-S2
Chip is ESP32-S2
Features: WiFi, ADC and temperature sensor calibration in BLK2 of efuse
Crystal is 40MHz
MAC: xx:xx:xx:xx:xx:xx
Erasing flash (this may take a while)...
灌粉机
Chip erase completed successfully in 16.3s
Staying in bootloader.
>
3. 在此连接:下载对应开发板型号的 tinyuf2-espressif_saola_1_wrover-0.5.1.zip ⽂件到本地然后解压。
![image]()
4. 在cmd中输⼊指令进⼊此⽂件路径中,例如:
请在cd /d 后正确输⼊你所解压到的⽂件夹的路径
cd /d D:\Users\Wind\esp\tinyuf2-espressif_saola_1_wrover-0.5.1
5. 参考在cmd中输⼊如下指令将其烧录进flash中:
esptool --chip esp32s2 -p com9  -b 460800 --before=default_reset --after=no_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 4MB 0x8000 partition-table.bin 0xe000 ota_data_initial.bin 0x1000 bootloader.bin 0x2d0000 tinyuf2.bin 正确烧录完成的话执⾏结果如下:
D:\Users\Wind\esp\tinyuf2-espressif_saola_1_wrover-0.5.1>esptool --chip esp32s2 -p com9  -b 460800 --before=default_reset --after=no_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 4MB 0x8000 partition-table.bin 0xe000 ota_d esptool.py v3.1
Serial port com9
<
平移天窗Device PID identification is only supported on COM and /dev/ serial ports.
Chip is ESP32-S2
Features: WiFi, ADC and temperature sensor calibration in BLK2 of efuse
Crystal is 40MHz
MAC: xx:xx:xx:xx:xx:xx
Changing baud rate to 460800
Changed.
Configuring
Flash will be erased from 0x00008000
Flash will be erased from 0x0000e000
Flash will be erased from 0x00001000
Flash will be erased from 0x002d0000
Compressed 3072 bytes
Wrote 3072 bytes (136 compressed) at 0x00008000 in 0.1 seconds (effective 446.1 kbit/s)...
Hash of data verified.
Compressed 8192 bytes
Wrote 8192 bytes (31 compressed) at 0x0000e000 in 0.1 seconds (effective 645.0 kbit/s)...
垃圾处理厂工艺流程Hash of data verified.
Compressed 20832 bytes
聚氨酯1
Wrote 20832 bytes (13005 compressed) at 0x00001000 in 0.4 seconds (effective 464.5 kbit/s)...
Hash of data verified.
Compressed 130736 bytes
Wrote 130736 bytes (82339 compressed) at 0x002d0000 in 1.5 seconds (effective 677.7 kbit/s)...
Hash of data verified.
<
Staying in bootloader.
D:\Users\Wind\esp\tinyuf2-espressif_saola_1_wrover-0.5.1>
6. 按⼀下开发板上的RESET复位键,可以在本地设备管理器列表中查看到⼀个名为 SAOLA1RBOOT 的便携存储器,及⼀个名为 Adafruit UF2 Bootloader USB Device的磁盘
驱动器
烧录CircuitPython固件
1.前往,所有CircuitPython⽀持的ESP32开发板都在这⾥了。此处没有我使⽤的ESP32-S2-Saola-1,但到⼀个相似度极⾼的使⽤同⼀个ESP32-S2-WROVER模组的,即。
2.点击CircuitPython 7.0.0-alpha.6中的DOWNLOAD .UF2 NOW下载到本地
3.最后⼀步很简单,复制到 SAOLA1RBOOT 移动存储器中。
u盾客户端4.待开发板⾃动复位后,可以在本地设备管理器列表中查看到与之前不同的便携存储器及磁盘驱动器,且新增了⼀个USB串⾏设备com端⼝。
5.通过⽀持CircuitPython的IDE例如即可在此开发板上进⾏编程。
各模式之间的切换⽅法
1. 在烧录好CircuitPython固件后,开发板重新上电或按⼀下Reset键,将进⼊CircuitPython模式。
2. 按住 Boot 键的同时按⼀下 Reset 键,再松开 Boot 键,将进⼊ ESP32-S2 bootloader 模式,esptool在此模式下可对flash进⾏操作。
3. 在0.5秒内快速按⼀下 Reset 键再按⼀下 Boot 键,将进⼊TinyUF2 bootloader 模式,⽀持UF2的固件可以由此烧录进flash。

本文发布于:2024-09-23 14:32:20,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/238344.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:开发板   引导   对应   管脚   完成   烧录   模式   型号
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议