-         

Ergebnis 1 bis 8 von 8

Thema: 20khz Rechteckspannung erzeugen???

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    10.07.2006
    Ort
    Winsen
    Alter
    28
    Beiträge
    30

    20khz Rechteckspannung erzeugen???

    Anzeige

    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

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    29.05.2005
    Ort
    Rott am Inn
    Alter
    29
    Beiträge
    373
    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

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    10.07.2006
    Ort
    Winsen
    Alter
    28
    Beiträge
    30
    Moin,
    habe jetzt nach viel googlen und Datenblatt lesen bin ich zu diesem Versuch gekommen:
    Code:
    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

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    06.02.2005
    Ort
    Hamburg
    Alter
    31
    Beiträge
    4.255
    Zur Timer-Berechnung gibts nen nettes Tool namens AVRcalc.

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    10.07.2006
    Ort
    Winsen
    Alter
    28
    Beiträge
    30
    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

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    06.02.2005
    Ort
    Hamburg
    Alter
    31
    Beiträge
    4.255
    Zitat Zitat von 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?

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    10.07.2006
    Ort
    Winsen
    Alter
    28
    Beiträge
    30
    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

  8. #8
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    29.05.2005
    Ort
    Rott am Inn
    Alter
    29
    Beiträge
    373
    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

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •