Wie kann man Hex Werte 1:1 in DEZ Werte konvertieren?
Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Wie kann man Hex Werte 1:1 in DEZ Werte konvertieren?
Guten Tag an alle Forums Mitglieder,
dies ist mein erster Post.
Zum Thema. Ich lese über eine RS-232 Verbindung hex Werte ein und möchte diese, z.B. den Temperaturwert, grafisch darstellen. Nun hab ich das Problem das ich den Temperaturwert als hex Wert bekomme (z.B. 0x54) und bei diesem dann noch 0x30 abziehen muss um auf die eigentlichen Temperatur(0x24 = 24°C) zu kommen.
Meine Frage ist. Kennt jemand einen Weg die hex Werte 1:1 in dez Werte zu übersetzten?
Ich weiß das hier im Forum schon sehr viele Einträge zum Thema HEX -> DEZ etc. stehen. Habe viele dazu gelesen aber eben nichts gefunden womit man eine 1 zu 1 Konvertierung durch führen kann.
Wie kann man Hex Werte 1:1 in DEZ Werte konvertieren?
Ich kenn das Problem so, dass mancher einen Wert, bspw. Umgebungsdruck, bekommt und erstmal nicht weiß, was damit zu machen ist. Also aufs Messgerät gucken und sich einen Offset ausrechnen und voila, schon passts.
Wie kann man Hex Werte 1:1 in DEZ Werte konvertieren?
lustige Konvertierungen gibt es immer mal wieder (was macht man nur mit den Nachkommastellen und Werten oberhalb 99 und kleiner 0)
@schrotti: eine Möglichkeit für Interpretation von 25
@warantor: noch mal genau überprüfen was hier wie skaliert wird, da seeeeeehr unüblich
1Postingempfehlungen, 2Motivation Fragen und Anpassungswünsche per PM werden, gegen Rechnungsstellung gerne beantwortet und realisiert ....wenn's dann doch kostenlos sein soll... bitte hier im LVF unter Berücksichtigung der voranstehenden Links posten.
Wie kann man Hex Werte 1:1 in DEZ Werte konvertieren?
Erstmal danke für die vielen, so schnellen, Antworten. Werd mich gleich ans lesen machen.
Hier noch ein etwas mehr Informationen zum Thema:
Ich will für ein Uni-Projekt die Daten einer Wetterstation auslesen. Wie man diese Wetterstation ausließt hab ich schon raus bekommen. Das Problem ist nur das die Hertseller von dem Ding nicht ganz konform mit der RS-232 Schnittstelle umgehen.
Um einen bestimmten Wert auszulesen muss man der Wetterstation den jeweiligen Speicheradresse senden. Die Station antworten dann mit dem Inhalt dieser.
Beispiel Antwort der Wetterstation speziell für den Temperaturwert:
33 30 70 53 00 [hex] für 23,7°C
33 & 30 sind irrelevant.
70 ist die Nachkommastelle
54 ist der Temperaturwert minus 0x30
33 30 70 49 00 [hex] für 19,7°C
33 & 30 sind wieder irrelevant
70 wieder Nachkommastelle
49 minus 0x30 wieder Temperatur
Ich muss mir also meinen Temperaturwert zusammen bauen und dann erst dartsellen.
ImExPorty: Nachkomma ist erklärt. Was bei Minusgraden passiert weiß ich auch noch nicht. Vermutlich braucht man dann eines der unnützten Bytes und negiert den Wert einfach.
Wie kann man Hex Werte 1:1 in DEZ Werte konvertieren?
Wenn Deine Beispiele stimmen, dann ist Deine dazugehörige Erklärung ganz falsch. Die zweistelligen Teilstrings in Deinem String sind Dezimalzahl-Stücke, die einfach wieder richtig zusammengesetzt und skaliert werden müssen:
Zitat:33 30 70 49 00 [hex] für 19,7°C
Nicht ist daran Hex!
Man muß aus obigem String einfach den Dezimalstringl 004970 machen, skaliert und mit Offset ergibt das dann 19.7°
Edit: Schrotti hat das ja schon richtig erkannt, Entschuldigung, das hatte ich übersehen.
Wie kann man Hex Werte 1:1 in DEZ Werte konvertieren?
So, habs geschaft mir eure Beispiele und erklärungen genauer anzu sehen. Vielen dank, war sehr interessant.
@ImExPorty: Einfach genial dein kleines Programm! So wurde HEX glaube ich noch nie interpretiert.
@Lucki: Da hab ich was falsch erklärt. Der Temperaturwert sieht natürlich normaler Weise ASCII kodiert aus. Um die Werte in HEX zu sehen hab ich die anzeige bei mir auf HEX umgestellt. Da ich nur so die Werte interpretieren kann. Müssten also als normale ASCII Zeichen vorliegen. Die 0x54 war glaube ich das "T".
Ich denke nicht das diese einfach als dezimal interpretiert werden können. Werde heute nicht mehr dazu kommen das nochmal ausgiebig zu teste. Werd mich morgen wieder rann setzen.
Vielen Dank für eure Hilfe, als Neuling in LabVIEW ist es nicht leicht den ganzen Funktionsumfang zu überblicken.
18.06.2009, 13:52 (Dieser Beitrag wurde zuletzt bearbeitet: 18.06.2009 17:49 von Lucki.)
Wie kann man Hex Werte 1:1 in DEZ Werte konvertieren?
' schrieb:@Lucki: Da hab ich was falsch erklärt. Der Temperaturwert sieht natürlich normaler Weise ASCII kodiert aus. Um die Werte in HEX zu sehen hab ich die anzeige bei mir auf HEX umgestellt. Da ich nur so die Werte interpretieren kann. Müssten also als normale ASCII Zeichen vorliegen. Die 0x54 war glaube ich das "T".
Dan poste doch mal original Beispieldaten, aber nicht als Schreibtext, sondern als Werte von Textanzeigen oder Textkonstanten in einem VI (Vor dem Speichern - außer bei Konstanten - zu Standardwerten machen, damit beim Abspeichern nichts verloren geht. Anzeigeformat, hex oder nicht, ist ganz egal) Dann schreibe dazu, was herauskommen muß. Und ganz wichtig: Keinerlei irremachenden Kommentar dazutun