第5次課外設(shè)驅(qū)動(dòng)開發(fā)cvi_第1頁
第5次課外設(shè)驅(qū)動(dòng)開發(fā)cvi_第2頁
第5次課外設(shè)驅(qū)動(dòng)開發(fā)cvi_第3頁
第5次課外設(shè)驅(qū)動(dòng)開發(fā)cvi_第4頁
第5次課外設(shè)驅(qū)動(dòng)開發(fā)cvi_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、LabWindows/CVI入門基于VISA的外設(shè)驅(qū)動(dòng)開發(fā)劉文浩 課堂內(nèi)容:VISA介紹VISA術(shù)語VISA庫函數(shù)VISA數(shù)據(jù)類型VISA基本函數(shù)示例:開發(fā)USB串口驅(qū)動(dòng)生成VISA驅(qū)動(dòng)使用VISA交互式控制臺開發(fā)CVI程序5.1 VISA簡介:VISA:虛擬儀器軟件結(jié)構(gòu)(Virtual Instrument Software Architecture)儀器底層不一,高層“神似”VXI總線1993年,VXIplug&play:VPP規(guī)范VISA:VPP聯(lián)盟制定的軟件規(guī)范5.1 VISA簡介:VISA:自底向上5.2 VISA術(shù)語資源資源三要素:屬性、事件、操作屬性(Attributes)描述了

2、一個(gè)資源或者一個(gè)會(huì)話所具有的某種狀態(tài)事件(Events)是獨(dú)立于系統(tǒng)正常運(yùn)行狀態(tài)的由資源發(fā)出的異步請求操作(Operations)是指由資源定義的可對資源起到控制作用的行為資源分為INSTR(儀器控制)、RAW(原始設(shè)備)等類5.2 VISA術(shù)語會(huì)話會(huì)話是指從一個(gè)資源被打開到被關(guān)閉的過程中進(jìn)行的操作的集合在VISA中,除串口之外的很多接口都可以同一個(gè)或多個(gè)應(yīng)用程序建立一個(gè)或多個(gè)會(huì)話會(huì)話可以通過viOpen()函數(shù)建立5.2 VISA術(shù)語資源模板(Resource Template)資源模板是所有的VISA具有的公共屬性、公共事件與公共操作的集合在VISA中,所有的資源具有的屬性、事件與操作都從

3、資源模板繼承,并根據(jù)資源本身特點(diǎn)增加特有的屬性、事件與操作5.2 VISA術(shù)語資源管理器(Resource Manager)在VISA中,資源管理器幫助掃描計(jì)算機(jī)上連接的所有VISA設(shè)備并且?guī)椭覀兘⑼硞€(gè)資源的會(huì)話。資源管理器由VISA的軟件包內(nèi)置的驅(qū)動(dòng)提供。我們可以通過viOpenDefaultRM()函數(shù)獲取資源管理器的操作句柄5.2 VISA術(shù)語基于消息的會(huì)話Message-Based Communication當(dāng)計(jì)算機(jī)跟資源之間的通信基于“指令-相應(yīng)”的工作模式?;诩拇嫫鞯臅?huì)話Register-Based Communication當(dāng)計(jì)算機(jī)跟資源之間的通信基于“寫寄存器-讀寄存器

4、”的工作模式。5.2 VISA術(shù)語基于消息的會(huì)話常見于串口、GPIB接口、以太網(wǎng)、VXI接口設(shè)備中。如用戶想通過計(jì)算機(jī)訪問某個(gè)網(wǎng)頁,則是通過多次的“請求命令-接收數(shù)據(jù)”的過程完成?;诩拇嫫鞯臅?huì)話常見于VXI與PXI接口設(shè)備中。計(jì)算機(jī)與VXI或者PXI設(shè)備之間的通信通過往設(shè)備指定地址的寄存器中寫入指定的數(shù)據(jù)來完成。5.2 VISA術(shù)語事件(Event)當(dāng)計(jì)算機(jī)跟設(shè)備進(jìn)行通信時(shí),設(shè)備經(jīng)常需要向計(jì)算機(jī)主動(dòng)發(fā)出一些請求,以通知應(yīng)用程序一個(gè)行為的發(fā)生。事件類型包括服務(wù)請求(SRQ)、中斷和硬件觸發(fā)處理時(shí)間常用的方法有回調(diào)函數(shù)法以及排隊(duì)法5.2 VISA術(shù)語鎖定(Locking)有時(shí)候我們通過某會(huì)話訪問

5、一個(gè)設(shè)備的時(shí)候,不希望其他會(huì)話再來訪問這個(gè)設(shè)備。VISA有一套叫做“鎖定”(Locking)的機(jī)制,以防止其他會(huì)話獲取該設(shè)備的訪問權(quán)限。在VISA中鎖定或解鎖常常使用viLock()或viUnlock()函數(shù)5.3 VISA函數(shù)對設(shè)備的通常的操作步驟 打開資源管理器句柄 打開資源句柄,建立一個(gè)會(huì)話 設(shè)置會(huì)話屬性,發(fā)送消息或者設(shè)置資源中的寄存器值 釋放資源句柄 釋放VISA資源管理器句柄5.3 VISA函數(shù)數(shù)據(jù)類型 VISA的數(shù)據(jù)類型是不依賴于硬件設(shè)備、編程語言以及編程環(huán)境的。因此VISA中使用專門定義的數(shù)據(jù)類型進(jìn)行操作,以增強(qiáng)平臺的兼容性常用的類型:ViPChar ViInt8 ViInt32

6、 ViInt16ViStatus ViSession ViObject5.3 VISA函數(shù)資源操作類函數(shù)與儀器打開關(guān)閉、獲取/設(shè)置狀態(tài)有關(guān)的函數(shù)viOpenDefaultRM viFindRsrc viFindNext viOpen viClose viGetAttribute viSetAttribute 5.3 VISA函數(shù)IO操作類函數(shù)分為基于消息的IO操作函數(shù)與基于寄存器的IO操作函數(shù)viIn8 viOut8 viIn16 viOut16 viIn32 viOut32 viPrintf viScanf viQueryf5.3 VISA函數(shù)事件處理類函數(shù)常用的處理事件的方法有回調(diào)函數(shù)法與排隊(duì)法v

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論