LPC936 THn und TLn berechnen.

OP #2776366
Lesenswert?

Im Scriptum meines früheren Professors bin ich fündig geworden.





Üblicherweise werden Zeiten in der Größenordnung von Sekunden/Minuten 
benötigt.
Arbeitet der Timer als 16 Bit Zähler, also im Mode 1, so vergehen 65.535 
Mikrosekunden,
oder 65,535 ms bis der Zähler den ersten Überlauf produziert, also das 
erste Mal das
Timerinterruptprogramm bearbeitet. Es werden also mehrfache 
Interruptaufrufe erforderlich
sein, bis die nach Ablauf der gewünschten Zeit erforderlichen Aktionen 
gesetzt werden.
Nachdem die in der Aufgabenstellung geforderte Zeitdauer in den 
seltensten Fällen ein
ganzzahliges Vielfaches von 65,535 ms ist, wird man den Zähler nicht von 
0-65535 zählen
lassen, sondern immer von einem bestimmten Anfangswert ausgehend.
Beispiel: Geforderte Zeitdauer=10 Sekunden.
Würde der Zähler immer von 0-65535 zählen, so wären 
10000ms/65,535ms=152,59
vollständige Durchläufe und damit 152,59 Interrupts erforderlich.
Gewählt werden 153 Durchläufe. Dies ergibt 10.000.000 
Mikrosekunden/153=65359
Mikrosekunden zwischen 2 Interrupts. Damit der Zähler nach 66359 
Mirkrosekunden einen
Interrupt erzeugt, muß er immer bei der Zahl 65535-65359=176 beginnen.
176 dezimal = 0x 00B0
TH0=0x00;
TL0=0xB0;

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren