分享一个ESP32-C3下载程序设计注意事项!
[复制链接]
事情是这样的,有个项目使用了ESP32 C3的芯片,选择了一款安信可的模组,参考了安信可的开发板原理图,由于第一次搞ESP32设计,说实话踩了不少的坑,最大的坑就是下载程序,其他地方的坑踩了一下就过去了,下载程序的坑踩了好几个版本。最后下载程序的问题在今天找到了,经过测试也确定了这个问题,下一版就能彻底解决。
问题是这样的,在我的板子上,第一次下载程序基本不成功,把芯片放到官方的开发板上,下载程序就能成功。官方开发板下载成功的芯片放我板子上,下载程序也能成功,然后我就试了一下,把程序擦除断电后再下程序,又出现不成功的现象,所以我的板子一定是有问题的。
经过上网查资料,发现下载配置需要GPIO9和GPIO8来进行控制。
而我的GPIO9是没有做为其他功能的,只用于下载程序,就怕被其他控制,当时并没有考虑GPIO8的事,于是把GPIO8的引脚接到了PCF8574的INT引脚上。正常来说,PCF8574就算没有配置,INT引脚也应该是拉高的状态,然而并不是这样的,有些板子没有下载程序的时候,PCF8574的INT引脚居然是0V,这就导致ESP32程序下载不进去。
而且我发现一个事,ESP32-C3复位后,没有对引脚初始化,引脚会处于复位时的状态。好像都是这样的,因为下载程序的时候是硬件复位,引脚状态依旧保持复位前的状态。
这个问题其实困惑我挺久的,今天终于找到问题所在,并找到解决办法,在此也让大家避避坑~
|