Hallo, ich habe einen Modellbauservo an den OC1A-Pin eines Mega8 gehängt. Mit dem 16-Bit-Timer 1 erzeuge ich jetzt ein PWM-Signal mit ca. 20ms wo ich die Zeit vom high-pegel einstellen kann. Dieser ist von min. bis max. von 0xBF bis 0x EF verstellbar. Das sind allerdings nur 45 Zwischenwerte was bei 180° pro schritt 3,75° heißen würde! Ist das normal oder habe ich da beim ansteuern was falsch verstanden? MFG Mixer
Hat keiner ne schnelle Antwort für mich?? Ist das normal dass man einen Servo mit so "großen" Schritten ansteuert oder geht das normal feiner?? MFG Mixer
PWM ist dafür schlecht geeignet. Gibt etliche trööts über das Thema, mal ein bisschen suchen.
Mit welcher Taktfrequenz betreibst du deinen Controller? Sehe ich es richtig, dass du OCR mit 0x03EF lädst? Das würde bedeuten, dass dein Grenzwert für 20ms 1007 ist. Das teilt man dann noch mal durch 10, da der Servo-Impuls maximal 2ms lang sein sollte (~100 Schritte maximale Auflösung). Der Impuls sollte mindestens 1ms lang sein. Somit verringern sich deine mögliche Einstellwerte auf den Bereich zwischen 50 und 100...
Ist zwar nicht Mega8 sondern Mega48, ist auch nicht Hardware-PWM sondern Software-PWM, macht auch nicht 1 Servo, sondern 7, könnte aber trotzdem interessant für Dich sein: http://www.hanneslux.de/avr/mobau/7ksend/7ksend02.html ...
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.