JayCool
06.06.2006, 20:28
Hi Leute,
ich hab' gerade vor wenigen Tagen angefangen, PICs zu programmieren und dabei mit einem 10F206 begonnen, da mir der so schön übersichtlich erschien.
Jetzt wollte ich mit Hilfe des TIMER0-Modules eine Zeitschleife erstellen. Der 10F206 hat keinen Interrupt, und somit muss man den Timer mittels Polling regelmäßig abfragen.
Bei einer Sache komme ich jedoch nicht weiter, da das Datenblatt hierbei keine erschöpfende Auskunft gibt: Das Timer-Register wird ja, wenn der Prescaler auf '1' steht, bei jedem ausgeführten Befehl um 1 erhöht. Was passiert jedoch, wenn das Timer-Register den Wert 255 erreicht?
1.) Bleibt der Wert 255 stehen und der Timer wird abgeschaltet (T0CS-Bit wird auf 1 gesetzt)? Kann man dann das T0CS-Bit abfragen, um einen Timer-Überlauf zu erkennen? oder
2.) Läuft der Timer einfach über von 255 nach 0 und läuft dann einfach weiter?
Gruß, Jan
ich hab' gerade vor wenigen Tagen angefangen, PICs zu programmieren und dabei mit einem 10F206 begonnen, da mir der so schön übersichtlich erschien.
Jetzt wollte ich mit Hilfe des TIMER0-Modules eine Zeitschleife erstellen. Der 10F206 hat keinen Interrupt, und somit muss man den Timer mittels Polling regelmäßig abfragen.
Bei einer Sache komme ich jedoch nicht weiter, da das Datenblatt hierbei keine erschöpfende Auskunft gibt: Das Timer-Register wird ja, wenn der Prescaler auf '1' steht, bei jedem ausgeführten Befehl um 1 erhöht. Was passiert jedoch, wenn das Timer-Register den Wert 255 erreicht?
1.) Bleibt der Wert 255 stehen und der Timer wird abgeschaltet (T0CS-Bit wird auf 1 gesetzt)? Kann man dann das T0CS-Bit abfragen, um einen Timer-Überlauf zu erkennen? oder
2.) Läuft der Timer einfach über von 255 nach 0 und läuft dann einfach weiter?
Gruß, Jan