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
Lesezeichen