"Input" scheint nur beim ersten mal richtig erkannt zu werden?!
Hi,
Eigentlich sollte mein Programm so funktionieren, dass ich bestimmte Zahlen sende und er entsprechend dem Code drauf reagiert.
Das Programm startet mit der Variable Modus=0.
Nur wenn es "-32766" empfängt, soll Modus=1 werden und alles was dann Empfangen wird in ein Array geschrieben werden, bis es "-32768" Empfängt.
Ich habe Ausgaben im Programm die mir anzeigen, wenn "-32766" korrekt empfangen wurde und wenn das geklappt hat soll es jedes Mal ausgeben, wenn es etwas anderes als "-32768" Empfängt.
Wenn ich nach dem Reset als erstes "-32766" sende, dann erkennt er das auch und zeigt mir das an. Egal, was ich dann sende, schreibt er mir raus, dass es <> "-32768" ist. Sollte ich nach dem Reset etwas anderes als "-32766" senden, erkennt er diese auch nicht mehr.
Kurzgesagt der erste Empfang klappt, alles andere wird danach nicht mehr erkannt. Kann mir einer sagen, wo der Fehler liegt?
Code:
Dim Empfangen As String * 8
Do
Input Empfangen
If Modus=1 Then 'array befüllen
If Empfangen<> "-32768" Then 'Befehl, das array fertig
print "anders als 68"
Incr Befehlsindex
Befehlsarray(Befehlsindex)=Val(Empfangen)
Else
Modus=2
i=0
while i< Befehlsindex
incr i
Print Befehlsarray(i)
Wend
End If
ElseIf Modus=2 Then
If Empfangen="-32767" Then 'Befehl, Programm starten
gosub run
End If
ElseIf Modus=0 Then
If Empfangen="-32766" Then 'Befehl, das array zu befüllen
Modus=1
Befehlsindex=0
print "66 erkannt"
End If
End If
Loop