天天看点

Wemos D1 R32 ESP32开发板与CNC扩展板结合后报invalid header错误

作者:林海源

Wemos D1 R32 ESP32开发板与CNC扩展板结合后,ESP32反复报rst:0x10 (RTCWDT_RTC_RESET),boot:0xb (HSPI_FLASH_BOOT) invalid header: 0xffffffff错误的解决办法。

Wemos D1 R32 ESP32开发板与CNC扩展板结合后报invalid header错误
Wemos D1 R32 ESP32开发板与CNC扩展板结合后报invalid header错误

结合上电后错误如下:

[22:07:33.904]收←◆ets Jul 29 2019 12:21:46

rst:0x10 (RTCWDT_RTC_RESET),boot:0xb (HSPI_FLASH_BOOT)

[22:07:33.949]收←◆invalid header: 0xffffffff

[22:07:33.993]收←◆invalid header: 0xffffffff

[22:07:34.037]收←◆invalid header: 0xffffffff

[22:07:34.081]收←◆invalid header: 0xffffffff

[22:07:34.126]收←◆invalid header: 0xffffffff

[22:07:34.170]收←◆invalid header: 0xffffffff

[22:07:34.215]收←◆invalid header: 0xffffffff

解决办法:

第一步:将CNC扩展板对应到Wemos D1 R32 ESP32开发板的GPIO12引脚掰弯,结合上电后不会在出现上述错误。

此时,你会发现Wemos D1 R32 ESP32开发板的给出指令后,电机不能正常工作。

第二步:将折弯的引脚直接接到CNC扩展板任何一个GND上,电机可以正常工作了。

缺点是你不在能控制使能了。(当前你可以尝试接到其他引脚上)

原因分析:

最开始的时候我做了一个尝试,我将CNC扩展板对应Wemos D1 R32 ESP32开发板的5V引脚掰弯,Wemos D1 R32 ESP32可以正常启动,貌似解决了重复重新启动的问题,但电机是不能正常运行起来的。后来发现A4988要求必有有两个电源接入,一个是VCC(8-36V)一个是VDD(3-5V的逻辑电源)。

在找资料。。。。。。。

经查 ESP32 的手册,确认是因为上电后因 Strapping 的相关引脚有关。上电给 Strapping 引脚正确的电平,ESP32模块才可以正常启动或者进入下载模式。

Wemos D1 R32 ESP32开发板与CNC扩展板结合后报invalid header错误

两个板子结合后没有用到GPIO0,GPIO2还是无关项。那么就剩MTDI和MTDO了。回想起第一步的尝试,当不接5V逻辑电源时,不重启,那么说明MTDI是不是下拉到0了?

MTDI、MTDO是个什么鬼????在网上找到了ESP-Prog的介绍。其中给出的连接引脚如下:

Wemos D1 R32 ESP32开发板与CNC扩展板结合后报invalid header错误

MTDI应对的是GPIO12,也就是CNC扩展板的使能引脚。

至此发现两个板子结合上电后,CNC扩展板通过Wemos D1 R32 ESP32开发板的5V逻辑电源给Wemos D1 R32 ESP32开发板的GPIO12拉高了,才导致Wemos D1 R32 ESP32反复重新启动。

不懂原理,纯试出来的。

继续阅读