2013-10-20 82 views
0

首先,對不起,如果我的英語不完美。 我正在使用Matlab生成一個波形並創建一個二進制文件(基於波形點),我想將它發送到Agilent 33522A函數發生器以生成任意波形。我的問題是,我的電腦中生成的二進制文件包含「\ r \ n」字符,並且當嘗試在33522a中下載數據時,它最終出現錯誤。我嘗試更改EOSCharacter,但是在\ n在我的二進制文件中找到的位置被替換。發送「 r n」字符使用GPIB

如果我生成二進制文件,以便所有數據都包含在一行中,我可以發送數據,但函數發生器不會讀取採樣率,採樣數和最大/最小電壓等信息。

我的二進制文件是類似的東西:


Line 1
Line 2
Line 3
Data:
integer value 1
intege value 2
...

我EOI模式,EOS模式和EOS Characther播放,但我沒有成功安捷倫33522A的記憶寫與寫在超過數據的文件一條線; 如果我把數據放入USB棒,二進制文件可以被aparat正確讀取,即使它包含每行結尾的\ r \ n字符。

有關如何通過GPIB發送包含多個CR和LF \ r \ n字符的二進制文件的任何想法?

+0

你真的有二進制格式,還是人類可讀的ascii? – P3trus

+0

我想從我的電腦發送到Agilent 33522A的「waveform.arb」是一個可讀取的ascii文件,具有多行。我使用Matlab生成這個文件。在文件的每一行的末尾,我都有回車符「\ r」和換行符「\ n」。如果忽略「\ n」,我可以將文件保存在內存中,但是Agilent 33522A無法打開文件。 – NumLock

回答

0

你必須設置EOSMode '寫':

set(yourdevice_Obj,'EOSMode','write') 

,離開EOSCharacter爲LF(\n)。

an。

相關問題