Es hat offenbar was mit den VariablenDefinitionen.
Zeig' doch mal dein ganzes Programm her.
sonst könnt ich mir vorstellen, dass er hier
Servo(servon ) = Newservo
ein byte erwartet
DIM NEWSERVO AS BYTE
Für die Werte bis 150 reicht das auch allemal
ich hab ein problem bei einer funktion, die die werte der servosteuerung von 0-60(30 is mitte) in die servowerte 50-150 umrechnen soll und dann die Servos ansteuern soll. hier die funktion:
die fehlermeldung lautet:Code:Function Setservo(byval Servon As Integer , Byval Posservo As Integer) As Integer Newservo1 = 60 - Posservo Newservo = 130 - Newservo1 Servo(servon ) = Newservo End Function
Invalid datatype[[0011] 0], in File: ...
ich weiß nicht, was ich falsch mache.
mfg roboman
...and always remember...
...AVR RULES...
Es hat offenbar was mit den VariablenDefinitionen.
Zeig' doch mal dein ganzes Programm her.
sonst könnt ich mir vorstellen, dass er hier
Servo(servon ) = Newservo
ein byte erwartet
DIM NEWSERVO AS BYTE
Für die Werte bis 150 reicht das auch allemal
mfg robert
Wer glaubt zu wissen, muß wissen, er glaubt.
nein, dass ist es auch nicht. ich habs mit byte probiert, aber geht nicht.
mfg roboman
...and always remember...
...AVR RULES...
probier erst mal mit einer testsequenz ob sich das servo überhaupt dreht
und natürlich mit bytevariablen
dim servopos as byte
for servopos= 50 to 150 step 5
servo(2)=servopos
waitms 100
next servopos
wenn sichs dreht dann kanste weiter fummeln
Ev. auch mal den Index ("servon") als Byte definieren.
Du solltes wirklich mal deine Definitionen herzeigen. Schliesslich spielt ja dort die Musik
mfg robert
Wer glaubt zu wissen, muß wissen, er glaubt.
Lesezeichen