注意, 本人使用typeC和usb接口的数据线连接开发板和搭载Windows11系统的平板电脑, 本文纯新手的经验分享文章, 将综合多位博主的博文来解决问题;
事件起因(杂谈,可略过): 本人想尝试使用esp32系列的开发板进行嵌入式开发, 主要用于目标检测项目, 由于是第一次接触嵌入式, 所以在网上找了很多文档和教程, 最后决定使用'ESP32-S3-DevKitC-1 N16R8'的开发板.
开发板买了之后, 本人先检查端口识别, 发现识别异常, 花了一点时间左右解决端口问题后, 尝试了用micropython官网上提供的固件进行烧录(用Thonny烧录的), 完成后shell中疯狂提示invalid head: 0xffffffff, 又花了亿点时间查找问题原因, 解决后再次烧录完成, 结果shell中又提示RAM初始化失败, 几经挫折之后, 突然灵光一现, 向商家索要了开发板资料包, 其中包括了驱动和固件, 然后烧录商家提供的固件解决了问题, 由于过程比较痛苦, 所以整理出本文将经验分享;
一、完整的环境搭建流程
1.检查端口识别, 确保驱动安装(解决问题一: 串口识别问题)
1. 优先向出售开发板的商家索要驱动和固件, 没有的话参考以下教程, 但不保证能成功, 最好在购买前询问商家是否提供驱动和固件
2. 将设备通过usb数据线连接至电脑(必须是数据线,不是充电的线), 在电脑的设备管理器中的'端口'查看端口号, 通过插拔usb查看是哪个端口, 然后双击查看详细情况.
ps: 如果设备管理器中没有'端口', 请参考来自博主@bdview的教程
3.如果'端口'中显示的是'USB串行设备***', 那大概率是驱动没有装好, 装好之后应该类似于这样:
2.安装Thonny
不会安装的参考以下来自哔哩哔哩的视频教程 :
3.烧录固件
参考教程:来自博主@折途想要敲代码
三、问题二:烧录后shell中出现 invalid head: 0xffffffff
在 @折途想要敲代码 的教程 中提到:
在使用Thonny配置解释器时,选择MiroPython型号的时候,需要选择为MiroPython(ESP8266), 尽管我们的板子是eap32. 原因是烧录的地址需要为0x00处,而在Thonny中无法指定烧录地址。
其次, 尽量使用商家提供的固件文件, 否则也容易出现问题
四、问题三:烧录后shell中报错 SPI RAM not initialized
详细报错内容
E (224) psram: PSRAM ID read error: 0x00ffffff
E (224) spiram: SPI RAM enabled but initialization failed. Bailing out.
E (10) spiram: SPI RAM not initialized
这就是因为使用了MicroPython官方的固件, 改用商家提供的固件进行烧录即可, 个人推测是由于我买的ESP32-S3-DevKitC-1N16R8开发板是经过商家改装的;
本文到此结束, 郑重感谢以下博主提供的问题解决思路:
罗大富Bigrich的个人空间-罗大富Bigrich个人主页-哔哩哔哩视频 (bilibili.com)