Matlab與TDS系列數字示波器的通信過(guò)程
數字示波器是數據采集,A/D轉換,軟件編程等一系列的技術(shù)制造出來(lái)的高性能示波器。數字示波器一般支持多級菜單,能提供給用戶(hù)多種選擇,多種分析功能。還有一些示波器可以提供存儲,實(shí)現對波形的保存和處理。 目前高端數字示波器主要依靠美國技術(shù),對于300MHz帶寬之內的示波器,目前國內品牌的示波器在性能上已經(jīng)可以和國外品牌抗衡,且具有明顯的性?xún)r(jià)比優(yōu)勢。數字示波器因具有波形觸發(fā)、存儲、顯示、測量、波形數據分析處理等獨特優(yōu)點(diǎn),其使用日益普及。由于數字示波器與模擬示波器之間存在較大的性能差異,如果使用不當,會(huì )產(chǎn)生較大的測量誤差,從而影響測試任務(wù)。
本文引用地址:http://dyxdggzs.com/article/201701/337762.htm1 通信原理
MATLAB是由美國mathworks公司發(fā)布的主要面對科學(xué)計算、可視化以及交互式程序設計的高科技計算環(huán)境。它將數值分析、矩陣計算、科學(xué)數據可視化以及非線(xiàn)性動(dòng)態(tài)系統的建模和仿真等諸多強大功能集成在一個(gè)易于使用的視窗環(huán)境中,為科學(xué)研究、工程設計以及必須進(jìn)行有效數值計算的眾多科學(xué)領(lǐng)域提供了一種全面的解決方案,并在很大程度上擺脫了傳統非交互式程序設計語(yǔ)言(如C、Fortran)的編輯模式,代表了當今國際科學(xué)計算軟件的先進(jìn)水平?!? MATLAB和Mathematica、Maple并稱(chēng)為三大數學(xué)軟件。它在數學(xué)類(lèi)科技應用軟件中在數值計算方面首屈一指。MATLAB可以進(jìn)行矩陣運算、繪制函數和數據、實(shí)現算法、創(chuàng )建用戶(hù)界面、連 matlab開(kāi)發(fā)工作界面接其他編程語(yǔ)言的程序等,主要應用于工程計算、控制設計、信號處理與通訊、圖像處理、信號檢測、金融建模設計與分析等領(lǐng)域。
Matlab中的Instrument Control Toolbox包括兩大部件:M文件函數和接口驅動(dòng)適配器。這兩部件提供了Matlab與外設的通訊功能,其與串行通訊端口的通訊原理如圖1所示。
由圖1可見(jiàn),Matlab的兩大部件提供了一條外設與Matlab之間的交互通道,使用戶(hù)與外設之間進(jìn)行信息獲取和傳送。同許多高級語(yǔ)言一樣,Matlab通過(guò)調用M文件函數來(lái)創(chuàng )建設備對象,得到設備的文件句柄,而設備驅動(dòng)程序作為操作系統中直接控制硬件的模塊,是鏈接操作系統內核與系統外部設備I/O操作的關(guān)鍵模塊。它將具體的硬件細節隱藏實(shí)現對外設操作的透明,因此Matlab可以象操作文件一樣實(shí)現對外設的讀、寫(xiě)操作。讀寫(xiě)時(shí)的數據傳輸格式、輸入輸出緩沖區大小以及讀寫(xiě)溢出時(shí)間等由圖1中的屬性值定義,其根據為具體的通訊端口和通訊方式以及數據大小。示波器所產(chǎn)生的事件和狀態(tài)被示波器保存在標準事件狀態(tài)寄存器(SESR)狀態(tài)字節寄存器(SBR)和事件隊列中,供(Matlab)回調函數讀取。同時(shí)用戶(hù)可以通過(guò)設置設備事件狀態(tài)使能寄存器(DESER)以及事件狀態(tài)能寄存器(ESER)、服務(wù)請求使能寄存器(SRER)這三個(gè)使能寄存器來(lái)控制何種事件或狀態(tài)被保存在保存在狀態(tài)寄存器和事件隊列中。Matlab對示波器的設置詢(xún)問(wèn)命令由fprintf函數以字符串的形式輸出。設置和詢(xún)問(wèn)命令由具體的示波器廠(chǎng)商定義,其格式為:HeaderArguments,多個(gè)參數之間由逗號相隔。當以二進(jìn)制格式對示波器的波形進(jìn)行數據讀寫(xiě)時(shí),讀寫(xiě)數據與示波器實(shí)際數據換算由下式給出:
Xn=Xzero+Xincr·n
Yn=Yzero+Ymult(yn-Yoff) (1)
其中,yn為輸入、輸出緩沖區中的數據,n為數據個(gè)數,Xn、Yn為示波器中實(shí)際采樣時(shí)間與信號幅值。
2 數據傳輸
在通信領(lǐng)域內,有兩種數據通信方式:并行通信和串行通信。隨著(zhù)計算機網(wǎng)絡(luò )化和微機分級分布式應用系統的發(fā)展,通信的功能越來(lái)越重要。通信是指計算機與外界的信息傳輸,既包括計算機與計算機之間的傳輸,也包括計算機與外部設備,如終端、打印機和磁盤(pán)等設備之間的傳輸。串行通信是指 使用一條數據線(xiàn),將數據一位一位地依次傳輸,每一位數據占據一個(gè)固定的時(shí)間長(cháng)度。其只需要少數幾條線(xiàn)就可以在系統間交換信息,特別使用于計算機與計算機、計算機與外設之間的遠距離通信。
評論