-         

Ergebnis 1 bis 6 von 6

Thema: Timer1 16 Bit PWM

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

    Timer1 16 Bit PWM

    Anzeige

    Hi,

    ich habe einen Atmega16 und versuche gerade mit dem Timer1 ein 16Bit PWM zu realisieren. Ich verwende den Modus Nr. 10. Phase Correct PWM mit ICR1 als Top.

    Code:
    Tccr1a = &B10100010                                         'Timer1 PWM 16 Bit
    Tccr1b = &B00010010                                         'PWM-Modus 10
    Icr1h = &HFF
    Icr1l = &HFF
    Setze ich nun einen Beliebigen Wert in das OCR1AH und OCR1AL, kommt nichts am Ausgang raus. Mit dem Modus Nr. 3 funktioniert es bestens. Allerdings hab ich da auch nur 10Bit.

    Lg

  2. #2
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    54
    Beiträge
    5.782
    Blog-Einträge
    8
    PD5 ist ein Ausgang?

    " However, note that the Data Direction Register (DDR) bit correspond-
    ing to the OC1A or OC1B pin must be set in order to enable the output driver."

    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von Vitis
    Registriert seit
    06.01.2005
    Ort
    Südpfalz
    Alter
    43
    Beiträge
    2.240
    In Hardware geht der 16-Bit-Timer nur bis 10 Bit, ist leider so ...
    Du kannst aber ein halb Software, halb Hardware, 16 Bit PWM generieren indem Du den Timer als 16 Bit Timer laufen lässt
    und je ein Interruptserviceroutine für Output Compare und Timerüberlauf schreibst, sprich bei OCR Pin setzen und bei Timerüberlauf zurücksetzen.
    Aber die Wiederholfrequenz wird da nicht riesig sein ... 300-400Hz so in der Größenordnung
    Vor den Erfolg haben die Götter den Schweiß gesetzt

  4. #4
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    54
    Beiträge
    5.782
    Blog-Einträge
    8
    "The PWM resolution for the phase and frequency correct PWM mode can be defined by either
    ICR1 or OCR1A. The minimum resolution allowed is 2-bit (ICR1 or OCR1A set to 0x0003), and
    the maximum resolution is 16-bit (ICR1 or OCR1A set to MAX)."

    Mode 10 (WGM13 und 11 gesetzt) ist PWM, Phase Correct mit ICR1 als Top. Also müssten das auch 16Bit sein, oder?

    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    19.02.2008
    Ort
    Pohlheim
    Alter
    27
    Beiträge
    240
    Fehler gefunden =) zwischen dem Schreiben des TCCR1B und des ICR1 sollte eine kurze wartezeit erfolgen.

    Code:
    Tccr1a = &B10100010                                         'Timer1 PWM 16 Bit
    Tccr1b = &B00010001                                         'PWM-Modus 10
    !nop
    !nop
    !nop
    Icr1h = &HFF
    Icr1l = &HFF


  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von Vitis
    Registriert seit
    06.01.2005
    Ort
    Südpfalz
    Alter
    43
    Beiträge
    2.240
    hmmm seltsam, das hatt ich dann damals im Datenblatt überlesen ... hätt mir viel Ärger erspart ....
    muss ich erst mal testen
    Vor den Erfolg haben die Götter den Schweiß gesetzt

Ähnliche Themen

  1. Uhrenquarz an Timer1
    Von Icon2k im Forum AVR Hardwarethemen
    Antworten: 13
    Letzter Beitrag: 03.01.2013, 09:39
  2. 2x PWM mit Timer1 auf ATmega48
    Von Jacob2 im Forum C - Programmierung (GCC u.a.)
    Antworten: 0
    Letzter Beitrag: 12.05.2011, 18:15
  3. Startwert für Timer1
    Von sahra im Forum C - Programmierung (GCC u.a.)
    Antworten: 2
    Letzter Beitrag: 25.01.2011, 13:23
  4. Timer1 verwenden
    Von Gerko im Forum Robby RP6
    Antworten: 19
    Letzter Beitrag: 11.02.2009, 22:27
  5. Timer1 Uhr
    Von orph im Forum PIC Controller
    Antworten: 9
    Letzter Beitrag: 16.09.2006, 16:44

Berechtigungen

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