Attila schrieb:
> Der Takt ist 8 MHZ.
>
> Auch auf die Gefahr hin mich als echter Anfänger zu outen: Das ist ja
> ein 8 bit timer. Somit hat man 255 Werte max. Wenn aber doch 1ms etwa 50
> "Einheiten" entspricht (72-22 zwische Servo links und Servo rechts) dann
> müsste doch 255 etwa 5ms lang sein? Daher bekommt mein Servo alle 5 ms
> einen Puls.
Warum rechnest du denn rückwärts? Du hast einen Takt von 8 Mhz und einen
Prescaler von 256. Der Timer läuft nach 256 Timer-Takten über, also 8
Mhz / (256 * 256) = 122 mal pro Sekunde, bzw ca. alle 8 ms. Deine
gefundenen Grenzen von 22 und 72 entsprechend dann einer Pulsdauer von
0,7 bis 2,3 ms, was schon ein relativ großer Bereich ist, wo aber
erstmal nichts dagegen spricht.
> Ist das richtig? Und wenn ja: Ist das vielleicht zu schnell weil es ja
> etwa 20ms pro Zyklus sein soll?
Die Pausendauer ist normalerweise nicht so wichtig, wenn sie nicht
gerade extrem klein oder extrem groß ist. 8 ms müßten an sich ok sein.
Deine Beschreibung klang eigentlich, als hätte dein Impuls einen Jitter,
aber da du den Hardware-Timer verwendest, kann das nicht sein. Ein
anderer Grund könnte mangelnde Entstörung des Prozessors sein. Wenn der
mit dem Servo an der selben Spannungsquelle hängt, kann der Motor vom
Servo den Prozessor stören und Fehler/Resets auslösen, falls man nicht
die nötigen Abblock-Kondensatoren verbaut hat oder den Reset-Pin nicht
richtig beschaltet.