Zitat Zitat von the_Ghost666
Moin zusammen
hat jemand eine fertige Assemblerroutine oder eine C-Funktion um einen Modellbauservo anzusteuern? ich denke an etwas, dass einen wert von 0-255 bekommt und damit dann die verschiedenen positionen ansteuert. das ganze dann für 1 -2 Servos an einem PIC. Hat jemand sowas auf lager?
Hallo!

Weiß nicht, ob Dir damit gehofen ist, aber ich habe mit dem CControl-BASIC einen einfachen rechts-links-Lauf für einen gehackten (Anschlag entfernt) Modelbauservo einfach mit ein paar FOR-Schleifen realisiert. Genauer gehts mit dem CControl BASIC-Ibterpreter geschwindigkeitsbedingt eh nicht.

#vor
for z=1 to 200
port1=on
port1=off
next z
return

#rueck
for z=1 to 100
port1=on
for c=1 to 1
b=1
next c
port1=off
for c=1 to 1
b=1
next c
next z
return

OK - bei dem Listing sträuben sich wohl so manchem die Haare, war auch nur so auf die Schnelle eingehackt. aber es funktioniert. Die inneren FOR-Schleifen waren eigentlich zum genaueren Einstellen gedacht. Der "Vorlauf" ist beim CCBASIC schon so am Geschwindigkeitslimit, das innere Verzögerungsschleifen bereits die Impulse zu sehr verzögert hätten. Durch einen ähnlichen Aufbau in Assembler oder C und Experementieren mit den Durchlaufzahlen für innrere und äußere Schleife sollten schnell passable Werte herauszufinden sein. Durch ein (zugegebenermaßen primitives) Duplizieren und anpassen der Routinen lässt sich auch die Ansteueruzng mehrerer Servos realisieren. Die genaue Position wird dann ebenfalls durch Angleichen der Schleifendurchläufe erreicht.