• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于LabVIEW的單片機(jī)與PC機(jī)串口通信顯示系統(tǒng)設(shè)計(jì)

    2015-01-13 04:24:20劉松斌王海星
    化工自動(dòng)化及儀表 2015年7期
    關(guān)鍵詞:PC機(jī)下位液晶

    劉松斌 王海星 馬 雙 柳 明

    (1. 東北石油大學(xué)電氣信息工程學(xué)院,黑龍江 大慶 163318; 2. 大慶油田第一采油廠儀表安裝維修大隊(duì),黑龍江 大慶 163453;3. 大慶儲(chǔ)運(yùn)銷售分公司葡北油庫,黑龍江 大慶 163000)

    隨著工業(yè)的不斷進(jìn)步與發(fā)展,控制系統(tǒng)越來越復(fù)雜,處理的數(shù)據(jù)量也越來越大,但單片機(jī)等主控芯片的處理能力有限,難以滿足控制的需求,因此分布式系統(tǒng)逐漸成為主流。在分布式系統(tǒng)中各種數(shù)據(jù)的采集和對(duì)執(zhí)行機(jī)構(gòu)的控制都由下位機(jī)完成,而對(duì)采集到的數(shù)據(jù)進(jìn)行進(jìn)一步分析和處理則由功能更強(qiáng)大的上位機(jī)完成。由于單片機(jī)具有高可靠性、價(jià)格低廉和可應(yīng)用于惡劣工業(yè)環(huán)境的特點(diǎn),在分布式控制系統(tǒng)中大多采用單片機(jī)作為下位機(jī)。而PC機(jī)因其處理能力強(qiáng)及人機(jī)交互好等特點(diǎn)常被用作上位機(jī)。單片機(jī)與PC機(jī)通信常選用串口通信方式,串口通信是通過數(shù)據(jù)信號(hào)線、地線及控制線等按位進(jìn)行數(shù)據(jù)傳輸?shù)囊环N通信方式[1]。在PC領(lǐng)域里以RS-232、RS-485協(xié)議為代表的串口通信因其通信穩(wěn)定、抗干擾能力強(qiáng)及成本低等優(yōu)點(diǎn)被普遍應(yīng)用在工業(yè)領(lǐng)域。

    LabVIEW(又稱為G語言)是一種基于數(shù)據(jù)流的圖形化編程環(huán)境[2],近年來在檢測(cè)和控制領(lǐng)域得到了快速發(fā)展。因其程序是圖形化的框圖形式,在人機(jī)交互等方面具有天然的優(yōu)勢(shì),故已逐漸成為上位機(jī)編程軟件的不二選擇。筆者設(shè)計(jì)了一種基于LabVIEW的單片機(jī)與PC機(jī)串口通信顯示系統(tǒng),為了更直觀地了解串口通信情況,為系統(tǒng)填加顯示模塊,用LCD實(shí)時(shí)顯示收發(fā)的數(shù)據(jù),從而驗(yàn)證串口通信是否成功。

    串口通信系統(tǒng)顯示由4部分組成(圖1):PC機(jī)作為上位機(jī),負(fù)責(zé)數(shù)據(jù)的發(fā)送、接收和人機(jī)交互;單片機(jī)最小系統(tǒng)作為下位機(jī),負(fù)責(zé)串口數(shù)據(jù)的接收、發(fā)送和液晶驅(qū)動(dòng);MAX232芯片作為連接前兩部分的橋梁,將RS-232的負(fù)邏輯電平(邏輯1為-15~-3V,邏輯0為3~15V)[3]轉(zhuǎn)換成TTL電平(5V為邏輯1,0V為邏輯0);CH240128液晶顯示屏負(fù)責(zé)顯示數(shù)據(jù)的接收情況。

    圖1 串口通信顯示系統(tǒng)硬件結(jié)構(gòu)

    首先由單片機(jī)、晶振、電阻及電容等構(gòu)成單片機(jī)最小系統(tǒng)[4],在最小系統(tǒng)的基礎(chǔ)上結(jié)合MXA232芯片引出DB9串行端口。將單片機(jī)串口發(fā)送TXD與PC機(jī)串口接收RXD相連,單片機(jī)串口接收RXD與PC機(jī)串口發(fā)送TXD相連,并將二者的地相連。依據(jù)CH240128液晶的引腳定義,將其與單片機(jī)I/O引腳相連。串口通信顯示系統(tǒng)的硬件電路如圖2所示。

    2 軟件設(shè)計(jì)

    軟件程序設(shè)計(jì)分為兩部分:一是運(yùn)行在PC 端的LabVIEW程序;二是運(yùn)行在單片機(jī)中的C51程序。結(jié)合硬件實(shí)現(xiàn)串口通信與顯示功能,即在PC端發(fā)送一串字符串,通過串口發(fā)送到單片機(jī)中,單片機(jī)接收到數(shù)據(jù)后返回該字符串,并將其顯示到液晶上。

    圖2 串口通信顯示系統(tǒng)硬件電路

    2.1 LabVIEW程序設(shè)計(jì)

    LabVIEW串口通信程序主要通過NI-VISA節(jié)點(diǎn)來完成,NI-VISA是一個(gè)字節(jié)級(jí)的通信接口驅(qū)動(dòng)。通過NI-VISA函數(shù)[5]編寫的程序可以在任何具有串行端口NI-VISA[6]的機(jī)器上運(yùn)行,這就意味可以在具有LabVIEW和Windows的機(jī)器上寫入和測(cè)試串行VI,然后在NI的板卡[7]上使用相同的程序。其中,NI-VISA主要包括串口初始化、串口寫、串口讀、Bytes of port[8]及串口關(guān)閉等函數(shù)。串口初始化主要負(fù)責(zé)設(shè)置串口號(hào)、波特率及奇偶校驗(yàn)等參數(shù)。為了下位機(jī)能正確識(shí)別數(shù)據(jù),在數(shù)據(jù)首尾添加標(biāo)識(shí)位后寫入串口。

    2.2 單片機(jī)程序設(shè)計(jì)

    單片機(jī)串口程序(圖3)參數(shù)要與上位機(jī)的參數(shù)設(shè)置一致(如波特率、奇偶校驗(yàn)[9]等)。利用判斷語句去除標(biāo)識(shí)位后,對(duì)上位機(jī)發(fā)送來的數(shù)據(jù)進(jìn)行解析,再將數(shù)據(jù)寫入串口緩沖區(qū)SBUF寄存器。為了在液晶顯示收到的數(shù)據(jù),需要按照液晶的驅(qū)動(dòng)時(shí)序圖設(shè)置寫數(shù)據(jù)及寫指令等時(shí)序完成液晶的驅(qū)動(dòng),還需匹配串口通信和液晶顯示的時(shí)序。由于液晶顯示需要一定的時(shí)間,而串口通信數(shù)據(jù)收發(fā)很快,難以做到收到一個(gè)字節(jié)就顯示一個(gè)字節(jié)的數(shù)據(jù),因此需要將收到的數(shù)據(jù)放到一個(gè)數(shù)組中以中斷的方式顯示數(shù)據(jù)。

    圖3 單片機(jī)程序流程框圖

    3 系統(tǒng)運(yùn)行調(diào)試

    結(jié)合硬件和軟件設(shè)計(jì),完成基于LabVIEW的單片機(jī)與PC機(jī)串口通信顯示系統(tǒng)設(shè)計(jì)。該系統(tǒng)運(yùn)行情況如圖4所示。在上位機(jī)發(fā)送數(shù)據(jù)123,單片機(jī)接收到數(shù)據(jù)后將123返回到上位機(jī),并將數(shù)據(jù)顯示在液晶屏上,實(shí)現(xiàn)了上位機(jī)(PC機(jī))與下位機(jī)(單片機(jī))的數(shù)據(jù)通信。

    圖4 串口通信顯示系統(tǒng)運(yùn)行界面

    4 結(jié)束語

    利用圖形化編程軟件LabVIEW設(shè)計(jì)了單片機(jī)與PC機(jī)串口通信顯示系統(tǒng),實(shí)際應(yīng)用表明,該系統(tǒng)通信穩(wěn)定、可靠,抗干擾能力強(qiáng),為上位機(jī)與下位機(jī)通信提供了新的解決方案。而且該系統(tǒng)可以移植到NI系列板卡中作為數(shù)據(jù)顯示裝置,具有實(shí)際工程應(yīng)用價(jià)值。

    [1] 徐超.LabVIEW在實(shí)時(shí)測(cè)控系統(tǒng)中的應(yīng)用研究[D].重慶:重慶大學(xué),2005.

    [2] 陳樹學(xué),劉萱.LabVIEW寶典[M].北京:電子工業(yè)出版社,2011:35~80.

    [3] 楊忠仁,饒程,鄒建,等.基于LabVIEW數(shù)據(jù)采集系統(tǒng)[J].重慶大學(xué)學(xué)報(bào)(自然科學(xué)版),2004,27(2):32~35.

    [4] 張毅剛,彭喜元,姜守達(dá),等. 新編MCS51單片機(jī)應(yīng)用設(shè)計(jì)[M]. 哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2012:8~13.

    [5] 阮奇楨. 我和LabVIEW[M]. 北京:北航空航天大學(xué)出版社,2009:56~98.

    [6] Johnson G W, Jennings R.LabVIEW Graphical Programming[M].New York:McGraw-Hill Professional, 2006: 65~70.

    [7] Travis J, Kring J. Labview for Everyone[M]. London: Prentice Hall, 2002:45~47.

    [8] Bitter R, Mohiuddin T, Nawrocki M. LabVIEW : Advanced Programming Techniques[M]. London: CRC Press Inc., 2006:89~93.

    [9] Beyon J Y.LabVIEW Programming,Data Acquisition and Analysis[M].London: Prentice Hall,2000:106~120.

    猜你喜歡
    PC機(jī)下位液晶
    不可壓液晶方程組的Serrin解
    《液晶與顯示》征稿簡(jiǎn)則
    液晶與顯示(2020年8期)2020-08-08 07:01:46
    發(fā)射機(jī)房監(jiān)控系統(tǒng)之下位機(jī)
    基于PC機(jī)與單片機(jī)的多機(jī)通信技術(shù)及抗干擾方法
    基于三菱FXPLC的感應(yīng)淬火機(jī)床與PC機(jī)的串行通信實(shí)現(xiàn)
    VC.NET下實(shí)現(xiàn)dsPIC單片機(jī)與PC機(jī)的通信
    電子制作(2017年23期)2017-02-02 07:16:47
    景洪電廠監(jiān)控系統(tǒng)下位機(jī)數(shù)據(jù)傳輸網(wǎng)絡(luò)改造
    圍觀黨“下位”,吐槽帝“登基”
    CAN總線并發(fā)通信時(shí)下位機(jī)應(yīng)用軟件設(shè)計(jì)
    液晶與顯示2015年第30卷第1期 目錄
    液晶與顯示(2015年1期)2015-02-28 21:15:54
    涞水县| 齐河县| 左贡县| 台江县| 阿勒泰市| 南乐县| 徐闻县| 安平县| 阳原县| 文安县| 陈巴尔虎旗| 益阳市| 海丰县| 松潘县| 兴宁市| 刚察县| 吴忠市| 高台县| 阿勒泰市| 内乡县| 宁国市| 咸阳市| 广水市| 当涂县| 武安市| 油尖旺区| 元阳县| 三明市| 读书| 长沙县| 吉安市| 霍州市| 乌苏市| 祥云县| 磐石市| 瑞丽市| 区。| 延寿县| 团风县| 永善县| 馆陶县|