-
Bascom Variable ändern
Hallo Bascomer,
ich bin dabei eine Messbereichsumschaltung zu proggen. Dabei soll der
Messbereich entweder per Taster (up, down) oder von einer Windows Anwendung änderbar sein. Wenn ich jedoch den A=inkey () einkommentiere funktioniert die Messbereichsänderung per Taster nicht mehr aber die Verstellung vom PC aus. Kommentiere ich den inkey aus funktionieren die Taster wieder wie gewünscht. Beides zusammen geht irgendwie nicht. Ich hoffe ihr habt eine Lösung parat....
Hier die relevanten Stellen des Code:
Do
'A = Inkey()
'-------------------------------------
'Messbereichsumschaltung per Taster
If Pinc.0 = 0 Then
Waitms 200
Incr A
End If
If Pinc.1 = 0 Then
Waitms 200
Decr A
End If
'--------------------------------------
'Begrenzung der Variable
If A > 53 Then
A = 53
End If
If A < 49 Then
A = 49
End If
If A >= 49 Then
'---------------------------------------
'Zuordnungen
If A = 49 Then
Lowerline
Lcd " 1V "
Portd.2 = 1
Portd.3 = 0
Portd.4 = 0
Portd.5 = 0
Portd.6 = 0
End If
If A = 50 Then
Lowerline
Lcd " 2V "
Portd.2 = 0
Portd.3 = 1
Portd.4 = 0
Portd.5 = 0
Portd.6 = 0
End If
If A = 51 Then
Lowerline
Lcd " 5V "
Portd.2 = 0
Portd.3 = 0
Portd.4 = 1
Portd.5 = 0
Portd.6 = 0
End If
If A = 52 Then
Lowerline
Lcd " 10V "
Portd.2 = 0
Portd.3 = 0
Portd.4 = 0
Portd.5 = 1
Portd.6 = 0
End If
If A = 53 Then
Lowerline
Lcd " 20V "
Portd.2 = 0
Portd.3 = 0
Portd.4 = 0
Portd.5 = 0
Portd.6 = 1
End If
End If
Loop
End
Wie man sieht versuche ich immer die Variable A zu ändern die als Byte def. ist.
Danke schon mal im vorraus
Neutro
-
Nun, wenn inkey() aktiv ist, wird jeder tastendruck sofort beim nächsten inkey() wieder überschrieben. Dadurch bewirken die Tasten dann nix.
Wie soll es denn sein ?
Immer, wenn der PC 1-5 schickt, soll das der neue Messbereich sein, den man mit den Tasten aber dann +- setzen kann (bis eben von PC wieder was kommt)
Ist das so ?
Dann:
Code:
DIM temp as BYTE
DO
temp = inkey()
if temp <> 0 then ' Ist was gesendet worden ?
A=temp ' ja (sonst bleibt A, wie es ist)
end if
---- der rest wie oben ----
-
Hallo PicNick,
erstmal danke für deine Antwort.
Die Funktion sol lfolgende sein, der Messbereich soll vom PC aus änderbar
sein aber auch von den Tasten.
Beispiel: Ich sende vom PC aus "messbereich 10V" dann soll der entsprechende Messbereich aktiviert werden. Verstelle ich nun den Messbereich per Tastendruck auf den 2V Messbereich so soll dieser dann aktiv sein, bis er wieder entweder per Tastendruck oder vom PC aus geändert wird.
Ich konnte deinen Code bisher noch nicht ausprobieren da ich jetzt gleich weg muss, werde mich dann aber morgen Vormittag auf jeden Fall wieder melden.
MfG
Neutro
-
So, da bin ich wieder.
Ich habe deinen Codeschnipsel in meinem Programm eingefügt, alles funktioniert jetzt so wie ich es vorgesehen hatte.
Vielen Dank für deine Hilfe PicNick!
MfG
Neutro