LabVIEWForum.de
Aus zweimal int16 mach int32, bloß wie? - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Aus zweimal int16 mach int32, bloß wie? (/Thread-Aus-zweimal-int16-mach-int32-bloss-wie)



Aus zweimal int16 mach int32, bloß wie? - herrhannes - 29.08.2012 17:26

Hallöchen,

ich stehe vor dem Problem, einen 32 Bit langen Integer via Bluetooth mit einem Protokoll zu versenden, das maximal 16Bit auf einmal unterstützt.
Da habe ich mir so geholfen, dass ich diesen auf dem Mikrocontroller mit C in zwei Hälften zerlege.
In Labview wird das Ganze dann als Array empfangen.
Nun meine Frage: Wie zum Teufel bastele ich das nun in LV wieder zusammen? Im Grund ist es ja eine Art Stringaddition, wo die beiden Elemente des Array einfach hintereinander geklebt werden. Nur: Wie klebe ich sie aneinander?

Gruß
Hannes


RE: Aus zweimal int16 mach int32, bloß wie? - Lucki - 29.08.2012 17:41

Am einfachsten mit der Funktion "Typumwandlung":
[attachment=41340]
Edit: Die ankommenden Werte sollte besser als "U16" behandelt werden.


RE: Aus zweimal int16 mach int32, bloß wie? - GerdW - 29.08.2012 19:45

Hallo,

wem TypCasts hier nicht "durchsichtig" genug sind, kann ja auch die "Grundfunktion dafür nehmen: JoinNumbers...


RE: Aus zweimal int16 mach int32, bloß wie? - herrhannes - 30.08.2012 10:28

Vielen Dank euch beiden.
Einen Weg, 24Bit daraus zu machen, gibt es aber nicht?
Wobei das im Grunde auch nicht so wichtig sein sollte, bei einer negativen Zahl ist der Rest ja einfach mit 1en aufgefüllt, bei einer positiven mit 0en.
Sehe ich das richtig?


RE: Aus zweimal int16 mach int32, bloß wie? - GerdW - 30.08.2012 11:35

Hallo Hannes,

wenn du einen Datentyp nennen kannst, der exakt 24bit breit ist, nenne ich dir einen Weg, den zu erzeugen Smile


RE: Aus zweimal int16 mach int32, bloß wie? - Lucki - 30.08.2012 13:21

Aber im Ernst: LV verwendet, wie praktisch alles anderen Programrmiersprachen auch, die nach IEEE genormten Zahlentypen. Ein Typ "U24", "I24" ist da nicht mit dabei.
Von der Norm abweichende Zahlentypen kommem haupsächlich bei der Datenerfassung mit AD-Wandlern vor. Bei bipolaren Typen ist das Zahlenformat entweder im Zweierkomplement oder als Offset, mit beliebigen Bitlängen entprechend der Präzision des Wandlers.

Die Aufgabe ist dann, diese Werte in ein genormtes Format zu konvertieren - das wurde hier schon oft behandelt.

Das Umgekehrte wäre hingegen sinnlos: eine Zahl zur Weiterverarbeitung in LV erst mal in ein von LV nicht verwendbares Format zu konvertieren. Warum fragst Du das überhaupt?