解决ESP出现MD5报错或验证芯片bug

最近用esp32s3打了一块板回来,但是在烧录程序的时候发现不管怎么样都无法烧录,分别出现了以下报错

txt 复制代码
报错1:

esptool.py v4.10.0
Serial port COM20
Connecting.........
Chip is ESP32-S3 (QFN56) (revision v0.2)
Features: WiFi, BLE
Crystal is 40MHz
MAC: 10:51:db:40:2a:cc
Uploading stub...
Running stub...
Stub running...

A fatal error occurred: Unable to verify flash chip connection (No serial data received.).

 *  终端进程已终止,退出代码: 2。 
txt 复制代码
报错2:

changed.
configuring flash size...
Flash will be erased from 0x00000000
to 0x00005fff.
Flash will
be erased from 0x00010000 to 0x00074fff...
Flash will be erased from 0x00008000 to 0x00008fff.
:lash will be erased from 0x00490000 to 0x00491fff...
SHA digest in image updated
ompressed 21632 bytes to 13319..
Nriting at 0x00000000...(100 %)
Nrote 21632 bytes (13319 compressed)at 0x00000000 in 1.4 seconds (effective 125.6 kbit/.
ile md5:578e800a20d3f29f3688cd377226e036
lash md5:cf7e8f63bda3bc0cad202ceed842dcee
D5 of 0xFF is c857ce126cfc39f13655ea4210c4d566
fatal error occurred: MD5 of file does not match data in flash!
txt 复制代码
报错3:
invalid header: 0xffffff1f
invalid header: 0xffffff1f
invalid header: 0xffffff1f
invalid header: 0xffffff1f
invalid header: 0xffffff1f
invalid header: 0xffffff1f
invalid header: 0xffffff1f
invalid header: 0xffffff1f
invalid header: 0xffffff1f
invalid header: 0xffffff1f
invalid header: 0xffffff1f
invalid header: 0xffffff1f

查阅官方手册,最终经过排查发现,以上错误都指向同一个错误,flash供电电压不足

在官方手册中,提到VDD_SPI电源可以用作给flash和psram芯片供电,也推荐这样做,但是查看硬件设计手册,里面提到,VDD_SPI电源的电压和GPIO45管脚的配置有关

市面上常见的esp32s3开源设计用到的flash芯片几乎都是3.3v供电,而我的电路板中,由于GPIO45外接了一个上拉电阻,用于检测输入,正是这个上拉电阻导致的管脚电平发生了变化,使得最后输出的电压不足,无法启动flash,或者电压不够导致flash不稳定

解决办法

单独给flash供电即可

反思设计

这件事也给了我一个反思,在常见的开源esp32s3设计以及常见的电路中,一般都不会提及这个,因为一个设计的多是开发板,本身不外接设备,第二是复用引脚,打板之前还是需要看官方手册,不能依赖开源设计,容易路径依赖.

相关推荐
莎士比亚的文学花园4 小时前
stm32——平衡小车
stm32·单片机·嵌入式硬件
熟人看不到5 小时前
解决Claude Code界面错位更新不及时-Windows
bug·vibecoding·claude code
小麦嵌入式6 小时前
FPGA入门(一):手把手教你用 Vivado 创建工程并仿真
stm32·单片机·嵌入式硬件·mcu·fpga开发·硬件架构·硬件工程
深念Y7 小时前
踩坑实录:把 Windows 默认 PowerShell 换成 7.x 到底有多坑?一条龙解决指南
windows·乱码·bug·控制台·powershell·管道·流式
油炸自行车8 小时前
【Qt bug排查】Qt项目debug模式下,关闭可视化界面后,后台程序不退出,依然在打印log
bug
czwxkn8 小时前
PCB设计-器件:2.电感
嵌入式硬件
佳木逢钺9 小时前
从零开始:基于STM32H750的硬件设计与软件开发完整流程详解
stm32·单片机·嵌入式硬件
踏着七彩祥云的小丑12 小时前
嵌入式——认识电子元器件——光电器件系列
单片机·嵌入式硬件
羽获飞12 小时前
从零开始学嵌入式之STM32——31.高级定时器
stm32·单片机·嵌入式硬件
wanghanjiett13 小时前
笔记:ESP32驱动SimpleFOC成功(基于Espressif-IDE)
笔记·esp32·foc