Hendrix85
12.12.2007, 15:03
Hallo alle zusammen,
habe hier schon einige Threads gelesen und finde das Forum echt klasse. Nun habe ich mir auch ein RN-Controller zugelegt und will versuchen den mit Bascom zu dressieren.
Ich versuche gerade ein Servo(Lexors Mini200) anzusteuern, was aber leider nicht ganz so klappt. Habe mich schon in Büchern und im Forum schlau gemacht und denke, dass ich theoretisch verstanden habe wie das geht. Dennoch macht das Ding nicht, was ich denke ihm gesagt zu haben.
Mit dem Servo-Befehl dreht er immer nur nach links bis zum Anschlag. Habe schon die Zeiten variiert aber das half nichts.
Darauf hin habe ich es über Timer1 wie folgt probiert:
6547200 Hz Controllerfrequenz und Prescale von 64. Damit komme ich mit meinen Berechnungen auf 50Hz PWM-Frequenz. Bei einer Auflösung von 10 Bit sollte man einen positiven Impuls von ca. 1,5 ms mit Compare=946 erzeugen können?
Damit dreht das Servo zwar nicht mehr auf Anschlag, sondern stellt sich auf eine def. Position ein, wenn ich nun aber den Compare-Wert variiere bleibt es trotzdem auf dieser Position.
Liegt der Fehler bei mir oder beim Servo?
$regfile = "m32def.dat"
$framesize = 32
$swstack = 32
$hwstack = 32
$crystal = 6547200
$baud = 9600
Config Portd.5 = Output
Config Timer1 = Pwm , Pwm = 10 , Compare A Pwm = Clear Down , Prescale = 64
Do
Compare1a = 946
Loop
End
habe hier schon einige Threads gelesen und finde das Forum echt klasse. Nun habe ich mir auch ein RN-Controller zugelegt und will versuchen den mit Bascom zu dressieren.
Ich versuche gerade ein Servo(Lexors Mini200) anzusteuern, was aber leider nicht ganz so klappt. Habe mich schon in Büchern und im Forum schlau gemacht und denke, dass ich theoretisch verstanden habe wie das geht. Dennoch macht das Ding nicht, was ich denke ihm gesagt zu haben.
Mit dem Servo-Befehl dreht er immer nur nach links bis zum Anschlag. Habe schon die Zeiten variiert aber das half nichts.
Darauf hin habe ich es über Timer1 wie folgt probiert:
6547200 Hz Controllerfrequenz und Prescale von 64. Damit komme ich mit meinen Berechnungen auf 50Hz PWM-Frequenz. Bei einer Auflösung von 10 Bit sollte man einen positiven Impuls von ca. 1,5 ms mit Compare=946 erzeugen können?
Damit dreht das Servo zwar nicht mehr auf Anschlag, sondern stellt sich auf eine def. Position ein, wenn ich nun aber den Compare-Wert variiere bleibt es trotzdem auf dieser Position.
Liegt der Fehler bei mir oder beim Servo?
$regfile = "m32def.dat"
$framesize = 32
$swstack = 32
$hwstack = 32
$crystal = 6547200
$baud = 9600
Config Portd.5 = Output
Config Timer1 = Pwm , Pwm = 10 , Compare A Pwm = Clear Down , Prescale = 64
Do
Compare1a = 946
Loop
End