- Labornetzteil AliExpress         
Ergebnis 1 bis 9 von 9

Thema: Hilfe beim Atmega644p, Timer 2 PWM

  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    19.02.2008
    Ort
    Pohlheim
    Alter
    33
    Beiträge
    240

    Hilfe beim Atmega644p, Timer 2 PWM

    Anzeige

    LiFePo4 Akku selber bauen - Video
    Hi,

    ich möchte gern beim atmega644p die beiden Ausgänge für PWM nutzen. Pin 20 und 21. Leider blick ich bei den ganzen Fusebits im Datenblatt mal überhaupt nicht durch...

    mit dem einfachen "config timer2 = pwm......" geht es leider nicht.

    Den wert setze ich im Programm mit dem Befehl "OCR2A = X"

    Kann mir jemand helfen? Ich will einfach nur die beiden PWM Kanäle mit clear down benutzen.

    Gruß

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    19.02.2008
    Ort
    Pohlheim
    Alter
    33
    Beiträge
    240
    habe gerade nochmal ins datenblatt geschaut und gesehen, dass beim 644p die beiden TOSC anschlüsse auf timer2 gehen! nicht wie sonst auf timer1. D.h. Timer2 ist mit meinem UhrenQuarz schon belegt.

    Ich habe jetzt alles auf timer1 umverdrahtet. Dort geht es aber auch nicht^^

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.113
    Hallo Felix,
    die TOSC Anschlüsse sind auf Pin 28+29, kommen deinem Timer2 also nicht in die Quere.
    Zeig doch mal deinen Code, dann kann man besser helfen.

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    19.02.2008
    Ort
    Pohlheim
    Alter
    33
    Beiträge
    240
    Hi,

    die TOSC Anschlüsse gehen aber an Timer2. Da ich dort einen Uhrenquarz dran habe, blockiert dieser ja den Timer2 für weitere Verwendung. Daher habe ich es jetzt auf Timer1 ungekabelt. Pin 18+19.

    Code:
    Config Timer1 = Pwm , Pwm = 8 , Prescale = 256 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down
    
    Tccr1a = &B10100001
    Tccr1b = &B00000011
    Timsk1 = &B00000111
    
    und im code....
    
    Ocr1ah = &B00000000
    Ocr1al = dimmen1
    
    Ocr1bh = &B00000000
    Ocr1bl = dimmen2

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.113
    Zitat Zitat von Felix H.
    Config Timer1 = Pwm , Pwm = 8 , Prescale = 256 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down
    Tccr1a = &B10100001
    Tccr1b = &B00000011
    Timsk1 = &B00000111
    Mit
    Tccr1b = &B00000011
    überschreibst du den Prescale auf 64. Ist das gewollt?

    Mit
    Timsk1 = &B00000111
    enablest du Interrupts. Ist das gewollt? Hast du die entsprechenden ISRs erstellt und über
    On <interrupt> isr
    dem Controller mitgeteilt? Wenn nicht, wird er dauern resetten.

  6. #6
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    19.02.2008
    Ort
    Pohlheim
    Alter
    33
    Beiträge
    240
    Hi,

    ich dachte die interrupts sind nötig... ich hab halt alles mögliche durchprobiert aber nichts hat funktioniert...

    ja der prescale soll auf 64 stehen. Wenn ich Timsk1 = &B00000111 hinter dem config timer.... stehen habe wird das ja überschrieben oder?

    Hilfe ich blick da nicht durch....

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.113
    Zitat Zitat von Felix H.
    ja der prescale soll auf 64 stehen.
    Warum schreibst du dann nicht Prescale=64 in den Config Timer1 Befehl?

    Zitat Zitat von Felix H.
    Wenn ich Timsk1 = &B00000111 hinter dem config timer.... stehen habe wird das ja überschrieben oder?
    Ja schon, aber wenn du keine ISR anspringen willst, dann lass das Setzen von Timsk1 weg.

  8. #8
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    19.02.2008
    Ort
    Pohlheim
    Alter
    33
    Beiträge
    240
    hi,

    hab das jetzt rausgenommen... geht trotzdem nicht^^

  9. #9
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.113
    Zeig doch mal deinen ganzen Code, dann kann man den mal im Simulator ausprobieren.

Berechtigungen

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

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad