mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR Interrupt Problem


Autor: Juan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

möchte eine Frage zu Interrupt stellen und zwar, ich habe eine LED, die 
durch den Interrupt Vektor (SIG_EOVERFLOW0) blinken kann. Ich möchte nun 
mit einem Taster, der mit dem externen Interrupt (SIG_INTERRUPT0) 
arbeitet, die LED aus zuschalten.
Bei dem alten Version von WinAvr weiss ich den Unterschied zwischen 
SIGNAL und INTERRUPT, aber im neuen Version von WinAvr werden die beide 
durch ISR() ersetzt. Ich weiss nicht, wie man die beide Interrupt 
gleichzeitig laufen lassen kann.
Es wäre schön, wenn jemand Bescheid mir geben kann, weil ich noch ein 
Anfänger bin.

mfg

Juan

Autor: Stefan Ernst (sternst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Juan wrote:

> Bei dem alten Version von WinAvr weiss ich den Unterschied zwischen
> SIGNAL und INTERRUPT, aber im neuen Version von WinAvr werden die beide
> durch ISR() ersetzt. Ich weiss nicht, wie man die beide Interrupt
> gleichzeitig laufen lassen kann.

Wenn Du denkst, das eine hätte mit dem anderen zu tun, dann weißt Du den 
Unterschied zwischen SIGNAL und INTERRUPT doch nicht.

INTERRUPT sollte man nur dann verwenden, wenn man auch weiß, was man 
damit anrichtet. Beim neuen WINAVR kann man das mit ISR(xxx, 
ISR_NOBLOCK) machen.

In Deinem Fall reicht aber ISR völlig.
Einmal der Timerinterrupt für die Blink-LED und einmal der 
Timerinterrupt für die Tastenentprellung.
Man kann natürlich auch beides in den selben Interrupt packen.


Peter

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.