User manual
201 C-Control Pro Mega Series
© 2008 Conrad Electronic
6.19.2 Frequenzerzeugung
Zur Frequenzerzeugung können Timer_0, Timer_1 und Timer_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
Timer_T0FRQ(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
Timer_T0Stop(); // Der Timer wird angehalten.
AbsDelay(delval); // Zeitverzögerung um 200ms
Timer_T0Start(PS0_1024); // Der Timer wird mit dem Timer Prescaler
// PS0_1024 eingeschaltet.
}
}
Das Programm ist auf dem Mega128 nicht im USB Modus funktionsfähig, da der Ausgang PB4 im
Zusammenhang mit dem USB Interface auf dem Application Board genutzt wird.
Timer1 (16 Bit)
Beispiel: Frequenzerzeugung mit 125 * 4,34 µs = 1085µs Periode
Timer_T1FRQ(125,PS_64);
Timer3 (16 Bit) (nur Mega128)
Beispiel: Frequenzerzeugung mit 10*1,085 µs =10,85 µs Periode und 2*1,085µs =2,17 µs
Phasenverschiebung
Timer_T3FRQX(10,2,PS_8);