LabVIEWForum.de - speichern von hexadezimalen Befehlen verschiedener Länge in 2D Array

LabVIEWForum.de

Normale Version: speichern von hexadezimalen Befehlen verschiedener Länge in 2D Array
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo LabViewforum,

Ich habe folgendes Problem: Ich möchte Befehle für einen Sensor in hexadezimalen Zahlen in einem 2D A speichern und übergeben. Pro Zeile des Arrays soll ein Befehl gespeichert werden. Ein Befehl kann aus drei oder vier Bytes bestehen. Jedes Byte eines Befehls wird in einer extra Spalte gespeichert. Mein Problem ist nun das LabVIEW bei den Befehlen mit 3 Byte in das 4 Byte eine 0 ergänzt und nicht unbelegt lässt. Das bringt den Sensor aber durcheinander weil er einen 3 Byte Befehl erwartet und keinen 4 Byte Befehl. Ich kann die nullen aber auch nicht grundsätzlich herausschneiden da bei dem 4 Byte Befehl im 4 Byte unter umständen eine 0 stehen kann.

Im angehängten Bild ist diese Problematik noch einmal veranschaulicht.
Kann ich dieses Problem mit einem numerischen Datentyp lösen oder muss ich auf Strings ausweichen, was ich aber auf Hinblick des restlichen Programms nur ungerne tun würde, was würdet ihr machen?

Viele Grüße mrstrom
[attachment=33605][attachment=33605]
Die Lösung ist z.B:
Verwende statt des Formates "2D-Array" das Format
"1D-Array of [Clusters of 1D Array]".
[attachment=33606]
Ja, danke für die Idee, es funktioniert soweit auch schon ganz gut. Ein Problem bleibt aber noch:
Ich habe mein Cluster nun mit 10 Arrays definiert, da maximal eine Befehlsfolge von 10 Befehlen vorkommen kann.
Übergebe ich nun eine Befehlsfolge mit z.B 8 befehlen funktioniert alles. Möchte ich danach nochmal eine andere Befehlsfolge mit weniger Befehlen übergeben, bleiben die nicht überschriebenen Befehle erhalten. Nun kann ich ja die Arrays nicht vor dem Schreiben komplett mit nullen initialisieren, da sonst wieder das Anfangsproblem (Mein erster Beitrag) auftritt. Kann ich vor dem Schreiben mein Cluster über Eigenschaftsknoten so initialisieren das in keinem Array des Clusters wirklich nichts drinsteht auch keine 0?

Vielleicht habt ih ja noch eine schlaue Antwort parat.

mrstrom
Die Null ist ein Wert wie jeder andere, damit sollte man nicht initialisieren. Initialisieren mit
Array of [Cluster of [leeres Array of U8-Elementen]]

[attachment=33619]
Vielen Dank es läuft!!
Gut, dass es das LV Forum gibt
Referenz-URLs