熟女俱乐部五十路二区av,又爽又黄禁片视频1000免费,国产卡一卡二卡三无线乱码新区,中文无码一区二区不卡αv,中文在线中文a

新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于LabVIEW的單片機(jī)脈沖發(fā)生器

基于LabVIEW的單片機(jī)脈沖發(fā)生器

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

3 上位機(jī)系統(tǒng)的設(shè)計(jì)

本文引用地址:http://www.bjwjmy.cn/article/173904.htm

語(yǔ)言是美國(guó)國(guó)家儀器(NI)公司開(kāi)發(fā)的一種圖形化語(yǔ)言(G語(yǔ)言)的編程語(yǔ)言,利用該語(yǔ)言編寫(xiě)的模塊化程序,具有良好的界面,簡(jiǎn)單、直觀(guān),且易于理解、調(diào)試和維護(hù)。做成的虛擬儀表可以當(dāng)作許多儀器設(shè)備來(lái)使用,其功能完全由用戶(hù)編程定義。另外,內(nèi)還包含豐富的數(shù)據(jù)采集、數(shù)據(jù)信號(hào)分析以及控制等子程序,特別適用于數(shù)據(jù)采集、通信處理系統(tǒng)。

提供了很多現(xiàn)成的可供調(diào)用的函數(shù)庫(kù),從底層的GPIB,VXI,PXI,串口數(shù)據(jù)采集板的控制子程序到大量的儀器驅(qū)動(dòng)程序;從基本的功能函數(shù)到高級(jí)分析庫(kù),幾乎涵蓋了儀器設(shè)計(jì)中需要的所有函數(shù)。同時(shí),LabVIEW還支持用于網(wǎng)絡(luò)通訊的TCP/IP協(xié)議、動(dòng)態(tài)數(shù)據(jù)交換(DDE)和網(wǎng)絡(luò)化多媒體對(duì)象技術(shù)(ActiveX)等應(yīng)用軟件標(biāo)準(zhǔn)。

3.1 VISA

LabVIEW提供了功能強(qiáng)大的VISA庫(kù)。VISA(Virtual Instrument Software Architecture,虛擬儀器軟件規(guī)范)是用于儀器編程的標(biāo)準(zhǔn)I/O函數(shù)庫(kù)及其相關(guān)規(guī)范的總稱(chēng)。VISA庫(kù)駐留于計(jì)算機(jī)系統(tǒng)中,完成計(jì)算機(jī)與儀器之間的連接,用以實(shí)現(xiàn)對(duì)儀器的程序控制,其實(shí)質(zhì)是用于虛擬儀器系統(tǒng)的標(biāo)準(zhǔn)的API(Application Programmer Inter-face,應(yīng)用程序接口)。正因?yàn)槿绱?,VISA可以連接不同標(biāo)準(zhǔn)的I/O設(shè)備。

VISA本身并不具備編程能力,惟他通過(guò)調(diào)用底層的驅(qū)動(dòng)程序來(lái)實(shí)現(xiàn)對(duì)儀器的編程。VISA的I/O軟件庫(kù)的源程序是惟一的,其與操作系統(tǒng)及編程語(yǔ)言無(wú)關(guān),只是提供了標(biāo)準(zhǔn)形式的API文件作為系統(tǒng)的輸出。

3.2 LabVIEW中利用VISA實(shí)現(xiàn)串口通信

在LabVIEW中使用串口的基本流程為:先調(diào)用VISA Configure Serial Port來(lái)完成串口參數(shù)的初始化設(shè)置,包括了串口的資源分配,波特率的設(shè)定,數(shù)據(jù)位、停止位、校驗(yàn)位和流控制等。

當(dāng)某一個(gè)串口初始化成功后,就可以使用該串口進(jìn)行數(shù)據(jù)的收發(fā)。使用VISA Write進(jìn)行數(shù)據(jù)的發(fā)送,使用VISA Read進(jìn)行數(shù)據(jù)的接收。在接收數(shù)據(jù)前,有時(shí)需要VISA Bytes at Serial Port查詢(xún)當(dāng)前串口接收緩沖區(qū)中的數(shù)據(jù)字節(jié)數(shù),如果VISA Read要讀取的字節(jié)數(shù)大于緩沖區(qū)中的數(shù)據(jù)字節(jié)數(shù),VISA Read操作將一直等待,直至緩沖區(qū)中的數(shù)據(jù)字節(jié)數(shù)達(dá)到要求或是等待時(shí)間滿(mǎn)足VISA Configure Serial Port所設(shè)定的Timeout。

在對(duì)數(shù)據(jù)的連續(xù)性要求不高的時(shí)候,VISA Read也支持分批讀取接收緩沖區(qū)里的數(shù)據(jù)字節(jié)或者只是讀取其中的一部分字節(jié)。

在某些特殊的情況下,可以利用VISA SET I/O Buffer Size設(shè)置串口接受/發(fā)送緩沖區(qū)的大小,使用VISAFlash I/O Buffer清空接收與發(fā)送緩沖區(qū)。

在串口使用結(jié)束后,使用VISA Close結(jié)束與VISAresource name所指定串口間的會(huì)話(huà)。

該LabVIEW程序框圖中調(diào)用了一個(gè)叫做change的子VI程序,該子VI程序的功能是將高低電平的寬度值,轉(zhuǎn)換成定時(shí)器的初始值,并且拼湊成一個(gè)4個(gè)字節(jié)的16進(jìn)制數(shù),通過(guò)VISA Write模塊送入下位機(jī)。該子VI的程序框圖如圖5所示。

<meter id="hhl7k"><sub id="hhl7k"></sub></meter>
<table id="hhl7k"></table>

    評(píng)論


    相關(guān)推薦

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