INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Problem Hexadezimal zu Dezimal Wandlung



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!

29.07.2015, 09:03
Beitrag #1

Fraser-Island Offline
LVF-Grünschnabel
*


Beiträge: 16
Registriert seit: Feb 2015

8.2
2015
DE



Problem Hexadezimal zu Dezimal Wandlung
Hallo Forengemeinde,

ich habe mir ein VI gebastelt, das es erlaubt das Messgerät welches an meinem Seriellen Port hängt auszuwerten.

Ich habe dazu das Beispiel VI von NI genommen und erweitert.
Das Gerät antwortet mit 3 Byte in der Form: low-middle-high. Ich drehe /spiegle nun den Hex string, damit ich diesen auswerten kann.
(Gerät: 3C A4 00 ergibt den richtigen Entfernungswert:00 A4 3C)

Ich möchte nun gern diese Hexadezimale Zahl in eine Dezimalzahl umwandeln, dies klappt bei mir leider nicht und das Ergebnis ist immer =0.
Wenn ich die hex Zahl allerdings manuell in den Programmteil eintippe stimmt die Zahl. Siehe VI: hex_to_dez (auch aus diesem Forum) Eine andere, simple Wandlungsmethode aus dem Forum habe ich nicht gefunden.

Würde mich sehr freue, wenn Ihr mir auf die Sprünge helfen könntet.
Vielen dank


Angehängte Datei(en) Thumbnail(s)
   

8.2 .vi  Laser01.1.vi (Größe: 43,85 KB / Downloads: 214)

8.2 .vi  Hex_to_dez.vi (Größe: 5,59 KB / Downloads: 249)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.07.2015, 09:16 (Dieser Beitrag wurde zuletzt bearbeitet: 29.07.2015 09:23 von GerdW.)
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.467
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Problem Hexadezimal zu Dezimal Wandlung
Hallo Fraser,

wenn du mit Bytes arbeiten willst, dann solltest du das auch tun - und nicht wieder nach String zurückwandeln!

Zwei Methoden:
   

Zitat:Ich drehe /spiegle nun den Hex string, damit ich diesen auswerten kann.
Und das auch ziemlich umständlich. Warum holst du dir mit (einem!) IndexArray nicht einfach deine 3 Bytes aus dem Bytearray?

Zum Laser-VI:
- Baust du bei jeder Abfrage erneut eine VISA-Verbindung auf? Jedesmal?
- Warum BytesAtPort, wenn du mit TermChar arbeitest? Warum nicht einfach eine feste Anzahl Bytes abfragen?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.07.2015, 09:37
Beitrag #3

Fraser-Island Offline
LVF-Grünschnabel
*


Beiträge: 16
Registriert seit: Feb 2015

8.2
2015
DE



RE: Problem Hexadezimal zu Dezimal Wandlung
Hallo Gerd,

danke für deine schnelle Hilfe. Wenn ich die obere, deiner Variante benutze, wie kann ich dann das Datenformat String einbetten? Der VISA read Baustein liefert ja ein string Output

Zum Drehen der Hex Zeichenkette habe ich gar keine Ahnung wie ich anders vorgehen könnte, könntest du mir das bitte nochmal kurz erklären?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.07.2015, 09:45
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.467
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Problem Hexadezimal zu Dezimal Wandlung
Hallo Fraser,

Zitat:Wenn ich die obere, deiner Variante benutze, wie kann ich dann das Datenformat String einbetten? Der VISA read Baustein liefert ja ein string Output
Wo brauchst du da einen String?
Ein String ist im Grunde nur ein "1D-Array of U8" (zumindest für LabVIEW), und in deinem Laser-VI wandelst du doch diesen String selbst schon in ein U8-Array um…

Zitat:Zum Drehen der Hex Zeichenkette habe ich gar keine Ahnung wie ich anders vorgehen könnte, könntest du mir das bitte nochmal kurz erklären?
Beispiele:
   
Die Variante mit dem IndexArray funktioniert mit beliebigen Bytearrays (Bytes an beliebiger Position im Array), die Variante mit dem ReverseArray nur, wenn dein Array exakt die 3 Bytes enthält…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.07.2015, 10:24
Beitrag #5

Fraser-Island Offline
LVF-Grünschnabel
*


Beiträge: 16
Registriert seit: Feb 2015

8.2
2015
DE



RE: Problem Hexadezimal zu Dezimal Wandlung
Wenn ich das VI entsprechend deinen Tipps anpasse und nicht von string in U8 und zurück in string konvertiere Wink danke dafür!! wo kann ich dann meine Länge oder meinen Hexadezimalcode auslesen? Der Wert aus dem array ändert sich je nach Ordnung (0, 1, 2)
bei z.B.: EA FA 00 ( ist 00 FA EA und entspricht 64234) das array ist bei 0=0, 1=250, 2=234


Angehängte Datei(en)
8.2 .vi  Laser_gerd.vi (Größe: 40,51 KB / Downloads: 176)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.07.2015, 10:27
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 17.467
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Problem Hexadezimal zu Dezimal Wandlung
Hallo Fraser,

Zitat:wo kann ich dann meine Länge oder meinen Hexadezimalcode auslesen?
Die Hex-Werte kannst du direkt auslesen, wenn du die Anzeige im "Bytes umgedreht"-Array auf Hexadezimal einstellst.
Um die Länge daraus zu erhalten, solltest du einfach den Tipp aus Beitrag #2 umsetzen…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
29.07.2015, 10:34
Beitrag #7

Fraser-Island Offline
LVF-Grünschnabel
*


Beiträge: 16
Registriert seit: Feb 2015

8.2
2015
DE



RE: Problem Hexadezimal zu Dezimal Wandlung
ich habs 2hands

Danke für deine Hilfe und Geduld!


Angehängte Datei(en)
8.2 .vi  seriell_hex-dez.vi (Größe: 40,66 KB / Downloads: 212)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Dezimal-String nach Zahl Funktion ares2013 4 5.041 10.04.2019 13:12
Letzter Beitrag: jg
  Name Referenz von Hex in Dezimal voellig_egal 9 5.857 21.06.2018 14:31
Letzter Beitrag: voellig_egal
  String zu Dezimal (1, 2 und 4 Byte) unsigned + Integer hansi9990 9 7.094 16.07.2015 14:25
Letzter Beitrag: hansi9990
  HEX-String in Dezimal umwandeln sumsi 18 19.453 16.04.2015 12:13
Letzter Beitrag: jg
  Umwandlung Hex in Dezimal Holg 5 11.055 04.12.2013 13:18
Letzter Beitrag: Holg
  Umrechnung hexadezimal im 2er Kompliment nach dezimal 1johleh 12 14.717 31.05.2012 12:34
Letzter Beitrag: Lucki

Gehe zu: