Du könntest z.B. in der Mainloop in gewissen abständen einen Pin Toogeln oder einen Timer verwenden und damit den Pin schalten.
Wie genau müssen denn die 20Khz sein ?
Hallo,
Ich brauche mal eure Hilfe....
Ich habe die C-Control Pro und brauche 20 KHz raus .
An nem da port .
Weiß jemand zufällig wie das geht, und ob das überhaupt geht???
Danke für Antwort
MfG Marcel
Du könntest z.B. in der Mainloop in gewissen abständen einen Pin Toogeln oder einen Timer verwenden und damit den Pin schalten.
Wie genau müssen denn die 20Khz sein ?
hallo,
es kann auch etwas abweichen
ich brauche die 20khz für ne Temerpaursteuertung also nicht ganz so genau..
bei 20 khz wären das dann 30°C
MfG Marcel
Es gibt diverse Timer Funktionen dafür...
Schau mal in der IDE . Hilfe unter Timer nach.
Hallo,
ich hab mir mal die beispiele angesehen
bei dem bsp.
Aber wie muss ich das verändern damit ich da 20 khz rauskriege??????Code: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. } }
MfG Marcel
In dem du den Timer entsprechend einstellst. Ich kenne die C-Control nicht, aber bei AVR Controllern muss man einfach die entsprechenden Register setzen.
Bei der C-Control dürfte es, wenn es keine Library funktion dafür gibt, ähnlich funktionieren.
Hallo,
ja das ist mir klar....
Aber wie ist das
Timer_T0FRQ(100,PS0_1024);
so stellt man ja den Timer ein da steht aber nicht wie man andere Frequenten erzeugt???
MfG Marcel
der gibts das irgendeine Formel zum ausrechen
MfG Marcel
Hallo,
hier ein Beispiel für die Freuenzerzeugung.
Es werden 20.0348 kHz erzeugt!
50µS Periodendauer / Zeitbasis
Code:// 20 kHz PWM // Mega32 PortB.3 - Mega128 PortB.4 void main(void) { // Timer 0 Bsp. // Periode = 1 / 20 kHz // Faktor = Periode / Prescaler // Mega32 PortB.3 - Mega128 PortB.4 Timer_T0FRQ(46,PS_8); // Timer 1 Bsp. // Mega32 PortD.5 - Mega128 PortB.5 Timer_T1FRQ(368,PS_1); while(1); }
Grüße Ulli
danke...
läuft super......
MfG Marcel
Lesezeichen