esp32 devkit开发板插入底板后程序无法引导的原因

解决了烧写marlin程序,无法正常跳转的问题后,将esp32 devkit插入6轴运动底板。又出现新的问题。串口log提示flash读取错误,并反复重启:

rst:0x10 (RTCWDT_RTC_RESET),boot:0x33 (SPI_FAST_FLASH_BOOT) 
flash read err, 1000 ets_main.c 371 
ets Jun 8 2016 00:22:57

这样看来肯定esp32 devkit是某个IO被6轴运动底板挂住,导致系统引导出错。
没办法,只能做了一个飞线工装,一条线一条线的与底板连接,最终找到原因。原来是IO12被底板上拉,导致esp32的内部ldo设置为1.8V输出,从而无法正常工作。

查看esp32的datasheet,原来它有5个strapping管脚(分别是IO0,IO2,IO5,IO12,IO15),用来根据上电时的电平状态,对芯片状态进行配置。
详情见datasheet的2.4 strapping管脚章节。
于是将底板上IO12的线路割断,重新上电,marlin正常运行,问题解决。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容