PWM ATmega2560 verschiedene Spannungen

Gast #2684034
Hallo!
Ich habe leider nirgendwo eine Lösung finden können. Mein Problem ist, 
dass ich ein Programm von einem ATmega168 auf den ATmega2560 umschreibe, 
da der Umfang nun ausgeweitet werden soll. Bei der Servoansteuerung sehe 
ich aber jetzt auf dem Oszilloskop, dass das PWM-Signal nicht so ist, 
wie es sein soll. Es gibt 5V, 2,5V und 0V. Die Gesamte Zykluszeit bleibt 
unverändert, es ändert sich lediglich die Dauer der Pegel 5V und 2,5V.
Was ist das denn für eine Funktion? Also ich möchte ein ganz normales 
PWM-Signal erzeugen mit 5V und 0V.
Hier mal meine Timer-Konfig:
1
 
2
TCCR1A = (1<<COM1A1) | (1<<COM1B1) | (1<<WGM11); //compare A&B
3
TCCR1B = (1<<WGM13) | (1<<WGM12) | (1<<CS11);  //prescaler 8
4
ICR1  = 40550;  //22ms @ 14.7456MHz
5

6
OCR1A = 2000; //Servostellung
7
OCR1B = 2000; //Servostellung

Habt Ihr da einen Tipp?
Vielen Dank!
Jens
Gast
Hat keiner von Euch einen Tipp? Warum besitzt das PWM-Signal 3 Pegel?
Würde mich echt freuen, wenn mich da jemand aufklären könnte, wie ich 
das ändern kann..

Jens
Gast
Hi

>Hat keiner von Euch einen Tipp? Warum besitzt das PWM-Signal 3 Pegel?
>Würde mich echt freuen, wenn mich da jemand aufklären könnte, wie ich
>das ändern kann..

Was hängt denn an den Pins dran?

MfG Spess
Gast
An den Pins hängt jetzt mein Oszilloskop dran. Später der Servo. Ich 
habe es aber hinbekommen.. Scheinbar ist diese 3level PWM für irgendwas 
sinnvoll. Wenn OC1B=OC1A, dann bekommt man den vollen Pegel.
Um mit timer 1 noch einen Servo anzusteuern, habe ich zusätzlich OC1C 
verwendet. So läuft es. Seltsamerweise habe ich dazu im Daenblatt nichts 
gefunden. Gehört das wirklich so? Es sind saubere Pegel und es ist genau 
VCC/2 ..
Gast
Hi

>Wenn OC1B=OC1A, dann bekommt man den vollen Pegel.
>Um mit timer 1 noch einen Servo anzusteuern, habe ich zusätzlich OC1C
>verwendet. So läuft es. Seltsamerweise habe ich dazu im Daenblatt nichts
>gefunden. Gehört das wirklich so? Es sind saubere Pegel und es ist genau
>VCC/2 ..

Sieht nach einem Kurzschluss zwischen den Pins aus.

MfG Spess
Gast
Oh, super! Danke... ist mir bei den kleinen Beinchen gar nicht 
aufgefallen... da war tatsächlich eine Verbindung.. Und ich hab mich 
schon gewundert.. dachte ja eher daran, dass es einen Grund hat mit den 
Pegeln..
Nun läuft es wieder wie es soll! :-)

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.