mega8 Tastenentprellung

OP #992848
Lesenswert?
• ▲
▼
Hallo,

ich bekomme die Tastenentprellung von Peter Dannegger in meinem 
Testprogramm nicht zum Laufen - das Programm reagiert gar nicht auf 
Tastendruck.
Mit einer simplen Tastenerkennung mit delay hatte alles funktioniert.

Eine weitere Frage wäre, ob es sinnvoll ist, die verschiedenen 
Programmeteile in der Interruptroutine auszuwählen. Es funktioniert 
zwar, aber Interruptroutinen sollen ja auch kurz sein.
Wie man sicher sieht, ist das Programm eines meiner ersten Versuche mit 
C, an dem ich schon eine Weile "rumstricke" ...

Bin hier im Moment etwas ratlos und dankbar für jede Hilfe.

Gruß
Thomas
Angehängte Dateien:
OP #992939
Lesenswert?
• ▲
▼
Super, danke Stefan!
Habe ganz übersehen, daß ich das bereits gesetzte Bit mit der zweiten 
Zuweisung wieder lösche.
Mit
    TIMSK  |= (1<<OCIE1A);
tut es wie es soll.

Wie sieht es denn mit meiner zweiten Frage aus, soviel Code in den 
Interrupthandler zu schreiben? Kann man das nicht eleganter lösen, oder 
ist das eine brauchbare Methode?
#993085
Lesenswert?
• ▲
▼
Thomas M. wrote:

> Wie sieht es denn mit meiner zweiten Frage aus, soviel Code in den
> Interrupthandler zu schreiben? Kann man das nicht eleganter lösen, oder
> ist das eine brauchbare Methode?

Das ist nicht wirklich viel code, schau dir einfach mal den erstellten 
ASM-Code an, und zähl die Taktzyklen zusammen.

Der sonst übliche Hinweis "möglichst wenig Code in ISRs" bezieht sich 
eher auf das "kleine" printf zum debuggen, die "kurzen" Float-Divisionen 
zwischendurch oder den _delay_ms Aufruf innerhalb der ISR...

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.