Gast
#3956709
Hallo zusammen. Ich möchte gleichzeitig 14 Servos ansteuern. Dazu brauche ich 14 Impulsbreitensteuerungen. Ich möchte das folgendermaßen realisieren. über Timer 1-Compare-Interrupt erzeuge ich die positive Flanke bei allen Ports. In der Hauptschleife frage ich dann bei jedem Durchgang den aktuellen Timerstand ab. wenn dieser den für den jeweiligen Port zuständigen Wert überschreitet, wird dieser auf 0 gesetzt. Das funzt auch gut. Nun mein Problem: Im Simlator klappt alles gut, Die Impuse haben die definierte Länge. Aber wenn ich das Programm in den Chip lade, Wackelt die Impulsbreite unregelmäßig. Die Servos geben ständig Geräusche ab, und Zucken. Das wäre für meinen Zweck nicht mal so schlimm, aber sie werden durch die ständige Motoraktivierung zu warm. Gibt es da auf dem Prozessor im Hintergrung irgndwelche Aktivitäten, die man explizit abschalten kann und müßte? Alle Interrupts ausser dem Timer-Compare sind ausser Betrieb. Gruß Fritz PS Iim angehängten File habe ich alles auskommentiert, was meiner Meinung nach probleme bereiten könnte. Auch habe ich die Impulserzeugung auf einen Port beschränkt.