Archiv verlassen und diese Seite im Standarddesign anzeigen : 20khz Rechteckspannung erzeugen???
stormracer
22.04.2007, 17:59
Moin,
ich möchte gerne wissen, wie ich die Register des Timer setzen muss, um eine Frequenz von ca. 20khz zu erreichen( PWM)? Welcher der Timer des ATMega 32 ist denn überhaupt der sinnvollere für diese Aufgabe?
MFG Stormracer
Hallo,
wie währs wenn du mal ins Datenblatt des Atmega32 rein schauen würdest, dort findest du Antwort auf deine Frage.
Ich würd sowas mit timer1 realisieren.
Mfg franz
stormracer
23.04.2007, 18:17
Moin,
habe jetzt nach viel googlen und Datenblatt lesen bin ich zu diesem Versuch gekommen:
int main(void)
{
//Port D als Output
DDRD = 0xff;
//10 Bit Phase Correct PWM, max Wert 1023
TCCR1A = (1<<WGM10) | (1<<WGM11) |(1<<COM1A1);
//Takt = CPU-Takt/64
TCCR1B = (1<<CS10) | (1<<CS11);
//Port D Bit 7 (Enable) auf I
PORTD |= (1 << 7);
while(1)
{
OCR1A=512; // ~2,5V
}
return 0;
}
Aber ich weiß immer noch nicht, wie ich die Frequenz berechnen kann.
Kann ich die Formel f=CPU_Takt/(2*Prescaler*TOP) benutzen?
Aber welcher Wert ist TOP, ist das in dem Mode 1023, oder der Wert, der durch OCR1A eingestellt wird?
MFG Stormracer
Zur Timer-Berechnung gibts nen nettes Tool namens AVRcalc.
stormracer
25.04.2007, 18:55
Moin,
kann mir jemand bestätigen, dass die oben genante Formel richtig ist?
Im Endefekt geht es mir darum, ein MosFET zu betreiben, das einen verbraucher mit 20kHz schaltet. Muss dazu auch die vollen 5Volt auf den Ausgangspin legen, also mus ich doch OCR1A auf 1023 setzen?
MFG Stormracer
Moin,
kann mir jemand bestätigen, dass die oben genante Formel richtig ist?
Im Endefekt geht es mir darum, ein MosFET zu betreiben, das einen verbraucher mit 20kHz schaltet. Muss dazu auch die vollen 5Volt auf den Ausgangspin legen, also mus ich doch OCR1A auf 1023 setzen?
MFG Stormracer
Es wird nicht klar, was du eigentlich willst: ein Rechteck mit 20k? Eine PWM-Steuerung?
stormracer
26.04.2007, 12:44
Moin,
also ich möchte im Endefekt Energie auf eine sich drehende Scheibe bekommen und habe mir dazu zwei Spulen besorgt, wobei die eine fest ist und die andere auf der drehenden scheibe. Nun soll die feste Spule mit einer Frequenz von ca. 20kHz betrieben werden soll (um einen möglichst guten Wirkungsgrad zu erreichen).
Um diese 20kHz zu bekommen, hab ich mir gedacht, die mit einem ATMega per PWM erzeugen.
Bei PWM bekommt man doch eine Rechteckspanung?
MFG Stormracer
Hi,
also wenn es nur drum geh die 20kHz zu erzeugen dann könntest das auch mit einem Timerbaustein machen z.B. NE555. Ja mit dem Atmega kannst du eine Rechteckspannung machen mit PWM.
mfg franz
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.