sreuss
07.09.2009, 19:30
Hallole zusammen,
habe ein RN-Minicontroll Board und will damit später mal mehrere Servos ansteuern, jedoch habe ich schon bei einem Servo das Problem das wenn ich das Programm aus der Hilfe in meinen Controller einspiele das der Servo nur zweimal kurz, und immer in die gleiche Richtung zuckt.
Habe leider keinen mit dem gleichen Problem gefunden. Hoffe mir kann Trotzdem jemand helfen.
Vielen Dank schon mal
$regfile = "m168def.dat"
$crystal = 16000000 'Quarzfrequenz
$baud = 9600
$hwstack = 32
$framesize = 32
$swstack = 32
Dim Center As Integer
Dim Servopos As Integer
Dim Left As Integer
Dim Right As Integer
Left = 50
Right = 150
Center = 100
Servopos = Center
'Servo config
Config Servos = 1 , Servo1 = Portb.0 , Reload = 10
'as an option you can use TIMER1
'Config Servos = 2 , Servo1 = Portb.0 , Servo2 = Portb.1 , Reload = 10 , Timer = Timer1
'we use 2 servos with 10 uS resolution(steps)
'we must configure the port pins used to act as output
Config Portb = Output
'finally we must turn on the global interrupt
Enable Interrupts
'ende Servo config
Do
Print "Servo Test"
Wait 1
Servopos = Center
Servo(1) = Servopos
Wait 10
Servopos = Left
Servo(1) = Servopos
Wait 10
Print "Rechtsdrehung"
For Servopos = Left To Right Step 10
Servo(1) = Servopos
Wait 10
Next
Wait 10
Print "Linksdrehung"
For Servopos = Right To Left Step -10
Servo(1) = Servopos
Wait 10
Next
Wait 10
Print "Mitte"
Servopos = Center
Servo(1) = Servopos
Loop
habe ein RN-Minicontroll Board und will damit später mal mehrere Servos ansteuern, jedoch habe ich schon bei einem Servo das Problem das wenn ich das Programm aus der Hilfe in meinen Controller einspiele das der Servo nur zweimal kurz, und immer in die gleiche Richtung zuckt.
Habe leider keinen mit dem gleichen Problem gefunden. Hoffe mir kann Trotzdem jemand helfen.
Vielen Dank schon mal
$regfile = "m168def.dat"
$crystal = 16000000 'Quarzfrequenz
$baud = 9600
$hwstack = 32
$framesize = 32
$swstack = 32
Dim Center As Integer
Dim Servopos As Integer
Dim Left As Integer
Dim Right As Integer
Left = 50
Right = 150
Center = 100
Servopos = Center
'Servo config
Config Servos = 1 , Servo1 = Portb.0 , Reload = 10
'as an option you can use TIMER1
'Config Servos = 2 , Servo1 = Portb.0 , Servo2 = Portb.1 , Reload = 10 , Timer = Timer1
'we use 2 servos with 10 uS resolution(steps)
'we must configure the port pins used to act as output
Config Portb = Output
'finally we must turn on the global interrupt
Enable Interrupts
'ende Servo config
Do
Print "Servo Test"
Wait 1
Servopos = Center
Servo(1) = Servopos
Wait 10
Servopos = Left
Servo(1) = Servopos
Wait 10
Print "Rechtsdrehung"
For Servopos = Left To Right Step 10
Servo(1) = Servopos
Wait 10
Next
Wait 10
Print "Linksdrehung"
For Servopos = Right To Left Step -10
Servo(1) = Servopos
Wait 10
Next
Wait 10
Print "Mitte"
Servopos = Center
Servo(1) = Servopos
Loop