Es geht doch nur um das Übertragen von Werten, oder ?was macht dich denn so sicher, dass die der anfangsbuchstabe nicht im rest des strings vorkommt?
Naja, wenn ich Dezimalzahlen als string sende, kommt doch logischerweise kein Buchstabe vor
Wie gesagt, Hex geht auch, im Beispiel ist das Startzeichen das "H"
Das kommt nun mal nicht in den Hex Zahlen vor .
Es gibt ja nur 0-F, dann ist Schluss.
Man kann das "H" dann als Startbedingung nehmen und den restlichen String mit hexval wieder zurückwandeln
Dim S As String * 5
Dim O As Word
Dim I As Word
'******* Hin *******
O = 535
S = Hex(o)
S = "H" + S 's = "H0127"
'******* Zurück ********
s = Right(s , 4)
I = Hexval(s) 'I=535
Wenn Du zB. 4 Werte übertragen willst, geht das naürlich auch so.
Mußt dann halt noch ein Zeichen mehr übertragen, zB. so:
"HA23DA"
"HB0342"
"HC677C"
"HDF02A"
und dann die Adresse mit "MID"rausfummeln
Adresse = Mid(s,2,1)
Da gehen als Adresse dann alle Zeichen, bis auf'"H", logischerweise.
Du kannst die Strings natürlich auch aneinanderhängen und jeweils mit Mid
rausziehen.
"H23DA0342677CF02A"
Ist kein "supertolles Protokoll mit allem Schnickschnack",
funzt aber wunderbar und ist einfach.
Viele Digitalmultimeter etc. mit RS232 senden ihre Werte zB. auch einfach als Text an die zugehörige Software.
Gruß
Christopher
Lesezeichen