新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于VPP規(guī)范的VXI總線模塊的軟件開(kāi)發(fā)

基于VPP規(guī)范的VXI總線模塊的軟件開(kāi)發(fā)

作者: 時(shí)間:2013-03-30 來(lái)源:網(wǎng)絡(luò) 收藏

部件函數(shù)包括初始化、配置、動(dòng)作/狀態(tài)、數(shù)據(jù)、實(shí)用和關(guān)閉函數(shù)。初始化函數(shù)是訪問(wèn)儀器時(shí)調(diào)用的第一個(gè)函數(shù),用于初始化軟件連接,使儀器處于某種默認(rèn)的狀態(tài)。關(guān)閉函

數(shù)是最后調(diào)用的,用于關(guān)閉儀器的軟件連接。配置函數(shù)對(duì)儀器進(jìn)行配置,以便執(zhí)行所希望的操作。動(dòng)作/狀態(tài)函數(shù)使儀器執(zhí)行一項(xiàng)操作或者報(bào)告正在執(zhí)行的或已經(jīng)掛起的操作的狀態(tài)。數(shù)據(jù)函數(shù)用來(lái)從儀器取回?cái)?shù)據(jù)或向儀器發(fā)送數(shù)據(jù)。實(shí)用函數(shù)包括許多標(biāo)準(zhǔn)的儀器操作,例如執(zhí)行復(fù)位、自檢、詢(xún)問(wèn)驅(qū)動(dòng)程序版本信息和錯(cuò)誤處理等。

應(yīng)用函數(shù)是一組面向測(cè)試的高級(jí)函數(shù),它們指出如何使用部件函數(shù)。這些程序通過(guò)配置、觸發(fā)和從儀器讀取數(shù)據(jù)來(lái)完成整個(gè)測(cè)試操作,不僅提供了如何使用部件函數(shù)的有價(jià)值實(shí)例,而且當(dāng)用戶(hù)僅需要單一的面向測(cè)試函數(shù)接口,而不是使用單個(gè)部件函數(shù)時(shí),它們是非常有用的。

VPP-3.2規(guī)范還給出了一組函數(shù)模板,并且要求每個(gè)儀器驅(qū)動(dòng)器都必須實(shí)現(xiàn)這些函數(shù)。它們是:Initialize,Close,Reset,Self-Test,Error Query,Error Message,Revision Query.規(guī)范對(duì)每個(gè)函數(shù)的輸入?yún)?shù)、輸出狀態(tài)和操作都做了詳細(xì)的說(shuō)明。

在開(kāi)發(fā)儀器驅(qū)動(dòng)器時(shí),采用了兩種簡(jiǎn)便的方法:一是在Lab Windows/CVI中提供了儀器驅(qū)動(dòng)器的核心程序,它包括了所要求的所有模板函數(shù)的實(shí)現(xiàn),可在此基礎(chǔ)上添加其它函數(shù);二是根據(jù)已有的具有類(lèi)似儀器功能的儀器驅(qū)動(dòng)器進(jìn)行改造。但首先我們都必須熟悉儀器各項(xiàng)功能和指令集。如果儀器是寄存器基的,通過(guò)直接讀寫(xiě)其寄存器進(jìn)行操作;如果是消息基的,則可發(fā)送ASCII碼指令來(lái)控制。

開(kāi)發(fā)儀器驅(qū)動(dòng)器采用了自頂向下的方式,步驟如下:

①命名儀器驅(qū)動(dòng)器。采用廠家名稱(chēng)縮寫(xiě)+模塊號(hào)的方式命名儀器驅(qū)動(dòng)器,即AMC1410,并將此名稱(chēng)作為每個(gè)儀器驅(qū)動(dòng)器函數(shù)的前綴,這可使得多個(gè)廠家的儀器驅(qū)動(dòng)器運(yùn)行于同一系統(tǒng)中而不會(huì)發(fā)生沖突。

②定義儀器的功能和功能分類(lèi)。

③創(chuàng)建儀器驅(qū)動(dòng)器的函數(shù)樹(shù),它對(duì)應(yīng)儀器的功能層次。

④對(duì)儀器驅(qū)動(dòng)器的每個(gè)函數(shù):

a.定義函數(shù)的入口參數(shù)包括變量類(lèi)型、數(shù)值范圍,輸出狀態(tài)。

b.如果采用LabWindows/CVI作為開(kāi)發(fā)工具,為每個(gè)函數(shù)創(chuàng)建函數(shù)面板,包括面板和控制的幫助信息。

c.為每個(gè)函數(shù)寫(xiě)源代碼。

d.調(diào)試函數(shù)源代碼。

⑤為最終的儀器驅(qū)動(dòng)器創(chuàng)建包含文件,包括函數(shù)聲明和常數(shù)定義。

⑥生成儀器驅(qū)動(dòng)器的動(dòng)態(tài)連接庫(kù)文件和入口函數(shù)庫(kù)文件。

數(shù)字電壓表模塊的函數(shù)組織圖見(jiàn)圖2。

在開(kāi)發(fā)儀器驅(qū)動(dòng)器時(shí),我們使用VISA庫(kù)函數(shù)和VISA定義的數(shù)據(jù)類(lèi)型。VISA是虛擬儀器軟件結(jié)構(gòu)的簡(jiǎn)稱(chēng),是的又一重要成果。它為不同的操作系統(tǒng)和不同的硬件接口提供了同一I/O軟件層,無(wú)論是選用GPIB、VXI/MXI、串口或以太網(wǎng)接口,還是選用DOS、Windows、UNIX操作系統(tǒng),都可使用相同的函數(shù)與儀器通訊,這打破了過(guò)去不同廠商的I/O接口軟件互不兼容的局面,大大增強(qiáng)了驅(qū)動(dòng)程序的可移植性。

2.3開(kāi)發(fā)儀器軟面板

由廠商隨儀器一同發(fā)貨的儀器軟面板為用戶(hù)提供了交互式操作儀器的圖形接口,它取代傳統(tǒng)的臺(tái)式儀器的前面板,在計(jì)算機(jī)屏幕上顯示用于控制儀器的各種按鍵、旋鈕和儀器的輸出信息,用鼠標(biāo)和鍵盤(pán)進(jìn)行操作。軟面板有兩個(gè)重要功能:一是幫助用戶(hù)檢驗(yàn)系統(tǒng)通訊接口和儀器是否正確配置、正常工作;二是幫助用戶(hù)熟悉儀器的主要功能。



評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉