ESP32同时使用blinker和外部中断会报错
本帖最后由 samyujie 于 2022-3-31 01:01 编辑我一行一行代码排除,最终确定这3行代码就会报错:Guru Meditation Error: Core1 panic'ed (Cache disabled but cached memory region accessed)
void do_io_btn(){
}
void setup() {
Blinker.begin(auth.c_str(), ssid.c_str(), pswd.c_str());
pinMode(io_btn, INPUT);
attachInterrupt(digitalPinToInterrupt(io_btn), do_io_btn, CHANGE);
}
void loop() {
Blinker.run();
}
以上代码只是运行了blink外加一个外部中断,并且外部中断的函数是空的。中断触发频率高于230次每秒就会报错。
如何解决?
ICACHE_RAM_ATTR中断加前缀 wdrvk 发表于 2022-3-31 01:00
ICACHE_RAM_ATTR中断加前缀
问题解决了,感谢大佬!!!:'( 和blinker无关,请看8266 arduino sdk文档,最新版本加IRAM_ATTR
Reference — ESP8266 Arduino Core documentation (arduino-esp8266.readthedocs.io)
页:
[1]