基于VPP規范的VXI總線(xiàn)模塊的軟件開(kāi)發(fā)
1.概述
VXIbus聯(lián)合體在制定VXIbus規范時(shí),成功地定義了基于VME總線(xiàn)的模塊化儀器的標準。它定義了VXIbus兼容部件如主機箱、背板、電源和模塊之間互聯(lián)的電氣、機械接口協(xié)議和模塊間的通訊協(xié)議,這些協(xié)議能使來(lái)自不同廠(chǎng)商的產(chǎn)品組成系統。然而,VXIbus規范沒(méi)有涉及系統級的軟件標準,如選用何種操作系統、應用開(kāi)發(fā)環(huán)境和編程語(yǔ)言,何種計算機,何種I/O軟件接口,而這些產(chǎn)品的一些組合是不兼容的,這使得用戶(hù)在設計、組建、編程和使用一個(gè)由計算機控制的儀器系統時(shí),仍面臨著(zhù)許多問(wèn)題。
為了最大限度地提供VXI總線(xiàn)系統級的易用性、多廠(chǎng)商開(kāi)放式結構和互操作性,在1992年由多家儀器廠(chǎng)商成立了VXIplugplay系統聯(lián)盟。plugplay意為“即插即用”。聯(lián)盟通過(guò)制定一系列規范,即VPP規范系列,指導廠(chǎng)商和用戶(hù)的活動(dòng),提供一個(gè)開(kāi)放的、多廠(chǎng)商共享的系統結構,使系統軟件元素的開(kāi)發(fā)、使用標準化,并最大限度地提高軟件的可重用性,減少系統開(kāi)發(fā)周期,降低系統成本,使VXI總線(xiàn)產(chǎn)品能真正做到“即插即用”。
VPP-1為聯(lián)盟的章程文件,介紹了VXI plugplay的目標、指導原則和核心技術(shù),使得聯(lián)盟能夠迅速制定、公布以下標準。VPP-2為系統框架規范,定義了VXI plugplay系統中應用軟件的工作環(huán)境,及VXI plugplay系統中所包含的軟件元素,即儀器驅動(dòng)器、I/O接口庫、軟面板、知識庫和安裝程序,并針對不同框架對系統軟、硬件提出了要求。VPP-3—VPP-7分別為上述軟件元素的目標、構成、特性和實(shí)現做了詳細、具體的規范定義。VPP-8為VXI模塊/主機箱至接收裝置的互連規范。VPP-9為儀器供應商的縮寫(xiě)。VPP-10為VXI plugplay標識規范和成員注冊。
2.基于VPP規范的VXI總線(xiàn)模塊的軟件開(kāi)發(fā)
由于符合VXI plugplay規范的產(chǎn)品和服務(wù)會(huì )更容易集成到系統中,用戶(hù)會(huì )盡可能地選擇這樣的產(chǎn)品。所以廠(chǎng)家應盡可能地提供符合VXI plugplay規范的產(chǎn)品。按照VPP規范,廠(chǎng)家在提供模塊化儀器的同時(shí),還要提供儀器驅動(dòng)器、軟面板、知識庫和安裝程序等軟件。下面就結合數字電壓表的開(kāi)發(fā),講述一下上述軟件的開(kāi)發(fā)過(guò)程。
在開(kāi)發(fā)上述軟件模塊時(shí),采用了下面的順序:
●選擇系統框架
●開(kāi)發(fā)儀器驅動(dòng)器
●開(kāi)發(fā)軟面板
●開(kāi)發(fā)知識庫
●制作安裝程序
2.1選擇系統框架
在開(kāi)發(fā)儀器驅動(dòng)器、軟面板、知識庫和安裝程序之前,首先進(jìn)行了系統框架的選擇。系統框架是上述軟件模塊運行的環(huán)境,由操作系統和應用開(kāi)發(fā)環(huán)境所構成,VPP-2定義了十種系統框架,即WIN、WIN95、WINNT、SUN、HP-UX、GWIN、GWIN95、GWINNT、GSUN、GHP-UX。前五種是由它們所支持的操作系統命名的,而在這五種操作系統下使用LabVIEW的G編程語(yǔ)言作為開(kāi)發(fā)儀器驅動(dòng)器和軟面板的環(huán)境,則構成了后面五種系統框架。這當中最受歡迎的應是WIN和WIN95框架,因為它們可視窗操作并支持眾多的開(kāi)發(fā)工具。在這兩種框架下,VPP-2列出了六種應用開(kāi)發(fā)環(huán)境LabWindows/CVI,LabVIEW,HPVEE,Microsoft Visual C++,Borland C++和Microsoft Visual Basic,可選用其中的任何一種作為開(kāi)發(fā)儀器驅動(dòng)器和軟面板的工具。在本文中所舉的例子都是在WIN95框架和LabWindows/CVI環(huán)境下開(kāi)發(fā)的。
2.2開(kāi)發(fā)儀器驅動(dòng)器
儀器驅動(dòng)器即儀器驅動(dòng)程序,是廠(chǎng)家隨模塊提供給用戶(hù)的一組驅動(dòng)函數,它將工作于用戶(hù)所選擇的系統框架下,負責對儀器進(jìn)行控制和通信。VPP規范的一個(gè)重要成果就是將儀器驅動(dòng)器作為儀器的一個(gè)組成部分,由廠(chǎng)家提供,從而縮短了用戶(hù)的程序開(kāi)發(fā)周期。VPP-3定義了儀器驅動(dòng)器結構,見(jiàn)圖1。
儀器驅動(dòng)器的結構包括外部接口模型和內部設計模型。
儀器驅動(dòng)器的外部接口模型表示它如何與系統中其它軟件模塊接口。其中,交互式開(kāi)發(fā)者接口即函數面板是對驅動(dòng)器交互式調用接口;編程開(kāi)發(fā)者接口的目的是在用戶(hù)應用程序中使用驅動(dòng)器;函數主體描述儀器的功用,即驅動(dòng)程序的實(shí)際代碼;I/O接口完成驅動(dòng)器與儀器間的通信;子進(jìn)程接口用于調用其它軟件模塊。
內部設計模型定義了儀器驅動(dòng)器的內部結構。理解了這一模型,就知道如何設計儀器驅動(dòng)程序。儀器驅動(dòng)程序的函數主體包括兩級:第一級是一組部件函數,它們是控制儀器特定功能的軟件模塊;第二級是一組應用函數,它們表示如何使用部件函數來(lái)完成面向應用的儀器操作。
評論