Zitat Zitat von Chattychan
Also der Servo bewegt sich einmal ca 5-10% nach rechts.
Das ist normales Einschaltverhalten der Servos, wenn kein Impuls angelegt wird.

Bis du eigentlich sicher, dass du am richtigen Anschluss hängst?



Hab ne Frage zu dem Programm, da ich es nicht selber geschrieben habe
weil ich noch AVR Anfänger bin.

Zitat Zitat von Chattychan
Frage1:
Was soll die Variable OCR1 = 20 eigentlich bewirken ?
Also ich meine soweit ich das mit den Timern verstanden habe,
zählt Timer0 im 8-Bit Mode hoch bis 255 und fängt dann wieder
bei 0 an. Wenn Timer0 und OCR1 übereinstimmen wird ein Interrupt
ausgelöst. Also einmal im Bereich von 0-255. Dann ist es doch
egal ob OCR1 = 40 oder 20. Fakt ist der Interrupt wird einmal ausgeführt
in der Zeit die der Controller braucht um bis 255 zu zählen.
Wenn hingegen der Timer0 wieder bei 0 anfängt wenn der Interrupt
ausgelöst wird , dann ist mir alles klar. Dann ist die PWM Frequenz die
Zeit die der Controller braucht um von 0 bis OCR1 zu zählen.
Die Frequenz bleibt ja immer gleich (müssen 20ms pro Durchlauf sein). Was sich ändert, ist das Verhältnis von Impuls zu Pause. Das wird erreicht, indem der Compare-Match mal früher und mal später (je nach OCR0) auftritt.

Zitat Zitat von Chattychan
Frage2:
Offtime ist doch die Spanne in der der PWM-Port (PA0) auf ca 0V liegt.
Ontime die Zeitspanne in der PA0 auf 5V liegt.
Komisch finde ich nur dass der offtime anteil bei 2000 liegt und
der ontime grade mal bei 3.
Mittelstellung wäre doch wenn offtime 2000 und ontime 1000 wäre
also die hälfte der "Amplitudendauer" ein und die hälfte aus.
Der Timer0 bringt doch nur die Frequenz in der die "Amplituden"
erzeugt werden , oder hab ich was falsch verstanden ?
Ein Servo reagiert anders als ein Motor! Die Zykluszeit ist immer 20ms, und der impuls dauert zwischen 1 und 2ms. Ruhestellung ist 1,5ms.