-
-
Erfahrener Benutzer
Roboter Genie
Die Namen sind auch missverständlich.
Bei SIGNAL sind die Interrupts während der Ausführung deaktiviert (Implizites cli() am Anfang der Interrupt Routine.
Bei INTERRUPT bleiben die Interrupts aktiviert. Eine INTERRUPT-Routine kann also von weiteren Interrupts unterbrochen werden. Da das schnell zu einem Stacküberlauf führen kann, sollten INTERRUPTS wenn möglich vermieden und ansonsten sehr vorsichtig eingesetzt werden.
BTW, in den neuen Versionen des avr-gcc ist die Benennung geändert worden. Aus SIGNAL wurde ISR (was IMHO dem Sinn viel näher kommt).
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen