Внешнее прерывание ESP8266

forfrends
Offline
Зарегистрирован: 24.02.2015

Всем привет! Необходимо сделать внешнее прерывание (для обработки кнопок) на ESP8266. Но что-то у меня не получается. Нашел пример: https://mirrobo.ru/c-arduino-ide-esp8266-preryvaniya-interrupt/ 
Прошивается, но ESP8266 переходит в вечный ребут. Переназначение пина прерывания ни на что не влияет - вечная перезагрузка.

Что можете посоветовать? Как подключить внешнее прерывание на ESP8266?

forfrends
Offline
Зарегистрирован: 24.02.2015

ESP при этом в сериал выводит следующее:

 ets Jan  8 2013,rst cause:2, boot mode:(3,6)

load 0x4010f000, len 1384, room 16 
tail 8
chksum 0x2d
csum 0x2d
v8b899c12
~ld
ISR not in IRAM!

Abort called

>>>stack>>>

ctx: cont
sp: 3ffffdb0 end: 3fffffc0 offset: 01b0
3fffff60:  feefeffe 00000001 3ffee254 3ffee2ac  
3fffff70:  3fffdad0 00000001 3ffee254 3ffee2ac  
3fffff80:  3fffdad0 00000000 3ffee27c 40100452  
3fffff90:  feefeffe 00000000 3ffee27c 40201071  
3fffffa0:  feefeffe feefeffe feefeffe 402017a4  
3fffffb0:  feefeffe feefeffe 3ffe84f4 4010073d  
<<<stack<<<

И так по кругу

FoxJone
Offline
Зарегистрирован: 19.04.2019

Просто процитирую себя же с этого же форума

FoxJone пишет:

С другой стороны, НАСТОЙЧИВО НЕ РЕКОМЕНДУЮ (сам обжегся очень) вешать на ESP8266 какие то другие задачи, кроме WiFi, web-сервера и вебинтерфейса. Ну максимум что то простенькое, типа кнопки или датчика температуры. Иначе, ой сколько вам открытий чудных готовит парадоксов друг....

Такую же фигню в сериале я от еспшки видел не раз, после чего зарекся использовать ее как то, кроме как для связи. Как я думаю, Wifi и вся прочая сетевая обвязка очень глубоко лезет в таймеры и прерывания, и совершенно не ясно, где именно и что кому помешает.

forfrends
Offline
Зарегистрирован: 24.02.2015

Да, вы правы. Отчасти. То что вы говорите 100% верно для Ардуино IDE. Нужно код для ESP писать в специализированной среде...

Проблему решил откатом менеджера плат для ESP на версию 2.4.2. В новых версиях отключена поддержка "чего-то-там.." из-за чего и происходит такой глюк.