Forum: Mikrocontroller und Digitale Elektronik PWM mit Atmega32


von JohnyP (Gast)


Lesenswert?

Hallo, ich hoffe jemand kann mir beim konfigurieren einer PWM helfen. 
Ich habe es mit dem Datenblatt des ATmega32 und mit dem PWM Tutorial 
hier auf dieser Seite probiert. Ohne erfolg!
Meine anforderung: ich möchte einen HI Puls von 16 Taktlängen gefolgt 
von einem LOW von 404 Taktlängen.
Laut Datenblat überhaupt kein problem:
Seite 114 Tabelle 16-5 Modus 14
WGM13 = 1, WGM12 = 1, WGM11 = 1, WGM10 = 0.
Fast PWM. Zähler soll angeblich bis ICR1 zählen (siehe Seite 105 Figur 
16-7) und dann zurückgesetzt werden.
Dann: (Seite 113 Tabelle 16-3)
COM1A1 = 1, COM1A0 = 0.
OC1A löschen bei Timer gleich vergleichswert und setzen bei 0.
nurnoch ICR1 auf 420 setzen und OCR1A auf 16.
Und so komme ich zu folgendem Sourcecode:

#include<io.h>
int main(void) {
  TCCR1A = 1<<COM1A1 | 1<<WGM11;
  TCCR1B = 1<<WGM13 | 1<<WGM12 | 1<<CS10;
  ICR1 = 420;
  OCR1A = 16;
  DDRD = 0;
  while(1){}
  return 0;
}

Tja! Aber denkste!
Machen tut er was anderes. Ein Tracen mit F10 ergab:

Er Zählt von 0 bis 1FF und dann wider zurück von 1FF bis 0.
Beim runterzählen und erreichen von 16 wird der Ausgang gesetzt und beim 
Hochzählen bei 16 rückgesetzt.

Das entspräche ja dem Phasen und Frequenz korecktem PWM modus und zählen 
bis top = 1FF. Herlich diesen modus gibt es in der Tabelle 16-5 seite 
114.
Wie dem auch sei, ich habe natürlich schon einiges an konfigurationen 
durchprobiert. Das was ich dabe NIEMALS hinbekommen habe ist, dass der 
Zähler bis ICR1 gezählt hat! er hat immer nur bis FF oder 1FF oder 3FF 
gezählt, aber niemals bis zu einem Registzervergleichswert!

Hat jemand ne idee?

von JohnyP (Gast)


Lesenswert?

Sorry!

Das entspräche ja dem Phasen und Frequenz korecktem PWM modus und zählen
bis top = 1FF. Herlich diesen modus gibt es GARNICHT in der Tabelle 16-5 
seite114.

...solte es heißen

von JohnyP (Gast)


Lesenswert?


Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.