<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > LabVIEW與單片機(jī)串口在數(shù)據(jù)采集系統(tǒng)中的應(yīng)用

          LabVIEW與單片機(jī)串口在數(shù)據(jù)采集系統(tǒng)中的應(yīng)用

          作者: 時(shí)間:2012-11-21 來源:網(wǎng)絡(luò) 收藏

          1.分析

          本文引用地址:http://www.ex-cimer.com/article/148237.htm

          是一種程序開發(fā)環(huán)境,由美國國家儀器(NI)公司研制開發(fā)的,類似于C和BASIC開發(fā)環(huán)境,但是與其他計(jì)算機(jī)語言的顯著區(qū)別是:其他計(jì)算機(jī)語言都是采用基于文本的語言產(chǎn)生代碼,而LabVIEW使用的是圖形化編輯語言G編寫程序,產(chǎn)生的程序是框圖的形式。

          LabVIEW也有傳統(tǒng)的程序調(diào)試工具,如設(shè)置斷點(diǎn)、以動(dòng)畫方式顯示數(shù)據(jù)及其子程序(子VI)的結(jié)果、單步執(zhí)行等等,便于程序的調(diào)試。采用數(shù)據(jù)流編程方式,程序框圖中節(jié)點(diǎn)之間的數(shù)據(jù)流向決定了VI及函數(shù)的執(zhí)行順序。

          它主要的方便就是,一個(gè)硬件的情況下,可以通過改變軟件,就可以實(shí)現(xiàn)不同的儀器儀表的功能,非常方便,是相當(dāng)于軟件即硬件!現(xiàn)在的圖形化主要是上層的,國內(nèi)現(xiàn)在已經(jīng)開發(fā)出圖形化的編程(支持32位的嵌入式,并且可以擴(kuò)展的),不斷完善中(大家可以搜索 CPUVIEW 會(huì)有更詳細(xì)信息;)。

          1.1VISA簡介

          VISI俗稱虛擬儀器軟件規(guī)范,是所有標(biāo)準(zhǔn)I/O函數(shù)庫及其相關(guān)規(guī)范的總稱,用于完成計(jì)算機(jī)與儀器之間的連接,實(shí)現(xiàn)對(duì)儀器的控制。VISI本身并不具備編程能力,是通過調(diào)用底層驅(qū)動(dòng)程序來實(shí)現(xiàn)對(duì)儀器的編程,其層次如圖1所示。VISA是采用VPP標(biāo)準(zhǔn)的I/O接口軟件,其軟件結(jié)構(gòu)包含三部分,如圖2所示。

          VISA的I/O控制特點(diǎn)

          ①適用于各種儀器類型(如VXI儀器、GPIB儀器、RS-232串行儀器、消息基器件、寄存器器件、存儲(chǔ)器器件等儀器);

          ②適用于各種硬件接口類型;適用于單、多處理器結(jié)構(gòu)或分布式網(wǎng)絡(luò)結(jié)構(gòu);

          ③適用于多種網(wǎng)絡(luò)機(jī)制。

          VISA的I/O軟件庫的源程序是唯一的,與操作系統(tǒng)及編程語言無關(guān),只是提供了標(biāo)準(zhǔn)形式的API文件作為系統(tǒng)的輸出。

          1.2VISA庫中的通訊函數(shù)

          主要的通訊函數(shù)調(diào)用路徑為:FunctionsInstrument I/OVISAVISA AdvancedInterface SpecificSerial。

          ①VISA Configure Serial Port節(jié)點(diǎn)(圖3所示)

          該節(jié)點(diǎn)主要用于的初始化。主要參數(shù)如下:

          VISA resource name:VISA資源名稱,本文指串口號(hào)。baud rate:波特率,默認(rèn)為9600。
          data bits:一幀信息中的位數(shù),LabVIEW中允許5~8位數(shù)據(jù),默認(rèn)值為8位。
          stop bits:一幀信息中的停止位的位數(shù),可為1位、1位半或2位。
          Parity:奇偶校驗(yàn)設(shè)置??蔀闊o校驗(yàn)、奇校驗(yàn)或偶校驗(yàn)。
          flow control:該參數(shù)數(shù)據(jù)類型為簇,用于串行通訊中的握手方式。

          ②VISA Read節(jié)點(diǎn)(圖4所示)

          該節(jié)點(diǎn)為串口讀子VI,為本文中的主要節(jié)點(diǎn),將串口中的數(shù)據(jù)讀出,然后利用LabVIEW的強(qiáng)大數(shù)據(jù)處理功能對(duì)其進(jìn)行分析處理。主要參數(shù)意義如下:

          VISA resource name:VISA資源名稱,本文指串口號(hào)。baud rate:波特率,默認(rèn)為9600。

          byte count:用于設(shè)置所要讀的字符數(shù)。由于LabVIEW的串行通訊子VI只允許對(duì)字符串的讀寫,因此本文中在進(jìn)行數(shù)據(jù)處理時(shí),必須要實(shí)現(xiàn)字符串與數(shù)字之間的正確轉(zhuǎn)換。其次,若要讀入當(dāng)前串口中的所有字符,則要執(zhí)行“VISA Bytes at Serial Port”子VI,用以確定將要讀入的確切的字節(jié)數(shù),然后將其輸出作為VISA Read節(jié)點(diǎn)的輸入即可。

          ③VISA Close節(jié)點(diǎn)(圖5所示)

          該節(jié)點(diǎn)用于將打開的VISA資源關(guān)閉。只有一個(gè)主要參數(shù):

          VISA resource name:VISA資源名稱,本文指串口號(hào)。baud rate:波特率,默認(rèn)為9600。

          本文所用LabVIEW串口通訊程序的波特率為9600,8位數(shù)據(jù)位,無奇偶校驗(yàn),1位停止位,硬件握手、禁止軟。

          2設(shè)計(jì)

          2.1硬件

          MCS-51有一個(gè)全雙工串行口其功能非常強(qiáng)大。

          該串行口有4種工作方式,由片內(nèi)的定時(shí)器/計(jì)數(shù)器產(chǎn)生,接收、發(fā)送均可觸發(fā)中斷系統(tǒng),使用十分方便,波特率還可用軟件設(shè)置。

          有2個(gè)物理上獨(dú)立的接收、發(fā)送緩沖器SBUF,對(duì)外也有兩條獨(dú)立的收、發(fā)信號(hào)線RXD(P3.0)和TXD(P3.1)。

          本文采用RS232串行接口標(biāo)準(zhǔn),在電氣特性上,RS232采用負(fù)邏輯,要求高低兩信號(hào)間有較大的幅度,標(biāo)準(zhǔn)為:邏輯“1”在-5V~-15V之間,邏輯“0”在+5V~+15V之間,通常采用-10V左右為邏輯1,+10V左右為邏輯0。由于MCS-51系統(tǒng)的信號(hào)輸入輸出為TTL電平,邏輯1為3.8V左右,邏輯0為0.4V左右,因此,必須外接電路實(shí)現(xiàn)TTL電平到RS232電平的轉(zhuǎn)換。本文特別采用MAX232E實(shí)現(xiàn)此轉(zhuǎn)換。

          采用TLC0831芯片進(jìn)行數(shù)據(jù)的采集。TLC0831芯片為8位逐次逼近電壓型A/D轉(zhuǎn)換器,不需尋址,支持單信道輸入串口輸出,極性設(shè)置固定。其主要特點(diǎn)為:8位分辨率;5V的電源提供0~5V的可調(diào)基準(zhǔn)電壓;輸入輸出可與TTL和MOS兼容。若要提高信號(hào)的采樣頻率,只需選擇轉(zhuǎn)換速度較快的A/D芯片即可。硬件部分原理圖如圖6。

          2.2軟件

          下面給出單片機(jī)軟件部分的主要程序。波特率設(shè)置為9600,用定時(shí)器1產(chǎn)生波特率,串口工作在方式1,無奇偶校驗(yàn)。定時(shí)器0設(shè)定采樣的時(shí)間間隔。TLC0831為A/D轉(zhuǎn)換器數(shù)據(jù)采樣子程序,SEND為單片機(jī)發(fā)送子程序。



          3結(jié)論

          虛擬儀器研究的另一個(gè)問題是各種標(biāo)準(zhǔn)儀器的互連及與計(jì)算機(jī)的連接。目前使用較多的是 IEEE 488 或 GPIB協(xié)議,未來的儀器也應(yīng)當(dāng)是網(wǎng)絡(luò)化的。

          LabVIEW是一種圖形化的編程語言的開發(fā)環(huán)境,它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的和儀器控制軟件。LabVIEW [2]集成了與滿足 GPIB、VXI、RS-232 和 RS-485 協(xié)議的硬件及卡通訊的全部功能。它還內(nèi)置了便于TCP/IP、ActiveX 等軟件標(biāo)準(zhǔn)的庫函數(shù)。這是一個(gè)功能強(qiáng)大且靈活的軟件。利用它可以方便地建立自己的虛擬儀器,其圖形化的界面使得編程及使用過程都生動(dòng)有趣。

          由單片機(jī)進(jìn)行前端,在通過串口與LabVIEW的數(shù)據(jù)通訊,巧妙的利用LabVIEW強(qiáng)大的信號(hào)分析處理功能,開發(fā)了一套投資少、操作簡便的數(shù)據(jù)采集與信息分析系統(tǒng)(其虛擬面板如圖7所示)。從系統(tǒng)運(yùn)行良好,可以看出本實(shí)驗(yàn)很成功,可以投入市場。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();