-
        

Ergebnis 1 bis 4 von 4

Thema: UART + HEX zerlegen

  1. #1
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    10.03.2005
    Ort
    Schifferstadt
    Alter
    35
    Beiträge
    318

    UART + HEX zerlegen

    Anzeige

    Hallo zusammen,

    ich bekomme über die serielle Schnittstelle folgende Daten ( in HEX ):

    BE 00 00 03 FF FF FF BE 00 00 03 FF FF FF BE 00 00 03 FF FF FF BE 00 00 03 FF FF FF BE 00 00 03 FF FF FF BE 00 00 03 FF FF FF BE 00 00 03 FF FF FF BE 00 00 03 FF FF FF BE 00 00 03 FF FF FF BE 00 00 03 FF FF FF BE 00 00 03 FF FF FF BE 00 00 03 FF FF FF BE 00 00 03 FF FF FF BE 00 00 03 FF FF FF

    Mittels inputbin kann ich diese Daten auch einlesen. Ich muss diese Daten aber jetzt in ein Array bringen. Also Array(1) muss BE sein. Array(2) 00 usw. Ich kann zwar herausfinden, wann BE gesendet wird, weiß aber nicht wie ich das synchronisieren soll.

    Folgenden Code benutze ich:

    Code:
    $regfile = "m168def.dat"
    $crystal = 8000000
    $baud = 300
    
    
    On Urxc Onrxd
    Enable Urxc
    Enable Interrupts
    
    
    Dim Inputstring As Byte
    Dim Startbyte As Byte
    
    
    
    Main:
    nop
    Goto Main
    
    
    
    Onrxd:
    
    Inputbin Inputstring
    
    If Inputstring = &HBE Then
      Startbyte = 1
    End If
    
    Return
    Das Startbyte wird auch korrekt gesetzt. Nur wie bekomme ich jetzt die restlichen Hex werte in ein Array ?

    Gruß BlaueLed

  2. #2
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    Nun, das Array muss es erstmal geben (+index), z.B
    DIM MyArr(16) as byte
    DIM ArrIdx as byte
    Code:
    Onrxd: 
         Inputbin Inputstring 
         If Inputstring = &HBE Then 
             Startbyte = 1 
             ArrIdx     = 0
        End If 
        incr ArrIdx
        MyArr(ArrIdx) = Inputstring
    Return
    Nur ein Muster, denn im Detail kommt's jetzt drauf an, was denn so insgesamt geschehen soll.
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    01.10.2009
    Beiträge
    437
    Der Hexstring wird wahrscheinlich mit einem CR enden, dann könntest Du diese Lösung verwenden:

    http://www.mcselec.com/index2.php?op...ewtopic&t=8191

  4. #4
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    10.03.2005
    Ort
    Schifferstadt
    Alter
    35
    Beiträge
    318
    Hi,

    danke PicNick. Dein Code funktioniert einwandfrei.

    Gruß BlaueLed

Berechtigungen

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