Timer0 - mega8

Gast #275722
Lesenswert?
• ▲
▼
Ach und noch etwas...verstehe den Sinn der Flags nciht so ganz.

Wenn ich z.B.einen mit einem timeroverflow ein Ereignis auslösen
möchte, schreib ich das so:

ISR(TIMER0_OVF_vect)
{
  _delay_ms(50);
  timerstand = TCNT0;      //Lese aktuellen timerstand aus
  nr_overflows++ ;

}
Gast #275725
Lesenswert?
• ▲
▼
Und wieso das falsche Flag?

Laut Datenblatt:

When the TOIE0 bit is written to one, and the I-bit in the Status
Register is set (one), the
Timer/Counter0 Overflow interrupt is enabled.

Das will ich doch!!


Udn zum Delay in der ISR.....weiß nicht, wie ich den taster sonst
entprellen soll(softwaremäßig) :-)
Gast #275727
Lesenswert?
• ▲
▼
@Thomas Burkhardt
hmm, das mit den delays in interruptroutinen habe ich hier jetzt in den
letzten tagen des öfteren bei anfängern gesehen (z.b. einen beitrag mit
einer seriellen schnittstelle)! eventuell sollte man mal nen kleinen
eintrag ins wiki machen, der delay`s beschreibt, wie sie zu erzeugen
sind und wann man sie (nicht) benutzt.
Gast #275728
Lesenswert?
• ▲
▼
Aha, danke, werd mich darüber schlau machen..
Wobei ich schon ein kleines Programm ahbe, um einen Pin zu entprellen,
allerdings müsste der Code dann ja auch in der ISR Routine stehen, und
das ist auch nicht optimal, oder?!

Aber bevor ich mir darüber Gedanken machen, sollte der Timer mal laufen
:-)
Persönliche Seite #275729
Lesenswert?
• ▲
▼
Hoi!

> When the TOIE0 bit is written to one, and the I-bit in the Status
> Register is set (one), the
> Timer/Counter0 Overflow interrupt is enabled.

> Das will ich doch!!

Ja, du willst, aber du schreibst es nicht ;)

TOIE0 != TOIE1

Im Code steht eine EINS wo eine NULL stehen sollte...

Ansonsten den vorgeschlagenen Artikel zur Entprellung ansehen, wenn
das sowieso dein Ziel ist.

Gruß, Thomas

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.