[英]Converting the type casted array received from Labview program into float array using php
LabVIEW幫助Type Cast將您指向扁平化數據的文檔,其中提到該表示形式為big-endian(最高有效字節在前)。 LabVIEW如何在內存中存儲數據的條目顯示了單精度浮點數( SGL
)的實際表示形式:
既然您知道了LabVIEW將發送的內容,那么您的問題就變成了如何在PHP中對其進行解碼-如果您自己無法解決此問題,建議您提出一個新問題。
如果您可以更改LabVIEW代碼,則可以更改數據發送的格式,以使其更易於在另一端解碼。 可能的選項可能包括:
DBL
,然后在LabVIEW端將字符串的字節重新排序為little-endian。 從Ton Plomp的評論來看,這對於您當前的PHP代碼可能是正確的。 U32
或I32
); 同樣,在另一端可能更容易解碼。 請注意,盡管您記錄了從類型轉換和/或展開到字符串的數據格式,並且歷史上一直保持穩定,但我不保證絕對不會在LabVIEW版本之間進行更改。
數據的不可讀部分也可以是UDP函數添加的標頭信息。 您也許可以解析該數據並丟棄。
要嘗試的另一件事是在Labview中讀取UDP Rx數據,並與Tx數據進行比較以嘗試確定正在發生的情況。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.