-         

Ergebnis 1 bis 4 von 4

Thema: Bascom Variable ändern

  1. #1
    Erfahrener Benutzer Roboter Experte Avatar von Neutro
    Registriert seit
    28.10.2007
    Ort
    Ostfriesland
    Alter
    38
    Beiträge
    642

    Bascom Variable ändern

    Anzeige

    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
    Jemand mit einer neuen Idee ist ein Spinner, bis er Erfolg hat.
    (Mark Twain)

  2. #2
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    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 ----
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  3. #3
    Erfahrener Benutzer Roboter Experte Avatar von Neutro
    Registriert seit
    28.10.2007
    Ort
    Ostfriesland
    Alter
    38
    Beiträge
    642
    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
    Jemand mit einer neuen Idee ist ein Spinner, bis er Erfolg hat.
    (Mark Twain)

  4. #4
    Erfahrener Benutzer Roboter Experte Avatar von Neutro
    Registriert seit
    28.10.2007
    Ort
    Ostfriesland
    Alter
    38
    Beiträge
    642
    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
    Jemand mit einer neuen Idee ist ein Spinner, bis er Erfolg hat.
    (Mark Twain)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •