NI產品與技術 討論區

取消
顯示結果 
搜尋替代 
您的意思是: 

混合訊號擷取

已解決!
前往解決方案

首先要釐清的是您的Fx都是出現在每組16bits的後8bits嗎?(如下圖)

(V)2656 26FE         (X)2656 FE26

                  ^ ^                        ^ ^

如果規則是像上面說的一樣,假設您是將所有的訊號擷取完後再分析

,您可以利用我之前提供的程式, 而判別的方式請利用附檔的圖片說

明,希望能解決您的提問。

0 積分
11 條訊息(共 17 條)
3,900 檢視

謝謝您

我那個儀器傳送的字串很奇怪

真的無法理解它傳送資料的方式

我會先了解確認完他傳送方式再看如何著手

感謝您

0 積分
12 條訊息(共 17 條)
3,884 檢視

想在請教一下前輩們

如果我的字串如下

2656 1676 A6D6 2666 2656 16D6 A686 2656 26FE 9A80 9C9A 9582 9882 9C80 959A 9682 9D82 9881 959A 9C82 9B82 9581 999A 9D82 9682 9581 9D9A 9882 9582 9D81 9C9A 9482 9882 9D81 969A 9582 9D82 9981 949A 9A82 9C83 9581 979A 9D82 9682 9581 9D9A 9982 9582 9A81 9C9A 9582 9782 9C82 969A 9582 9C82 9A82 959A 9A82 9C82 9582 979A 9D82

 

假設我收到FX時 後面的資料才陸續丟入陣列

EX:FE 9A80 9C9A 9582 9882 9C80 959A

array     0  1    2  3    4  5  6  7   0   1   2  3 

 

收到字串為240以上再開始把字串放入陣列

 

 我程式比較判斷程式要放在哪裡?可以幫我試試嗎?

          

0 積分
13 條訊息(共 17 條)
3,809 檢視

您好,

 

有關於您的問題,  您只需在把U8 Array 轉為 X,Y,Z array 之前, 用一個迴圈寫一個比較的程式來判斷 FE 的index

 

在得到FE 的 index 後把此值加一(加一的原因是因為不希望新陣列的值包含FE), 就可以用 Array Subset這個function 來得到從 FE 之後的陣列值

 

我用HowardLin 的範例修改, 並且附上程式的圖檔

 

希望這些解釋能對您有幫助

 

NITWAE

14 條訊息(共 17 條)
3,779 檢視

ForwardC  您好

我把它跟擷取RS232擷取接在一起時

發現我只能夠抓一次資料它就停止了

且bytes read都只抓取4096這個位置

因為我的資料是即時連續傳輸的字串

請問是因為有兩個stop還是另有原因呢?

願好 阿暖

0 積分
15 條訊息(共 17 條)
3,763 檢視

您好,

 

有關於您的問題, 您可以試試把 VISA Configure Serial Port, VISA Write, 和 VISA Close 這些 functions 放在迴圈之外

 

看看是否能有幫助, 請參考程式的圖檔範例

 

NITW AE

 

 

 

 

下載全部
0 積分
16 條訊息(共 17 條)
3,736 檢視

感謝各位先進的指導

目前學生已完成訊號擷取的部分

再來是寫演算法來判別動作

在此感謝NI提供這樣棒的LABVIEW的討論論壇

感謝這麼多人的不吝嗇指導

我會把您們告知給我的訊息

給弄清楚 為什麼要這樣做

因為時間真的太趕了 所以我看LABVIEW書籍都沒有看完善

只挑重點章節閱讀 導致很多工夫都沒有練熟

在這裡感謝HowardLin 先進的指導

他教我資料位元怎樣去擷取

感謝ForwardC 先進的幫助

他幫我解決資料傳輸選取以及RS232傳輸設定使用

很熱心的幫我解決問題

今後會更加努力

希望有一天也可以和大家討論

願好 阿暖

 

 

17 條訊息(共 17 條)
3,724 檢視