www.mikrocontroller.net

Forum: Compiler & IDEs Interuppt enabled bit in interuppt service routine gesetzt?


Autor: Alfred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

kann mir jemand folgende Frage beantworten?
Löscht der AVR beim Eintritt in eine Interrupt-Service-Routine sein 
Interrupt Enabled Bit selbstständig oder muss ich das machen? -> cli();
Setzt der AVR beim Verlassen der ISR sein IE-Bit dann auch wieder, oder 
muss ich das machen? -> sei();
Bisher hab ich sicherheitshalber cli und sei einfach immer 
reingeschrieben, aber gehts auch ohne?

Grüße,

Patrick

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja es geht ohne, aber für solche sachen gibt es eine Doku und den 
Simulator.

Autor: Alfred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Peter,

vielen Dank für deine Antwort.

Sollte ich eine Doku und einen Simulator vorliegen haben, werde ich mich 
deren gerne bemühen, war aber grad nicht so...

Grüße,

Alfred

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Bisher hab ich sicherheitshalber cli und sei einfach immer
> reingeschrieben, aber gehts auch ohne?

Das sei am Ende kann sogar schädlich sein, da in dem Fall die Interrupts 
schon wieder freigeschaltet werden, bevor aus der ISR zurückgesprungen 
wird. Wenn sehr viele Interrupts in kurzer Zeit auftreten, kann es 
theoretisch zu einem Stack-Überlauf kommen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.