CodeShorty: Serieller Interrupt

Last Updated on 26. März 2023 by sfambach

Ist es möglich Eingaben auf der Seriellen-Schnittstellen per Interrupt abzufangen?

Die Antwort is wohl eher jain, es ist möglich die Serial Event Funktion zu verwenden. Diese wird nach jeder Loop ausgeführt, unterbricht diese aber nicht.

Zweck

  • Benutzereingaben über Terminal
  • Kommunikations mit anderen Geräten über die Serielle-Schnittstelle

Nötige Bibliotheken

Keine

Programm

Es gibt in der Arduino-Gui die Möglichkeit eine EventFunktion zu verwenden. Diese wird immer nach dem Loop aufgerufen, unterbricht aber keinen laufenden Code.

Damit die Event Funktion nicht blockiert habe ich die WHILE Schleife herausgenommen. Die Funktion ist die gleiche wie vorher, allerdings wird bei jedem Zeichen nochmal die Arbeitsschleife durchlaufen. Dies kann evtl. zu anderen unerwünschten Effekten führen.

Probleme

Ausgabe erfolgt nicht

Darauf achten, dass das verwendete Terminal auf das Zeilenende "new line" eingestellt ist.

Fazit

Kein Interterrupt aber dafür eine Funktionalität die man nutzen kann.

Andere Shorties

Quellen

https://forum.arduino.cc/t/how-to-use-serial-interrupt-in-arduino/335712/29

https://www.arduino.cc/en/Tutorial/BuiltInExamples/SerialEvent

https://forum.arduino.cc/t/interrupt-uber-serielle-schnittstelle/545390

https://forum.arduino.cc/t/interrupt-sobald-daten-in-serial-eingangspuffer-stehen/132916

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert