String in Hexadezimal
Verfasst: 24.10.2007 12:50
Hi Leute,
ich hab mal wieder ein Problem!
Ich muss einen Comport auslesen und habe dies anhand dieses Codes geschafft.
Die Daten, die ich ausgelesen bekomme werden in einem langen String ausgegeben (□FFEM0BD9060DC3581195C9077D□).
Aufgeschlüsselt
"FF" Seriennr. des Lesegerät
"EM" Weiß ich nicht
"0BD9060DC3" ID des Transponders
"5811" Uhrzeit (11:58 )
"95" Zutritt ok / Tag (95 = 10 01 0101) >> 10 = Zutritt ok / 01 0101 = 15
"C9" Anzahl der Tp's / Monat (C9 = 110 0 1001) >> 110 = Anzahlt der Tp's / 0 1001 = 9
"07" Jahr (2007)
"7D" CRC (PrüfBit)
Nun habe ich eine Möglichkeit gefunden, einzelne Segmente daraus zu entnehmen (Mid-Befehl).
Diese einzelnen Segmente möchte ich in Duale, Dezimale bzw. Hexadezimale Zahlen umwandeln.
Gibt es einen Befehl der mir dies ermöglicht ??
Oder habt ihr eine Idee wie klappen könnte ??
Ich danke Euch im Vorraus für Eure Hilfe!!!
ich hab mal wieder ein Problem!
Ich muss einen Comport auslesen und habe dies anhand dieses Codes geschafft.
Code: Alles auswählen
Dim Daten.w (1000)
MyCom.s = "Com1: baud=57600 parity=N data=8 stop=1"
HCom.l
HCom = ComOpen(MyCom,0,10000,10000)
If HCom
Delay (5000)
Stringlaenge.l = ComInputBufferCount(Hcom)
Ausgabe.s = Space(Stringlaenge)
If ComRead(Hcom,@Ausgabe,Stringlaenge)
Ausgabe1.s = ReplaceString(Ausgabe, "□","")
Ausgabe1.s = ReplaceString(Ausgabe1, "□","")
Ausgabe1.s = ReplaceString(Ausgabe1, "FFEM","")
Tid.s=Mid(Ausgabe1,1,10)
min.s=Mid(Ausgabe1,11,2)
std.s=Mid(Ausgabe1,13,2)
jahr.s=Mid(Ausgabe1,20,1)
;;;;;;Hier kommt noch die Ausgabe hin;;;;;
EndIf
; EndIf
Else
MessageRequester("SerTest","Can't open the Com port", #MB_ICONERROR)
End
EndIf
ComClose(hcom)
Aufgeschlüsselt
"FF" Seriennr. des Lesegerät
"EM" Weiß ich nicht
"0BD9060DC3" ID des Transponders
"5811" Uhrzeit (11:58 )
"95" Zutritt ok / Tag (95 = 10 01 0101) >> 10 = Zutritt ok / 01 0101 = 15
"C9" Anzahl der Tp's / Monat (C9 = 110 0 1001) >> 110 = Anzahlt der Tp's / 0 1001 = 9
"07" Jahr (2007)
"7D" CRC (PrüfBit)
Nun habe ich eine Möglichkeit gefunden, einzelne Segmente daraus zu entnehmen (Mid-Befehl).
Diese einzelnen Segmente möchte ich in Duale, Dezimale bzw. Hexadezimale Zahlen umwandeln.
Gibt es einen Befehl der mir dies ermöglicht ??
Oder habt ihr eine Idee wie klappen könnte ??
Ich danke Euch im Vorraus für Eure Hilfe!!!