USB接口的虛擬儀器設(shè)計與實現(xiàn)
2.3 驅(qū)動程序
在Window 98/2000/XP系統(tǒng)下,用戶級的應(yīng)用程序必須通過驅(qū)動程序訪問USB硬件設(shè)備,雖然目前有許多公司提供編寫驅(qū)動程序的開發(fā)工具,但是相對來講還是比較困難。使用FT232AM時,由于FTDI公司提供了一個虛擬串行口(VCP:virtualCOM port)的驅(qū)動程序,因而在安裝了VCP設(shè)備驅(qū)動程序后,系統(tǒng)就將USB外設(shè)虛擬成一個串口設(shè)備(通常為COM3),這樣應(yīng)用程序訪問USB口就像訪問一個標(biāo)準的串行口一樣,而在LabWindows/CVI中提供了串口編程的函數(shù)庫,這樣就可以很方便地進行用戶程序開發(fā)。
3 LabWindows/CVI
LabWindows/CVI是NI公司面向計算機測控領(lǐng)域的虛擬儀器軟件開發(fā)平臺,它提供了豐富的虛擬儀表控件,同時又具有很好的硬件接口功能,幾乎為所有的數(shù)據(jù)卡、采集儀器之類的采集設(shè)備都提供了專門的驅(qū)動程序。其中RS232函數(shù)庫提供了各種方式的串口通訊控制函數(shù),根據(jù)實際串口通訊可分為打開,關(guān)閉串口函數(shù)、I/O讀寫函數(shù)、調(diào)制解調(diào)器控制函數(shù)、串口設(shè)置函數(shù)、寄存器狀態(tài)函數(shù)和回調(diào)函數(shù)6類。其中部分較常用的函數(shù)如下:
(1) 打開/關(guān)閉函數(shù)
(2) I/O讀寫函數(shù)
I/O讀寫函數(shù)提供了多種讀寫方式,這里只介紹部分函數(shù)。
(3) 調(diào)制解調(diào)器控制函數(shù)
4 軟件設(shè)計
串口通訊的程序流程圖如圖2。由于不同的采集儀器具有各自不同的通訊協(xié)議,因此需要根據(jù)具體的儀器通訊協(xié)議編寫PC的程序。本文中將以PC與USB的通訊為例,說明LabWindows/CVI中實現(xiàn)USB通訊的方法。圖3是虛擬示波器的程序界面圖。
評論