Hallo liebes Forum,
Ich arbeite mit einen "Feather HAZZAH ESP8266 WiFi"
Laut Datenblatt besitzt dieser keinen PIN für einen interrupt...
Sobald ich einen PIN als interrupt festlege und damit arbeite kommt die Fehlermeldung "ISR NOT IN IRAM!"
attachInterrupt(GPIO, Programm,mode)
Gibt es eine Möglichkeit einen interrupt zu erzeugen ohne so ein PIN zu besitzen?
Gruß Sascha
Verstehe erst mal wieso der Fehler kommt bevor du Lösungen ausdenkst:
http://bienonline.magix.net/public/esp8266-faq.html
Der Punkt "IRAM & Interrupt Service Routinen"
Siehe auch:
https://forum.arduino.cc/index.php?topic=637529.0
skayler:
Laut Datenblatt besitzt dieser keinen PIN für einen interrupt...
bitte Datenblatt verlinken und Verweis setzen, wo das steht.
Kenne das Board, nicht aber wenn da ein esp8266 drauf ist, wäre mir unverständlich warum so eine Einschränkung notwendig wäre
Leider bin ich mit genau diesen Foren nicht weiter gekommen...
Der Link:
trotzdem schon mal danke für die Bemühungen!
noiasca:
bitte Datenblatt verlinken und Verweis setzen, wo das steht.
Kenne das Board, nicht aber wenn da ein esp8266 drauf ist, wäre mir unverständlich warum so eine Einschränkung notwendig wäre
steht im Link auf Seite 8
bekomme den Fehler zwar weg aber Springe nicht in den Interrupt da Ich keinen Interrupt Pin besitze...
attachInterrupt(digitalPinToInterrupt(L16), steller, CHANGE);
attachInterrupt(digitalPinToInterrupt(L16), steller, CHANGE);
ICACHE_RAM_ATTR void steller(){
Serial.println("Interupt");
if(digitalRead(4) != digitalRead(5))
zaehler++;
else
zaehler--;
Einen L16 - Pin kenne ich am ESP8266 nicht. Beim ESP8266 werden üblicherweise die GPIO-Nummern benutzt.
Wenn Du mal einen Blick ins Datenblatt des ESP8266 wirfst, oder einfach mal nach "ESP8266 Interrupt" suchst, wirst Du die Interruptfähigen Pins finden.
Gruß Tommy
Ich kann mir nicht vorstellen, dass es nicht funktioniert.
Sieh dir diese Seite mal an. Bei Google gefunden.
Oder hier