小智 8
我的 ESP8266 也遇到同样的异常,所以我做了一些研究。追踪异常代码列表很棘手,但我在 Neil Kolban 出版的一本电子书中找到了一个,可以在此处下载: https: //leanpub.com/ESP8266_ESP32。(在我看来,5 美元的建议价格非常值得。)
无论如何,对于你的问题:异常 29 是“storeprohibitedcause”,这意味着你的代码试图写入内存中的受保护区域。
excvaddr 给出的值显示导致异常的虚拟内存地址 (0x00000000)。Kolban 的书提供了 ESP8266 内存地址映射的链接:http://www.esp8266.com/wiki/doku.php? id=esp8266_memory_map id=esp8266_memory_map 。
您的代码在程序计数器 (epc1) 0x40202556 处出现故障,该信息可以帮助您找出代码的哪一部分导致了有问题的内存写入。您可以使用一些调试器来跟踪此问题,但是就我自己而言,我知道问题出在哪里,因此我没有进一步研究该途径。