12.11.2012 Aufrufe

Programmierung der AVR-Microcontroller mit C - UlrichRadig.de

Programmierung der AVR-Microcontroller mit C - UlrichRadig.de

Programmierung der AVR-Microcontroller mit C - UlrichRadig.de

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Der 8-Bit Timer wird über folgen<strong>de</strong> Register angesprochen:<br />

TCCR0 Timer/Counter Control Register Timer 0<br />

In diesem Register stellen wir ein, wie wir <strong>de</strong>n Timer/Counter verwen<strong>de</strong>n möchten.<br />

Das Register ist wie folgt aufgebaut:<br />

TCNT0<br />

Bit 7 6 5 4 3 2 1 0<br />

Name - - - - - CS02 CS01 CS00<br />

R/W R R R R R R/W R/W R/W<br />

Initialwert 0 0 0 0 0 0 0 0<br />

CS02<br />

CS01<br />

CS00<br />

Clock Select Bits<br />

Diese 3 Bits bestimmen die Quelle für <strong>de</strong>n Timer/Counter:<br />

CS02 CS01 CS00 Resultat<br />

0 0 0 Stopp, Der Timer/Counter wird angehalten.<br />

0 0 1 CPU-Takt<br />

0 1 0 CPU-Takt / 8<br />

0 1 1 CPU-Takt / 64<br />

1 0 0 CPU-Takt / 256<br />

1 0 1 CPU-Takt / 1024<br />

1 1 0 Externer Pin TO, fallen<strong>de</strong> Flanke<br />

1 1 1 Externer Pin TO, steigen<strong>de</strong> Flanke<br />

Wenn als Quelle <strong><strong>de</strong>r</strong> externe Pin TO verwen<strong>de</strong>t wird, so wird ein<br />

Flankenwechsel auch erkannt, wenn <strong><strong>de</strong>r</strong> Pin TO als Ausgang geschaltet ist.<br />

Timer/Counter Daten Register Timer 0<br />

Dieses ist als 8-Bit Aufwärtszähler <strong>mit</strong> Schreib- und Lesezugriff realisiert. Wenn <strong><strong>de</strong>r</strong><br />

Zähler <strong>de</strong>n Wert 255 erreicht hat beginnt er beim nächsten Zyklus wie<strong><strong>de</strong>r</strong> bei 0.<br />

Bit 7 6 5 4 3 2 1 0<br />

Name MSB LSB<br />

R/W R/W R/W R/W R/W R/W R/W R/W R/W<br />

Initialwert 0 0 0 0 0 0 0 0<br />

Um nun also <strong>de</strong>n Timer0 in Betrieb zu setzen und ihn <strong>mit</strong> einer Frequenz von 1/64-tel <strong>de</strong>s CPU-<br />

Taktes zählen zu lassen schreiben wir die folgen<strong>de</strong> Befehlszeile:<br />

outp ((1

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!