Ich glaube nicht das gleich zwei Servos den scheinbar selben Defekt haben.
Ich hatte mal für einen 8MHz-Mega32 einen funktionierenden Code ohne Interrupt in Bascom geschrieben:
Code:
'Servo steuern mit dem RP6 6.3.2008 mic'
$regfile = "m32def.dat"
$crystal = 8000000
$hwstack = 32
$swstack = 8
$framesize = 8
'Dims --------------------------------------------------------------------------'
Dim Servopos1 As Byte
Dim Servopos2 As Byte
Dim Temp As Integer
Dim Stellzeit As Integer
'Ports -------------------------------------------------------------------------'
Config Porta.0 = Output
Config Porta.1 = Output
'Variablen vorbelegen ----------------------------------------------------------'
' Mitte ist ~80
Servopos1 = 10
Servopos2 = 150
'Hauptprogramm -----------------------------------------------------------------'
Disable Interrupts
Do
For Stellzeit = 0 To 100
Set Porta.0
For Temp = 1 To Servopos1
Waitus 10
Next Temp
Reset Porta.0
Set Porta.1
For Temp = 1 To Servopos2
Waitus 10
Next
Reset Porta.1
For Temp = 1 To 500
Waitus 10
Next
Next Stellzeit
If Servopos1 = 10 Then Servopos1 = 150 Else Servopos1 = 10
If Servopos2 = 45 Then Servopos2 = 125 Else Servopos2 = 45
Loop
Aus https://www.roboternetz.de/phpBB2/ze...=357883#357883
Das Video dazu:
Bild hier
http://www.youtube.com/watch?v=lN_NalOYS_4
Lesezeichen