C Control PRO Unit Mega 128 198219 User Manual
![C Control](https://files.manualsbrain.com/attachments/daa52654d30223257b2f2345c46d5ccdd38253dc/common/fit/150/50/b7e2c94773d9bc49012576dd53a142e58fa4d841ac8ab4867887500834b3/brand_logo.gif)
Product codes
198219
369
C-Control Pro IDE
© 2013 Conrad Electronic
5.26.1.1
Ereigniszähler
Hier zwei Beispiele, wie die Timer als Ereigniszähler genutzt werden:
Timer0 (8 Bit)
// Beispiel: Pulszählung mit CNT0
();
pulse(n);
// n Pulse generieren
count=
();
Beim Mega128 ist aus Hardwaregründen die Benutzung von
Tim e r_ 0
als Zähler nicht möglich!
Timer1 (16 Bit)
// Beispiel: Pulszählung mit CNT1
();
pulse(n);
// n Pulse generieren
count=
();
5.26.1.2
Frequenzerzeugung
Zur Frequenzerzeugung können
Tim e r_ 0 , Tim e r_ 1
und
Tim e r_ 3
folgendermaßen eingesetzt werden:
Timer0 (8 Bit)
1. Beispiel:
// Rechtecksignal mit 10*1,085 µs = 10,85 µs Periodendauer
Timer_T0FRQ(
10
, PS0_8)
2. Beispiel: gepulste Frequenzblöcke (Projekt FRQ0)
void main(void)
{
int delval;
// Variable für die Ein-/Ausschaltzeit
delval=
200
;
// Wertzuweisung der Variablen delval
100
,PS0_1024);
// Der Timer wird auf die Frequenz
// Periode=138,9µs*100=13,9ms,Frequenz= 2Hz
while (
1
)
{
AbsDelay(delval);
// Zeitverzögerung um 200ms
();
// Der Timer wird angehalten.
AbsDelay(delval);
// Zeitverzögerung um 200ms
(PS0_1024);
// Der Timer wird mit dem Timer Prescaler
// PS0_1024 eingeschaltet.
}
}