Hallo zusammen wollte über einen casebefehl einen sevo steuern aber irgendwie funktioniert das nicht richtig, weil er sich nicht bewegt (nur in die startposition). $regfile = "m8def.dat" $crystal = 1000000 $baud = 2400 Config Portc.0 = Output Config Portd = Input Config Servos = 1 , Servo1 = Portc.0 , Reload = 10 Enable Interrupts Dim Winkel As Byte Winkel = 15 Servo(1) = Winkel Dim Empfangen As String * 255 Do Empfangen = " " Input Empfangen Select Case Empfangen Case "0" Winkel = 22 Case "1" Winkel = 18 End Select Loop End kann mir bitte einer helfen ? danke
In Deiner Do-Loop Schleife wird kein einziger Steuerbefehl an das Servo ausgegeben. Es werden nur die Eingaben ausgewertet (Case) und die Werte 18 oder 22 an die Variable Winkel zugewiesen. Du musst noch "Servo(1) = Winkel" nach der der Zuweisung der Werte an die Variable einfügen sonst weiß die Funktion Servo(n) = wert ja nicht dass Du was geändert hast.
Stringvergleiche sind so ziemlich die schlechteste Variante ... aber was solls ... wo wird denn Dein Servo neu gesetzt in der Mainloop??
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.