Hallo

Wenn ich mit deinem Programm ein normales Servo ansteuere stellt es sich brav auf eine Position, allerdings nicht auf die Mitte. Möglicherweise ist die Auflösung mit der sleep()-Funktion einfach nicht fein genug um den Nullpunkt der Regler zu treffen.

Warum ändert es z.b die Geschwindigkeit an ADC1 wenn ich an ADC0 was ändere?
Das geht vielleicht in die selbe Richtung. Ein Impulszyklus dauert die Summe der einzelnen Sleep()s und ist vielleicht nicht genau genug 20 ms lang. Möglicherweise reagiert der Regler darauf unerwartet.

Ich würde zu einer etwas kompfortableren Impulserzeugung via ISR raten, allerdings ist das zusammen mit der RP6-Library nicht ganz einfach.

Gruß

mic