LabVIEWForum.de - 0 Bytes at Port

LabVIEWForum.de

Normale Version: 0 Bytes at Port
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
' schrieb:es funktioniert, ich musste lediglich ein f hinter den befehl anfügen.

die zeichen, die ich empfange sind mehr als kauderwelsch.
in der anleitung steht z.B, wenn man den befehl GAC eingibt dann, ich zitiere:

Antwort: 256 equidistant ACF-values as a row of 512 Byte with the following struckture:

1.Byte
00 ...FF
high byte of 1. ACF value
2. Byte
00...C0
low byte of 1. ACF value
(only bit 7 and 6 significant)
.
.
.
511. Byte
00..FF
high byte of 256. ACF value
512. Byte
low byte of 256. ACF value
(only bit 7 and 6 significant)

Um die ACF Daten zu bekommen, müsste es dann reichen, jedes 2. byte in z.B ein cluster zu schreiben, und danach mittels hex-->num konverter den wert extrahieren?
danke und grüße

Hmm, was ist denn f schon wieder für ein Steuercharacter? Aha 0x0C, ist mir noch nicht oft untergekommen. Scheint echt ein binäres Protokoll zu sein.

Hex To Num hilft Dir beim Resultat gar nix! Dein Instrument scheint binäre Zahlen zu schicken. Am besten verwendest Du die Typecast Funktion um den String in ein Array von 16 bit signed oder unsigned Integers umzuwandeln (und da Deine Daten in Big Endian Format sind macht Typecast genau das Richtige). Danach musst die jeden Integer noch um 6 Bits nach rechts schieben. Das kannst Du mit der Logical Shift Funktion tun oder aber eine Division mit (2^6 = 64) durchführen. Erstere behält Dir den Integer Character und ist das Einfachste und Schnellste wenn die Resultate ohne Vorzeichen sind.

Rolf Kalbermatter
deleted
Seiten: 1 2
Referenz-URLs