




已閱讀5頁(yè),還剩53頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
畢 業(yè) 設(shè) 計(jì)(論 文)題 目:(三號(hào)楷體)摘 要虛擬儀器是一種利用計(jì)算機(jī)技術(shù)替代傳統(tǒng)儀器的全新概念儀器,本質(zhì)就是利用電腦優(yōu)越的硬件顯示性能替代傳統(tǒng)儀器達(dá)不到的顯示效果,用多種不同的方式顯示和存儲(chǔ)采集的信號(hào),根據(jù)電腦先進(jìn)的硬件處理設(shè)備來(lái)處理和分析采集回來(lái)的數(shù)據(jù),從而實(shí)現(xiàn)不同調(diào)試功能的pc虛擬儀器系統(tǒng)。本畢設(shè)依據(jù)labview虛擬儀器實(shí)現(xiàn)上位機(jī)與下位機(jī)之間的高速通訊,并根據(jù)labview中的visa功能,將其應(yīng)用于單片機(jī)串口通信中,通過(guò)labview發(fā)送循環(huán)計(jì)數(shù)的初值,單片機(jī)接收并顯示在數(shù)碼管上,從接收到的初值開(kāi)始計(jì)數(shù),同時(shí)單片機(jī)返回循環(huán)計(jì)數(shù)結(jié)果,最后在labview面板內(nèi)容上動(dòng)態(tài)顯示循環(huán)計(jì)數(shù)值。虛擬儀器軟件labview的問(wèn)世,大大提高了開(kāi)發(fā)效率,減編寫(xiě)程序的難度,縮短了研發(fā)周期,從而減少研發(fā)成本,為我們實(shí)際項(xiàng)目研發(fā)提高了效率,帶來(lái)了巨大財(cái)富。關(guān)鍵詞:labview; stc51單片機(jī); 串口通訊;數(shù)碼管顯示;pc and the microcontroller serial communication and indicating lamp control based on labviewabstractvirtual instrument is a kind of using computer technology to replace traditional instrument instrument of new concept, essence is the use of alternatives to traditional function of superior computer display instrument reach display effect, output measurement results in many different ways, and use the computer a powerful software function implementation evaluation of signal data, analysis and processing, complete all kinds of test functions of a computer instrument system.by using labview virtual instrument was introduced in this paper the tell communication between upper machine and lower machine, using the labview function, applied to the single chip microcomputer serial port communication, sent by labview initial value of the cycle count, microcontroller to receive and display on the digital tube, starting from the received initial count, microcontroller return cycle count results at the same time, the content of the labview panel on dynamic display cycle count. virtual instrument software labview, greatly improves the development efficiency, reduce the difficulty of the program, shorten the development cycle, reducing development costs, for our practical project research and development efficiency, brought huge wealth.keywords:labview; stc51 microcontroller; a serial port communication; digital tube display 目錄第1章 緒論1.1 課題的背景和意義61.2 課題實(shí)現(xiàn)內(nèi)容7第2章 軟硬件介紹 2.1 虛擬儀器與labview 2.2 虛擬儀器的概述82.2.1 虛擬儀器方案的組成92.2.2 虛擬儀器方案的優(yōu)勢(shì)92.2.3 虛擬儀器和傳統(tǒng)儀器的區(qū)別10 2.2.4 虛擬儀器的發(fā)展與現(xiàn)狀11 2.2.4 虛擬儀器的應(yīng)用112.3 labview簡(jiǎn)介122.4 labview基本特點(diǎn)132.5 stc89c51rc 單片機(jī)介紹132.6 單片機(jī)編程環(huán)境keil和下載軟件stc-isp介紹16第三章總體設(shè)計(jì)方案3.1系統(tǒng)總體方案設(shè)計(jì)183.2系統(tǒng)硬件的選擇183.2.1核心控制器選擇183.2.2上位機(jī)編程軟件的選擇193.2.3顯示系統(tǒng)選擇19第四章labview上位機(jī)介紹4.1 上位機(jī)程序內(nèi)容204.2 上位機(jī)框圖204.2.1 上位機(jī)前面板框圖204.2.2 上位機(jī)創(chuàng)建虛擬儀器過(guò)程214.2.3 上位機(jī)程序流程圖214.3 上位機(jī)labview串口通訊的實(shí)現(xiàn)22第五章單片機(jī)下位機(jī)設(shè)計(jì)5.1 下位機(jī)流程圖285.2 設(shè)計(jì)目的和實(shí)現(xiàn)方案295.2.1 設(shè)計(jì)目的295.2.2 實(shí)現(xiàn)方案295.3 系統(tǒng)硬件結(jié)構(gòu)295.3.1 系統(tǒng)硬件電路295.3.2 主控系統(tǒng)305.3.3 復(fù)位電路305.3.4 串口電路315.3.5 震蕩電路315.3.6 led電路325.3.7 數(shù)碼管顯示電路335.5 串行通信34 5.4.1 串行通信的概念和特點(diǎn)35 5.4.2 串行通信的分類(lèi)355.4.3 串行通信的工作模式365.4.4 單片機(jī)內(nèi)部串口配置38第六章系統(tǒng)整體調(diào)試 聯(lián)機(jī)調(diào)試40致謝42參考文獻(xiàn)42附錄43附錄1 原理圖44附錄2 單片機(jī)才程序45第一章 緒論1.1 課題的背景和意義labview是一種編譯軟件,和visual c+和keil累的的開(kāi)發(fā)環(huán)境,他是由美國(guó)國(guó)家儀器(ni)公司研制開(kāi)發(fā)的,但是它與其他高低端計(jì)算機(jī)語(yǔ)言的明顯不同是:labview使用圖形化語(yǔ)言編輯程序框圖,其以框圖的形式通俗易懂和中國(guó)的象形文字有異曲同工之妙,用戶(hù)只需要通過(guò)前面板即可操縱程序;其他語(yǔ)言如c語(yǔ)言、c+、c#、vb等語(yǔ)言都學(xué)起來(lái)要花費(fèi)大量的時(shí)間和精力,并且不容易讀懂。 labview內(nèi)部提供了很多庫(kù)函數(shù),使得編程就像畫(huà)畫(huà)一樣過(guò)容易。它的人機(jī)交互界面實(shí)時(shí)一大特色,利用圖形化界面,在屏幕上顯示一起的操作界面,只需要通過(guò)鼠標(biāo)和鍵盤(pán)操控,簡(jiǎn)單方便,儀器的各種參數(shù)選擇和控制方式都能通過(guò)人性化的界面來(lái)實(shí)現(xiàn)。 作為現(xiàn)代計(jì)算機(jī)技術(shù)與儀器技術(shù)二者結(jié)合的一項(xiàng)創(chuàng)新技術(shù),labview傳統(tǒng)儀器在人們心中的印象,順應(yīng)了現(xiàn)代測(cè)控智能化和網(wǎng)絡(luò)化的發(fā)展趨勢(shì)。目前,labview技術(shù)在工業(yè)控制、自動(dòng)控制和實(shí)驗(yàn)室建設(shè)等領(lǐng)域有著十分廣泛的應(yīng)用前景。 隨著信息技術(shù)的高速發(fā)展,在嵌入式系統(tǒng)設(shè)計(jì)和計(jì)算機(jī)系統(tǒng)設(shè)計(jì)中常常會(huì)遇到各個(gè)系統(tǒng)之間的通信問(wèn)題?,F(xiàn)在比較常用的數(shù)據(jù)通信方式有并行通信、串行通信兩種方式: 串行通信只能以位為單位進(jìn)行數(shù)據(jù)傳輸,通信速度比較慢,每個(gè)字節(jié)通常需要被拆分為很多比特位才能進(jìn)行傳輸,但串行通信在傳輸過(guò)程只需要一根數(shù)據(jù)線就可以完成數(shù)據(jù)流的發(fā)送,所以成本較低,因此適用于短距離通信或?qū)鬏斔俣纫蟛桓咄ㄐ艌?chǎng)合。并行通信可以以字節(jié)或多字節(jié)為單位進(jìn)行數(shù)據(jù)通信,因此他的傳輸速度非??炜?但需用的通訊線多,成本較高,并且不適宜遠(yuǎn)距離傳輸通常應(yīng)用于計(jì)算機(jī)總線和plc內(nèi)部總線之間的通信; 本課題運(yùn)用stc單片機(jī)實(shí)現(xiàn)嵌入式系統(tǒng)的構(gòu)建,用圖形化編輯軟件labview編寫(xiě)上位機(jī)控制系統(tǒng),實(shí)現(xiàn)了嵌入式系統(tǒng)與pc機(jī)之間的相互通信,并且用人性話的操作界面進(jìn)行控制。最終達(dá)到程序穩(wěn)定可靠地運(yùn)行,數(shù)據(jù)實(shí)時(shí)穩(wěn)定的顯示,可以通過(guò)pc機(jī)進(jìn)行遠(yuǎn)程監(jiān)控。本課題涵蓋了虛擬儀器技術(shù)、數(shù)字電路技術(shù)、串口通信技術(shù)、人機(jī)交互界面技術(shù)和一定程度上的平面設(shè)計(jì)技術(shù),這對(duì)進(jìn)一步提高學(xué)生的綜合素質(zhì),培養(yǎng)創(chuàng)新意識(shí),培養(yǎng)學(xué)生從事科學(xué)、技術(shù)研究能力有著重要意義。1.2 課題實(shí)現(xiàn)的內(nèi)容本設(shè)計(jì)基于labview虛擬儀器編寫(xiě)串口上位機(jī)控制系統(tǒng),同時(shí)編寫(xiě)以單片機(jī)為核心的數(shù)碼管動(dòng)態(tài)顯示系統(tǒng),上位機(jī)可以控制單片機(jī)循環(huán)顯示的初始數(shù)值,下位機(jī)將顯示的數(shù)值實(shí)時(shí)發(fā)回上位機(jī)進(jìn)行顯示。上位機(jī)上可以設(shè)置通信波特率、數(shù)據(jù)位、停止位,同時(shí)設(shè)有打開(kāi)串口按鈕、停止運(yùn)行按鈕、清空發(fā)送去按鈕、清空接收區(qū)按鈕;還有接收數(shù)據(jù)顯示文本框和發(fā)送數(shù)據(jù)顯示文本框,用戶(hù)通過(guò)設(shè)置串口通信參數(shù)和打開(kāi)串口按鈕即可與下位機(jī)進(jìn)行串口通信,并將下位機(jī)發(fā)回的數(shù)據(jù)實(shí)時(shí)顯示到pc機(jī)上,同時(shí)還可以控制循環(huán)的初始值。下位機(jī)以stc89c52單片機(jī)為主控制器,以8端數(shù)碼管為顯示系統(tǒng),單片機(jī)根據(jù)定時(shí)器0一秒定時(shí)和上位機(jī)的控制數(shù)據(jù)來(lái)進(jìn)行數(shù)碼管循環(huán)計(jì)數(shù)。同時(shí)設(shè)計(jì)單片機(jī)最小控制系統(tǒng),數(shù)碼管顯示系統(tǒng)電路,串口通訊電路,接收信息分析算法的設(shè)計(jì)。最后使用keil5軟件編程和stc-isp程序燒錄軟件。第二章軟硬件介紹2.1 虛擬儀器與labview2.1 虛擬儀器概述測(cè)量?jī)x器從發(fā)展到現(xiàn)在,總體上經(jīng)過(guò)四個(gè)階段,分別為模擬儀器、分立元件式儀器、數(shù)字化儀器和智能測(cè)量?jī)x器。然而隨著計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)的迅猛發(fā)展,新的測(cè)試?yán)碚摗y(cè)試方法、測(cè)試領(lǐng)域及測(cè)試儀器的不斷出現(xiàn),在很多方面早已突破傳統(tǒng)儀器的概念,電子測(cè)量?jī)x器的功能和作用已經(jīng)發(fā)生質(zhì)的變化。就在此刻虛擬儀器應(yīng)運(yùn)而生。虛擬儀器是在計(jì)算機(jī)機(jī)的高性能硬件平臺(tái)上,由用戶(hù)自己設(shè)計(jì)并定義界面顯示和功能的一種計(jì)算機(jī)儀器系統(tǒng)。虛擬儀器技術(shù)就是利用現(xiàn)有的高性能硬件模塊,并結(jié)合靈活高效的軟件來(lái)完成各種測(cè)試、測(cè)量和自動(dòng)化的應(yīng)用。靈活高效的軟件能夠開(kāi)發(fā)出完全符合用戶(hù)需求和習(xí)慣的界面,硬件的集成模塊能提高設(shè)計(jì)的集成度,同時(shí)大大縮減開(kāi)發(fā)周期。計(jì)算機(jī)跟測(cè)量?jī)x器的緊密配合是目前測(cè)量?jī)x器發(fā)展的一個(gè)重要方向。計(jì)算機(jī)與測(cè)量?jī)x器的結(jié)合大概分為兩種方式:一種是將計(jì)算機(jī)嵌入到測(cè)量?jī)x器當(dāng)中,智能化儀器就是一種典型的表現(xiàn),比如目前比較流行的嵌入式系統(tǒng);另外一種方式就是通過(guò)標(biāo)準(zhǔn)接口技術(shù)將所需的測(cè)量設(shè)備跟計(jì)算機(jī)連接,在高效快速的計(jì)算機(jī)硬件基礎(chǔ)上,實(shí)現(xiàn)不同的功能。而目前的虛擬儀器就是第二種方式。常見(jiàn)的虛擬儀方案如圖1.2所示。數(shù)據(jù)采集卡數(shù)據(jù)處理信號(hào)調(diào)理被測(cè)對(duì)象虛擬儀器面板圖1.2 虛擬儀器方案2.2.1 虛擬儀器方案的組成高效的軟件: 虛擬儀器技術(shù)中核心的部分就是軟件。有了正確高效的軟件工具,工程師們可以高效快捷地創(chuàng)建自己的應(yīng)用及漂亮的人機(jī)交互界面。ni公司提供的行業(yè)標(biāo)準(zhǔn)圖形化編程軟件labview,能簡(jiǎn)單快捷地與各種軟硬件進(jìn)行對(duì)接,并且能提供強(qiáng)大的后續(xù)數(shù)據(jù)處理能力,還有設(shè)置參數(shù),保存數(shù)據(jù)的功能,同時(shí)顯示客戶(hù)需要的數(shù)據(jù)。模塊化的i/o硬件:計(jì)算機(jī)與外部外設(shè)的通信方式主要通過(guò)對(duì)外通信接口(如rs232c,gpib,1394等)、信號(hào)轉(zhuǎn)換功能(如a/d,d/a,i/o卡等)以及總線通信(如vxi,pxi)等來(lái)實(shí)現(xiàn)的,ni提供了全方位的軟硬件的解決方案。不管使用者是使用pci、pxi、pcmcia、usb,ni都有現(xiàn)成成熟的方案。 以上所述的接口、模塊、板卡等硬件與傳感器和計(jì)算機(jī)組成完整的虛擬儀器系統(tǒng)。2.2.2 虛擬儀器方案的特點(diǎn)和優(yōu)勢(shì) 虛擬儀器技術(shù)有了好的編譯環(huán)境、標(biāo)準(zhǔn)的接口和集成的軟硬件平臺(tái)這三個(gè)重要的組成部分部分,才能充分發(fā)揮它的高性能,方便擴(kuò)展、開(kāi)發(fā)周期短以及集成度高這些優(yōu)勢(shì)。1、高性能 因?yàn)樘摂M儀器是在現(xiàn)代通用計(jì)算機(jī)的基礎(chǔ)之上產(chǎn)生的,所以它完美的繼承了計(jì)算機(jī)技術(shù)的高性能,高處理的優(yōu)點(diǎn),比如運(yùn)算速度,文件管理,圖像處理,數(shù)據(jù)分析等很多優(yōu)點(diǎn),這些優(yōu)點(diǎn)是傳統(tǒng)儀器望塵莫及的。2、方便擴(kuò)展 有了虛擬儀器,各種軟硬件工程師們就可以從畫(huà)pcb,電路設(shè)計(jì)和軟件代碼的編寫(xiě)中解放出來(lái),因?yàn)樘摂M儀器的靈活性,用戶(hù)可以根據(jù)項(xiàng)目升級(jí)或功能變動(dòng)二更新計(jì)算機(jī)系統(tǒng)或替換高效率的硬件模塊,這就極大地降低了成產(chǎn)成本和維護(hù)成本,大大的縮短了開(kāi)發(fā)周期,加速產(chǎn)品的上市時(shí)間。3、研發(fā)周期短 在研發(fā)項(xiàng)目的過(guò)程中虛擬儀器把計(jì)算機(jī)技術(shù)、測(cè)量?jī)x器和模塊之間的通信這些最新技術(shù)結(jié)合在一起。這些成熟的技術(shù)極大地為研發(fā)者節(jié)省時(shí)間,研發(fā)者就有更多的精力去想怎樣結(jié)合這些優(yōu)良的技術(shù)使得自己的產(chǎn)品更具有競(jìng)爭(zhēng)力。4、系統(tǒng)的開(kāi)放性強(qiáng)現(xiàn)在強(qiáng)大的云服務(wù),網(wǎng)絡(luò)的高速發(fā)展使得我們可以足不出戶(hù)即可得知天下事,同樣虛擬儀器是在計(jì)算機(jī)基礎(chǔ)上發(fā)展而來(lái),因此他也具有與其他設(shè)備進(jìn)行遠(yuǎn)程檢測(cè)和管理的優(yōu)越性,并且基于網(wǎng)絡(luò)平臺(tái),他可以和其他高檔外設(shè)通過(guò)網(wǎng)絡(luò)通信,應(yīng)用領(lǐng)域明顯擴(kuò)大。2.2.3 虛擬儀器pk傳統(tǒng)儀器 虛擬儀器有軟件和硬件兩方面組成,軟件有圖形化界面編輯出虛擬操作平臺(tái),功能可以隨以根據(jù)功能進(jìn)行編寫(xiě),非常靈活,同時(shí)它還兼容各種設(shè)備驅(qū)動(dòng),也就是說(shuō)兼容傳統(tǒng)儀器,使用面廣, 傳統(tǒng)儀器都是按需制的,功能單一,價(jià)格昂貴,兼容性不太好具體空下表中看出。虛擬儀器傳統(tǒng)儀器用戶(hù)自己設(shè)計(jì)功能廠家定義各種功能與外設(shè)連接簡(jiǎn)單只能與特定儀器連接研發(fā)周期較短儀器研發(fā)需要時(shí)間較長(zhǎng)一起研發(fā)成本低儀器研成本高升級(jí)軟硬件功能簡(jiǎn)單改變功能復(fù)雜重復(fù)利用簡(jiǎn)單重復(fù)利用困難無(wú)限擴(kuò)展存儲(chǔ)空間有限的存儲(chǔ)空間研發(fā)主要是軟件設(shè)計(jì)研發(fā)主要是硬件設(shè)計(jì)表1.1虛擬儀器與傳統(tǒng)儀器的區(qū)別2.2.4 虛擬儀器的發(fā)展與現(xiàn)狀 虛擬儀器還沒(méi)有問(wèn)世的時(shí)候,傳統(tǒng)儀器設(shè)備占據(jù)著各大市場(chǎng)領(lǐng)域。每一種儀器都具有特定的功能,有時(shí)候研發(fā)一個(gè)項(xiàng)目需要購(gòu)置大批的測(cè)量?jī)x器,并且每一種儀器都需要人工親自完成,隨著計(jì)算機(jī)技術(shù)的發(fā)展,虛擬儀器的發(fā)展大致經(jīng)歷了以下幾個(gè)歷程。 第一個(gè)歷程是利用用計(jì)算機(jī)的先進(jìn)功能功能來(lái)提高傳統(tǒng)測(cè)量?jī)x器的性能。因?yàn)橛?jì)算機(jī)的快速發(fā)展和一系列標(biāo)準(zhǔn)的通信接口,使得電腦可以很隨意的與各種高精度的一起之間進(jìn)行通信,我們只需要把需要的測(cè)量?jī)x器通過(guò)一定轉(zhuǎn)接技術(shù)與電腦連接上,工程師們就可以通過(guò)熟悉的電腦界面進(jìn)行對(duì)測(cè)量?jī)x器進(jìn)行不間斷地監(jiān)控。 第二個(gè)歷程是一種常見(jiàn)的接口和開(kāi)放式的硬件。隨著科技進(jìn)步和信息化的發(fā)展,各種測(cè)量?jī)x器出現(xiàn)了質(zhì)的飛躍:數(shù)據(jù)采集卡和一系列標(biāo)準(zhǔn)總線結(jié)構(gòu)的確立。這些新的標(biāo)準(zhǔn)就使得不同測(cè)量?jī)x器之間的通信阻礙減小。 第三個(gè)歷程虛擬儀器生成了一種編程標(biāo)準(zhǔn),通信協(xié)議,總線通信,和硬件接口都有了統(tǒng)一的執(zhí)行標(biāo)準(zhǔn),因此工程師們九個(gè)以把精力放在程序的編寫(xiě)和功能上面的擴(kuò)展上就不需要考慮各種通信協(xié)議的問(wèn)題,大大節(jié)約了研發(fā)時(shí)間。上述經(jīng)理的歷程當(dāng)中,我們可以發(fā)現(xiàn)虛擬儀器的發(fā)展有兩個(gè)重要的標(biāo)志:一是總線標(biāo)準(zhǔn)的確立和應(yīng)用;二是使用了圖像化編程語(yǔ)言,用戶(hù)可以很容易的根據(jù)要求編寫(xiě)特定功能,提高了研發(fā)的效率,減少了研發(fā)的成本。2.2.5 虛擬儀器的應(yīng)用1 監(jiān)控方面通過(guò)虛擬儀器,我們可以遠(yuǎn)離一些危險(xiǎn)的場(chǎng)所,只需要放置一些高靈敏的傳感器,并將傳感器采集到的數(shù)據(jù)遠(yuǎn)程發(fā)回給上位機(jī)。2 教育教學(xué)方面由于虛擬儀器的快速發(fā)展,目前已擴(kuò)展至各個(gè)領(lǐng)域,教育方面也不例外,引起簡(jiǎn)介的編程方式和高效率的研發(fā)過(guò)程使得教學(xué)部門(mén)也使用該軟件編寫(xiě)教學(xué)管理系統(tǒng),使得教學(xué)方法更加的靈活。3 嵌入式系統(tǒng)因?yàn)樘摂M儀器中有很多通信接口就來(lái)自與嵌入式系統(tǒng),我們可以通過(guò)虛擬儀器編寫(xiě)上位機(jī)監(jiān)控系統(tǒng)實(shí)時(shí)控制下位機(jī)的的狀態(tài)??梢哉f(shuō)虛擬儀器應(yīng)用設(shè)計(jì)各個(gè)行業(yè)領(lǐng)域,尤其是在工業(yè)控制領(lǐng)域,他的問(wèn)世也是嵌入式技術(shù)的一次革新。2.3 labview簡(jiǎn)介labview的簡(jiǎn)稱(chēng)是實(shí)驗(yàn)室虛擬儀器集成環(huán)境,器英文全稱(chēng)為laboratory virtual instrument engineering workbench,美國(guó)國(guó)家儀器公司(nationai instruments,簡(jiǎn)稱(chēng)ni)是labview的生產(chǎn)者。 labview為研發(fā)者提供了一種快速設(shè)計(jì)自己的測(cè)試控制系統(tǒng)的方法,用圖形化編輯語(yǔ)言進(jìn)行設(shè)計(jì),高效,快速準(zhǔn)確。計(jì)算機(jī)快速的運(yùn)算能力與專(zhuān)一硬件的采集和傳輸能力結(jié)合在一起,極大地縮小了研發(fā)時(shí)間和研發(fā)成本。labview技術(shù)移植伴隨著計(jì)算機(jī)技術(shù)的發(fā)展而跟著提高,同時(shí)他還能通過(guò)網(wǎng)絡(luò)與旁路設(shè)備進(jìn)行互相聯(lián)機(jī)通信,我們只需要添加或減少一部分框圖內(nèi)容即可改變測(cè)量?jī)晒δ?,擴(kuò)展性非常強(qiáng),并且這十分簡(jiǎn)單。labview和visual c+等一樣也是一種常用的編程工具,它內(nèi)部有很多成熟穩(wěn)定的庫(kù)函數(shù),用戶(hù)只需要調(diào)用相應(yīng)的函數(shù)即可實(shí)現(xiàn)自己想要的共能,浙西二庫(kù)函數(shù)有數(shù)據(jù)分析,數(shù)據(jù)處理,穿行通信,聯(lián)網(wǎng)通信,保存數(shù)據(jù)等功能。labview也可以實(shí)現(xiàn)仿真調(diào)試,和c語(yǔ)言一樣能夠單步連續(xù)的執(zhí)行程序,進(jìn)行一步一步分析自己程序的可靠性。另外labview還有實(shí)時(shí)監(jiān)控程序運(yùn)行的功能,可以設(shè)置斷點(diǎn)和檢測(cè)探頭來(lái)實(shí)時(shí)監(jiān)控程序。使得開(kāi)發(fā)起來(lái)更加有效、快捷方便。labview的編程語(yǔ)言和傳統(tǒng)的語(yǔ)言不同,它采用了圖形語(yǔ)言g語(yǔ)言,這種語(yǔ)言直觀通俗易懂,編起程序來(lái)高效快速。同時(shí)他還方便其他讀者閱讀程序,方便移植和理解。圖形化語(yǔ)言隨著虛擬儀器的告訴發(fā)展將來(lái)定會(huì)成為一種編程標(biāo)準(zhǔn)。2.4 labview的基本特點(diǎn)1 具有良好的圖形用戶(hù)界面:labview 編寫(xiě)出來(lái)的程序大方美觀,有著和傳統(tǒng)儀器一樣的操作面板,各種人性化的控制按鈕,表盤(pán)顯示,圖表波形顯示,更加美觀漂亮。2 編寫(xiě)方式:labview采用的圖形化編程方式比其他語(yǔ)言都簡(jiǎn)單,并且閱讀起來(lái)也很方便的。3 模塊化和層次分明:labview編寫(xiě)的vi面板可作為用戶(hù)層程序來(lái)使用,我們還可以將vi制作為子vi共其他程序調(diào)用,因此模塊化程度很高。4 調(diào)試方便:當(dāng)labview編好程序后,我們?cè)鯓域?yàn)證自己程序的可行性呢,如果直接放到項(xiàng)目工程中進(jìn)行測(cè)試肯定不現(xiàn)實(shí),那么我們就可以一部一部讓程序執(zhí)行,通過(guò)觀察每一塊程序的結(jié)果來(lái)驗(yàn)證程序執(zhí)行有沒(méi)有問(wèn)題。2.5 stc89c51rc 單片機(jī)介紹單片機(jī)最先是有intel的8031單片機(jī)發(fā)展而來(lái)的,隨著flash技術(shù)的迅速發(fā)展,51單片機(jī)橫空出世,遍布各個(gè)電子控制行業(yè),他是目前市面上最普遍的8位單片機(jī),后來(lái)由于其廣泛的應(yīng)用,很多大的公司看上了他的發(fā)展前景,紛紛推出以51為內(nèi)核的8位單片機(jī),像atmel公司的at89系列單片機(jī),被應(yīng)用到共坑測(cè)量領(lǐng)域。intel的80c31、80c51、87c51、80c32、等系列:philips、華邦dallas等公司的許多產(chǎn)品都是基于51內(nèi)核的。國(guó)內(nèi)盛行的51單片機(jī)主要是宏晶公司推出的stc系列單片機(jī),由于其價(jià)格便宜,能耗低,并且很穩(wěn)定,國(guó)內(nèi)很多地方都還在使用旗下的51單片機(jī)。stc單片機(jī)發(fā)展歷程從stc899010111215系列,分別各有特點(diǎn)。stc89系列是傳統(tǒng)的單片機(jī)和at89系列單片機(jī)之間相互通用,這一系列單片機(jī)為12t單片機(jī)。在89系列上直接發(fā)展起來(lái)的是90系列,10和11系列單片機(jī)是比較廉價(jià)的1t單片機(jī),內(nèi)部設(shè)有硬件pwm和eeprom功能,但都沒(méi)有數(shù)模轉(zhuǎn)換功能。12系列是增強(qiáng)型功能的1t單片機(jī),具有a|d轉(zhuǎn)換功能。因?yàn)槠涔δ軓?qiáng)大,價(jià)格低廉所以是市場(chǎng)上的主流產(chǎn)品。15系列是為了去掉外接晶振,防止因環(huán)境變化引起的頻率飄逸問(wèn)題,內(nèi)部集成高精度rc震蕩電路,因此完全不需要外界晶振即可工作。下圖分別為51單片機(jī)的應(yīng)引腳圖和內(nèi)部結(jié)構(gòu)框圖。圖2.1 51芯片引腳分布51單片機(jī)分為貼片式和直插式,貼片體積小便于集成,直插式體積大但是方便焊接。上圖為直插式40引腳原理圖。圖2.2 c51單片機(jī)p0、p1、p2、p3共4組32個(gè)io輸入輸出口;內(nèi)部有111條指令,大部分為單字節(jié)指令21個(gè)專(zhuān)用寄存器2個(gè)可編程定時(shí)/計(jì)數(shù)器,5個(gè)中斷源,2個(gè)優(yōu)先級(jí)(52有6個(gè))一個(gè)全雙工串行通信口外部數(shù)據(jù)存儲(chǔ)器尋址空間為64kb外部程序存儲(chǔ)器尋址空間為64kb邏輯操作位尋址功能一個(gè)+5v電源供電cpu由運(yùn)算器和控制器,同時(shí)還包括中斷系統(tǒng)和部分外部特殊功能寄存器;ram(讀寫(xiě)存儲(chǔ)器)存放程序運(yùn)行過(guò)程中產(chǎn)生的中間過(guò)程變量和一些臨時(shí)變量;rom(制度存儲(chǔ)器)用以存放程序、一些原始數(shù)據(jù);i/o口:輸入輸出口,可讀可寫(xiě)。兩個(gè)多功能計(jì)數(shù)器模塊,可設(shè)為定時(shí)器模式或計(jì)數(shù)器模式:五個(gè)中斷源的中斷控制系統(tǒng);一個(gè)全雙工uart(通用異步接收發(fā)送器)的串行i/o口,用于實(shí)現(xiàn)單片機(jī)之間或單片機(jī)與微機(jī)之間的串行通信;2.6 單片機(jī)編程環(huán)境keil和下載軟件stc-isp介紹keil是arm公司發(fā)布的,它包含編譯器、調(diào)試工具實(shí)現(xiàn)了與單片機(jī)編程的完美工具。提高研發(fā)人員的編程效率,該版本增加了很多常用的功能,切實(shí)的照顧到了編程人員的編程習(xí)慣。keil是用來(lái)編譯c語(yǔ)言的編程環(huán)境如下圖所示圖2.3 keil5-logo圖2.4 keil5-編譯界面keil工程的建立過(guò)程:編 輯 c文 件選 擇 器 件新 建 項(xiàng) 目編 譯生成hex文件stc-isp下載軟件程序燒錄過(guò)程點(diǎn) 擊 下 載 按 鈕打 開(kāi) 文件選 擇 波 特 率選 擇 器 件 型 號(hào)第三章系統(tǒng)方案設(shè)計(jì)3.1系統(tǒng)總體方案設(shè)計(jì)下位機(jī)以stc89c52單片機(jī)為主控制器,以8端數(shù)碼管為顯示系統(tǒng),單片機(jī)根據(jù)定時(shí)器0一秒定時(shí)和上位機(jī)的控制數(shù)據(jù)來(lái)進(jìn)行數(shù)碼管循環(huán)計(jì)數(shù)。同時(shí),利用labview2012軟件,編寫(xiě)一個(gè)串口上位機(jī)通信界面。通過(guò)這個(gè)上位機(jī)界面能夠控制單片機(jī)循環(huán)計(jì)數(shù)的初值,并且接收單片機(jī)返回的實(shí)時(shí)計(jì)數(shù)值顯示在上位機(jī)上。數(shù)碼管顯示ch340 usb轉(zhuǎn)串口stc89c51rclabview上位機(jī)圖3.1總體設(shè)計(jì)3.2 系統(tǒng)硬件的選擇3.2.1核心控制器選擇方案一:arm一般用于高性能高進(jìn)度場(chǎng)合,優(yōu)勢(shì)是能耗低,精度高。但是成本高,不容易上手,操作麻煩,對(duì)于步進(jìn)電機(jī)來(lái)說(shuō)有點(diǎn)大材小用。方案二:avr價(jià)格稍貴,性?xún)r(jià)比高,自制下載線方便,存儲(chǔ)空間較大,c編譯器有多種。技術(shù)成熟,資料多,上手容易,性?xún)r(jià)比是它的優(yōu)勢(shì)。方案三:stc89系列單片機(jī)便宜功耗低,操作簡(jiǎn)單,速度不太好,但是資料成熟,上手容易。經(jīng)三方比較,stc89c52rc實(shí)惠,資料成熟且其前,并且滿(mǎn)足本設(shè)計(jì)需要,容易學(xué)習(xí),所以選擇該單片機(jī)小系統(tǒng)。3.2.2上位機(jī)編程軟件的選擇方案一:visual 2013用fmc語(yǔ)言編寫(xiě)windows窗體控件,里面也有串口控件,需要學(xué)習(xí)c+語(yǔ)言。方案二:用c#語(yǔ)言需要學(xué)習(xí)java語(yǔ)言,java程序?qū)W習(xí)比較困難。方案三:用labview編寫(xiě)上位機(jī),可視化的編程環(huán)境,圖形化的編程語(yǔ)言,方便快捷并且容易簡(jiǎn)單。通過(guò)對(duì)比這些,我們選擇用labview來(lái)編寫(xiě)本次上位機(jī)。由于其編程方便,開(kāi)發(fā)周期短,語(yǔ)言容易學(xué)習(xí)。3.2.3顯示系統(tǒng)選擇 方案一:利用1602液晶顯示屏,1602可以顯示英文和數(shù)字,并有成熟的文檔資料,程序編寫(xiě)起來(lái)稍微復(fù)雜點(diǎn),價(jià)格也較貴。方案二:利用諾基亞5110lcd液晶顯示屏模塊顯示??梢燥@示英文漢字,相對(duì)比較便宜。方案三:用數(shù)碼管顯示,數(shù)碼管編寫(xiě)程序簡(jiǎn)單,價(jià)格低廉,資料齊全,電路設(shè)計(jì)比較簡(jiǎn)單,只能顯示數(shù)字。因?yàn)槲覀兇舜卧O(shè)計(jì)只需要顯示循環(huán)變動(dòng)的數(shù)字,所以我們選擇數(shù)碼管顯示電路。第四章 labview上位機(jī)設(shè)計(jì)4.1上位機(jī)程序內(nèi)容上位機(jī)上可以設(shè)置通信波特率、數(shù)據(jù)位、停止位,同時(shí)設(shè)有打開(kāi)串口按鈕、停止運(yùn)行按鈕、清空發(fā)送去按鈕、清空接收區(qū)按鈕;還有接收數(shù)據(jù)顯示文本框和發(fā)送數(shù)據(jù)顯示文本框,用戶(hù)通過(guò)設(shè)置串口通信參數(shù)和打開(kāi)串口按鈕即可與下位機(jī)進(jìn)行串口通信,并將下位機(jī)發(fā)回的數(shù)據(jù)實(shí)時(shí)顯示到pc機(jī)上,同時(shí)還可以控制循環(huán)的初始值。上位機(jī)通過(guò)編寫(xiě)串口通訊程序,在labview中是visa,包括visa參數(shù)配置包括波特率,數(shù)據(jù)位,停止位,校驗(yàn)位等。通過(guò)write visa發(fā)送串口信息,通過(guò)read visa讀取串口信息,并顯示出來(lái)。4.2上位機(jī)框圖4.2.1上位機(jī)前面板框圖:接收區(qū)打開(kāi)串口發(fā)送數(shù)據(jù)發(fā)送區(qū)清空接收區(qū)清空發(fā)送區(qū)4.2.2上位機(jī)創(chuàng)建虛擬儀器過(guò)程運(yùn)行和調(diào)試程序創(chuàng)建框圖程序創(chuàng)建前面板建立vi4.2.3程序流程圖:開(kāi)始打開(kāi)串口串口初始化清空緩存區(qū)發(fā)送數(shù)據(jù)發(fā)送串口數(shù)據(jù)清空發(fā)送緩存區(qū)發(fā)送數(shù)據(jù)發(fā)送循環(huán)初值4.3 上位機(jī)labview串口通訊的實(shí)現(xiàn)本上位機(jī)主要用到串口通信模塊,visa是本設(shè)計(jì)的重點(diǎn)所在,也是一個(gè)重要樞紐。程序外層用一個(gè)循環(huán)結(jié)構(gòu)加枚舉變量,同時(shí)在循環(huán)結(jié)構(gòu)上添加以個(gè)移位寄存器,使得程序先初始化,再進(jìn)入到接收和發(fā)送函數(shù)。visa子vi如下圖圖4.2子vi 4.3 子vi前面板通過(guò)前面板就可以設(shè)置波特率為9600,數(shù)據(jù)位為8位,無(wú)奇偶校驗(yàn),1個(gè)停止位。 4.4 上位機(jī)主程序框圖主程序有一個(gè)循環(huán)結(jié)構(gòu),和若干個(gè)條件結(jié)構(gòu)和一個(gè)事件觸發(fā)結(jié)構(gòu)構(gòu)成。 程序設(shè)計(jì)的步驟如下:1建立新vi程序 打開(kāi)labview應(yīng)用程序,點(diǎn)擊新建按鈕,然后選擇vi從而創(chuàng)建一個(gè)新的vi程序。2程序前面板設(shè)計(jì) 在新建的前面板設(shè)計(jì)區(qū)右擊鼠標(biāo)右鍵,有一個(gè)工具選擇塊,我們可一點(diǎn)擊左上角將其鎖定到前面板。(1)添加一個(gè)字符串輸入控件:點(diǎn)擊控件-express-字符串輸入控件,雙擊將其添加到前面板上,并將標(biāo)簽改為“發(fā)送循環(huán)數(shù)據(jù)(十六進(jìn)制)”,將鼠標(biāo)移動(dòng)到該控件上并點(diǎn)擊鼠標(biāo)右鍵,選擇“十六進(jìn)制顯示”。(2)添加一個(gè)字符串顯示控件:點(diǎn)擊控件-express-字符串輸入控件,雙擊將其添加到前面板上,并將標(biāo)簽改為“接收緩沖區(qū)”,將鼠標(biāo)移動(dòng)到該控件上并點(diǎn)擊鼠標(biāo)右鍵,選擇“正常顯示”。(3)添加一個(gè)串口資源檢測(cè)控件:控件-新式-i/o-visa資源名稱(chēng); (4)添加一個(gè)確定按鈕控件:控件-express-按鈕與開(kāi)關(guān)-ok按鈕,將標(biāo)題改為“打開(kāi)串口”。(5)添加一個(gè)停止按鈕控件:控件-express-按鈕與開(kāi)關(guān)-ok按鈕,將標(biāo)題改為“停止運(yùn)行”。(6)添加一個(gè)清空接收區(qū)按鈕控件:控件-express-按鈕與開(kāi)關(guān)-ok按鈕,將標(biāo)題改為“清空接收區(qū)”。(7)添加一個(gè)停止按鈕控件:控件-express-按鈕與開(kāi)關(guān)-ok按鈕,將標(biāo)題改為“清空發(fā)送區(qū)”。(8)添加一個(gè)停止按鈕控件:控件-express-按鈕與開(kāi)關(guān)-ok按鈕,將標(biāo)題改為“發(fā)送字符”。(9)點(diǎn)擊接收區(qū),右擊鼠標(biāo)選擇自動(dòng)換行。上位機(jī)面板如圖4.5所示。圖4.5上位機(jī)控制程序前面板3框圖程序設(shè)計(jì)添加函數(shù)并連線 在前面板點(diǎn)擊窗口,選擇顯示到程序框圖,或者用快捷鍵ctrl+e。(1)添加一個(gè)枚舉常量:編程-數(shù)值-枚舉常量。(2)添加4個(gè)數(shù)值常量:編程-數(shù)值-數(shù)值常量,值分別為9600(波特率)、8(數(shù)據(jù)位)、0(校驗(yàn)位,無(wú))、1(停止位)。(3)添加一個(gè)while循環(huán)結(jié)構(gòu):編程-結(jié)構(gòu)-while循環(huán)。(4)在while循環(huán)結(jié)構(gòu)上右擊創(chuàng)建移位寄存器。(5)關(guān)閉串口函數(shù):編程-儀器i/o-串口(serial)-visa關(guān)閉。(6)讀取串口函數(shù):編程-儀器i/o-串口(serial)-visa讀取。(7)寫(xiě)入串口函數(shù):編程-儀器i/o-串口(serial)-visa寫(xiě)入。(8)在前面板添加一個(gè)字符串組合框:新式-字符串-組合切換到框圖面板修改標(biāo)簽為端口號(hào)。(9)在端口號(hào)后面添加一個(gè)條件結(jié)構(gòu),點(diǎn)擊條件結(jié)構(gòu)在下拉菜單,選擇在后面添加分支,總共有3個(gè)分支0、1、2、3、4,。(10)在條件結(jié)構(gòu)分支0中加入visa資源名稱(chēng)修改名字為asrl1:instr。同樣在1和4中添加asrl2:instr和asrl3:instr一直到asrl5:instr(11)添加一個(gè)波特率選擇組合框,在前面板添加一個(gè)字符串組合框:新式-字符串-組合切換到框圖面板修改標(biāo)簽為波特率。:(12)在波特率號(hào)后面添加一個(gè)條件結(jié)構(gòu),點(diǎn)擊條件結(jié)構(gòu)在下拉菜單,選擇在后面添加分支,總共有3個(gè)分支0、1、2,。(13)分別在0 1 2 分支中計(jì)入數(shù)字常量,2400 9600 和115200。(14)右鍵選擇循環(huán)結(jié)構(gòu)的條件端子,設(shè)置為“真時(shí)停止”,圖標(biāo)變?yōu)?。并點(diǎn)擊創(chuàng)建常量f就是一直在里面循環(huán),我們的退出是用關(guān)閉程序的stop。(15)編輯對(duì)話框錯(cuò)誤輸出:編輯-對(duì)話框與用戶(hù)程序-建議錯(cuò)誤處理器并將其和visa資源配置設(shè)置的錯(cuò)誤輸出連接。(15)添加一個(gè)條件結(jié)構(gòu),真和假兩個(gè)分支,?連接到錯(cuò)誤代碼端子。(16)在真分支中添加但按鈕對(duì)話框,輸入為(串口不存在或一打開(kāi))。(17)將visa串口字節(jié)數(shù)函數(shù)的輸出端口visa資源名稱(chēng)與visa讀取函數(shù)的輸入端口visa資源名稱(chēng)相連。(18)添加一個(gè)條件結(jié)構(gòu),并在里面添加兩個(gè)條件結(jié)構(gòu),里面的分別為發(fā)送數(shù)據(jù)的條件結(jié)構(gòu)和接收數(shù)據(jù)的條件結(jié)構(gòu)。(19)在最外層的條件結(jié)構(gòu)也添加兩個(gè)條件結(jié)構(gòu),一個(gè)為清空發(fā)送區(qū)另一個(gè)為清空接收區(qū)。(20)將打開(kāi)串口按鈕連接到第二層條件結(jié)構(gòu)的?好上。在第二層內(nèi)添加一個(gè)定時(shí)器控件,并創(chuàng)建一個(gè)20的常量。(21)按要求連接各個(gè)控件。 連接好的程序框圖如圖5.11所示。圖4.6 pc與單片機(jī)串口通信程序框圖(22)在while循環(huán)外部再建一個(gè)事件結(jié)構(gòu):編程-結(jié)構(gòu)-事件結(jié)構(gòu)。(23)將第一個(gè)分支改變?yōu)椤巴V埂敝蹈淖?。?4)在外面添加一個(gè)停止程序控件:編程-應(yīng)用程序控件-停止,(25)在內(nèi)部將停止按鈕拖拽進(jìn)來(lái),并將各個(gè)按鈕的狀態(tài)恢復(fù)到默認(rèn)值,并將串口關(guān)閉。圖4.6 停止程序事件框圖4調(diào)試運(yùn)行程序當(dāng)編輯好程序框圖后及時(shí)點(diǎn)擊保存按鈕。在使用串口線與單片機(jī)相連,并確定通信狀態(tài)正常后,單擊快捷工具欄中的“連續(xù)運(yùn)行”按鈕,運(yùn)行程序。程序運(yùn)行界面如圖5.12所示。圖5.12 程序運(yùn)行界面操作步驟: 1、點(diǎn)擊坐上角連續(xù)運(yùn)行按鈕。 2、根據(jù)電腦設(shè)備管理的com口選擇com口。3、設(shè)置波特率為9600。4、點(diǎn)擊打開(kāi)按鈕,指示燈亮表示正常。5、停止運(yùn)行為退出vi程序。在發(fā)送循環(huán)數(shù)據(jù)框內(nèi)輸入16進(jìn)制數(shù),單片機(jī)收到后會(huì)以此數(shù)值為初值進(jìn)行循環(huán)計(jì)數(shù),并將結(jié)果義字符串的形式返回給上位機(jī)。第五章 單片機(jī)下位機(jī)設(shè)計(jì)5.1 下位機(jī)流程圖程序流程圖:開(kāi)始定時(shí)器0、串口、數(shù)碼管初始化定時(shí)器中斷y循環(huán)計(jì)數(shù)值加1n退出中斷串口中斷 ynum_count = sbuf; n 退出中斷 數(shù)碼管實(shí)時(shí)顯示循環(huán)計(jì)數(shù)值 5.2 設(shè)計(jì)目的和實(shí)現(xiàn)方案5.2.1 設(shè)計(jì)目的本課題主要設(shè)計(jì)單片機(jī)串口通信,以labview作為上位機(jī),以串行通信為媒介實(shí)現(xiàn)嵌入式和電腦上之間進(jìn)行通信。串型通信方式是是電子信息領(lǐng)用和工業(yè)控制里面常用的交流信息的方式,因?yàn)槠涮攸c(diǎn)的限制適用于對(duì)傳送數(shù)據(jù)速度不高的場(chǎng)合,但是串口通信成本低廉通信方式簡(jiǎn)單。用labview編輯出的人性化的上位機(jī)界面,是縮短了了研發(fā)的時(shí)間,并使得不同設(shè)備的相互通信變得非常簡(jiǎn)單。5.2.2 實(shí)現(xiàn)方案本設(shè)計(jì)基于labview虛擬儀器編寫(xiě)串口上位機(jī)控制系統(tǒng),同時(shí)編寫(xiě)以單片機(jī)為核心的數(shù)碼管動(dòng)態(tài)顯示系統(tǒng),上位機(jī)可以控制單片機(jī)循環(huán)顯示的初始數(shù)值,下位機(jī)將顯示的數(shù)值實(shí)時(shí)發(fā)回上位機(jī)進(jìn)行顯示。5.3 下位機(jī)硬件設(shè)計(jì)5.3.1 系統(tǒng)總硬件電路在該論文設(shè)計(jì)的串口通信控制系統(tǒng)中,硬件電路有主控制電路、數(shù)碼管顯示電路、led顯示電路、電源指示電路、復(fù)位電路、始終電路、數(shù)碼管驅(qū)動(dòng)電路、ch340 usb轉(zhuǎn)串口電路。組成如下圖5.1所示圖5.1系統(tǒng)原理圖5.3.2 主控制系統(tǒng)主控電路負(fù)責(zé)循環(huán)數(shù)的計(jì)時(shí)顯示,和跟上位機(jī)的通信,因?yàn)閜0口沒(méi)有驅(qū)動(dòng)電路所以需要加上拉電阻。圖5.2主控電路5.3.3復(fù)位電路單片機(jī)在發(fā)生異常時(shí)可以通過(guò)復(fù)位按鈕來(lái)恢復(fù)系統(tǒng)正常工作,51單片機(jī)的復(fù)位信號(hào)為高電平,因此可以通過(guò)外部電路實(shí)現(xiàn)自動(dòng)復(fù)位、手動(dòng)復(fù)位或看門(mén)狗復(fù)位。因?yàn)槲覀冇玫氖莝tc89c52rc沒(méi)有內(nèi)部看門(mén)狗復(fù)位所以我們?cè)O(shè)計(jì)手動(dòng)復(fù)位電路,電路如圖5.3所示,剛開(kāi)始電容充電,在陶瓷電容的陽(yáng)極充滿(mǎn)電,當(dāng)復(fù)位按鈕按下時(shí)電容會(huì)放電并保持一段時(shí)加大到單片機(jī)復(fù)位的效果。復(fù)位電路路比較簡(jiǎn)單,是電阻和電容組合二實(shí)現(xiàn)的。圖5.3復(fù)位電路5.3.4串口電路串口電路是本設(shè)計(jì)的的關(guān)鍵技術(shù),主要用到了串口轉(zhuǎn)usb通信,實(shí)現(xiàn)單片機(jī)與電腦之間的通信。本電路的串口通信使用usb轉(zhuǎn)串口芯片ch340是一個(gè)usb總線的轉(zhuǎn)接芯片,該芯片支持5v電壓或3.3v電壓,其電路圖如下圖3.4圖5.4 串口電路5.3.5震蕩電路 單片機(jī)要想正常工作就必須有一個(gè)時(shí)鐘電路,就像生命需要心臟跳動(dòng)一樣,80c51內(nèi)部有高增益反響放大器,輸入輸出分別為xtal1,輸出引腳為xtal2,從而構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。外部時(shí)鐘電路為單片機(jī)的工作提供一個(gè)時(shí)間基準(zhǔn),51單片機(jī)右兩種方式提供這種震蕩頻率,因?yàn)槲覀冇玫?9c52rc沒(méi)有內(nèi)部震蕩源,所以我們選擇用外部震蕩元電路為單片機(jī)提供時(shí)鐘電路。圖5.5晶振電路5.3.6led指示電路led為發(fā)光二極管,具有單向?qū)щ娦?,大約通過(guò)5ma左右的電流就能被點(diǎn)亮了,如果電流太大的話就會(huì)燒毀二極管,二極管的壓降約為1.7v,為導(dǎo)通壓降。發(fā)光二極管分為直插式和貼片式。點(diǎn)亮二極管可分為共陽(yáng)極或共陰極電路,我們的電路采用共陰極電路如下圖所示:圖5.6 led輸出電路5.3.7數(shù)碼管顯示電路數(shù)碼管顯示原理其實(shí)就是點(diǎn)亮二極管來(lái)發(fā)光的,每個(gè)數(shù)碼管里面有8個(gè)小的發(fā)光二極管,最后還有一個(gè)公共端。根據(jù)公共端的不同分為共陽(yáng)極和共陰極數(shù)碼管,要想對(duì)數(shù)碼管點(diǎn)亮,就需要對(duì)需要顯示的數(shù)據(jù)進(jìn)行編碼,編完碼后在經(jīng)io口輸出就可以顯示相應(yīng)的數(shù)字。數(shù)碼管顯示分為動(dòng)態(tài)顯示和靜態(tài)顯示,靜態(tài)顯示比較簡(jiǎn)單,直接發(fā)送斷碼進(jìn)行顯示,二動(dòng)態(tài)顯示其實(shí)是掃描顯示,可以顯示不同的數(shù)據(jù)。圖5.7數(shù)碼管顯示電路74hc573是數(shù)據(jù)鎖存器,當(dāng)使能端le為高電平時(shí)輸出端口的數(shù)據(jù)才能根據(jù)輸入的數(shù)據(jù)變化而變化,想要鎖存住數(shù)據(jù),就要把le制高,其真值表如下圖圖5.8 74hc573真值表5.4串行通信5.4.1串行通信的概念和特點(diǎn)串行通訊只需要一根線即可完成兩個(gè)設(shè)備之間的互相通訊,但必須要求兩邊設(shè)置一樣的波特率,在傳輸?shù)倪^(guò)程中呢,每一次只發(fā)送其中的一位。串口通訊發(fā)送和接收到的每一個(gè)字符實(shí)際上都是一次一位的傳送的,每一位為1或者為0。如圖3.1所示。圖5.9串行通信串行通信的特點(diǎn)是:通信只需一根數(shù)據(jù)線節(jié)約資源,控制簡(jiǎn)單,先對(duì)來(lái)說(shuō)傳輸速度可以滿(mǎn)足大多場(chǎng)合下的通信速度。5.4.2 串行通信的分類(lèi)串行通信按發(fā)送是兩端是否使用同一時(shí)鐘線,將通信分為同步串行通信和一部串行方式兩大類(lèi),按發(fā)送的方式分為并行通信方式和穿行通信方式。下面就根據(jù)這四種不同的分類(lèi)注意說(shuō)明。1 同步通信同步通信顧名思義兩邊通信要同步,何為同步呢?同步就是二者一句同一時(shí)鐘進(jìn)行工作的方式叫做同步通信。通信時(shí),需要對(duì)發(fā)送方和接收方的適中進(jìn)行嚴(yán)格的控制,這樣才能是兩邊的通信達(dá)到真正意義的同步。特點(diǎn):發(fā)送者和接受者因?yàn)樵谕粋€(gè)時(shí)鐘下工作,因此通信不容易出錯(cuò),并且高效穩(wěn)定。圖5.9串行通信2 異步通信異步串行通信時(shí)發(fā)送方和接收方使用不同的時(shí)鐘,為了使傳輸?shù)臄?shù)據(jù)正確有效就必須是兩端的時(shí)鐘盡可能一致。異步通信是有字節(jié)為單位傳輸?shù)?,允許字節(jié)之間有間隔,但在同一字節(jié)內(nèi)部各位之間的距離均為“位間隔”的整數(shù)倍。異步通信的數(shù)據(jù)有4部分組成,起始位 數(shù)據(jù)位 奇偶校驗(yàn)位和停止位。特點(diǎn):不要求收發(fā)雙方時(shí)鐘嚴(yán)格一致,容易實(shí)現(xiàn),成本低,但傳輸效率不高,傳輸局里相對(duì)較遠(yuǎn)。 圖5.10串行通信3 并行通信用多條數(shù)據(jù)線同時(shí)傳送的通信方式成為并行通信,如下圖所示,8位數(shù)據(jù)的通信系統(tǒng),一次就需要8跟數(shù)據(jù)線,還有其他的控制線,所以這種方式僅適合與短距離的數(shù)據(jù)傳輸。特點(diǎn):并行通信控制簡(jiǎn)單、相對(duì)傳輸速度快,但由于傳輸線太多,遠(yuǎn)距離傳送成本高。圖5.11串行通信5 串行通信串行通信時(shí)將數(shù)據(jù)拆分為一個(gè)位一個(gè)位進(jìn)行傳輸,就要一根電線就中了,另在加少許控制線路。由于一次只發(fā)一個(gè)位,所以傳輸效率比較低,只能通過(guò)提高貝特率提高其速度。如下圖所示特點(diǎn)傳輸線少,節(jié)約成本,傳輸距離相對(duì)較遠(yuǎn),但是比并行通信要復(fù)雜點(diǎn)。圖5.12串行通信5.5.3 串行通信的工作模式串行通訊的工作模式分為:?jiǎn)喂ぁ腚p工、全雙工。(1)單工形式:早期的電流環(huán)單工是通信時(shí),數(shù)據(jù)是單向的,僅限于接收或發(fā)送二者不能同時(shí)存在,如圖3.2所示。圖4.2單工形式(2) 半雙工形式:rs-485半雙工是兩邊可以互相通訊,但是必須是分時(shí)間斷的,不能同時(shí)及發(fā)送有接收。如圖3.3所示。圖4.3半雙工形式(3) 全雙工形式:rs-232全雙工通訊是接收方和發(fā)送方你同時(shí)通信互不影響,我發(fā)的同時(shí)也可以接收信息,接收的時(shí)候還可以發(fā)送信息。如圖3.4所示。圖4.4全雙工形式本次設(shè)計(jì)采用的全雙工方式,高效快捷,傳輸速度高。5.4.4 單片機(jī)內(nèi)部串口配置51單片機(jī)內(nèi)部有一個(gè)全雙工的串行通信接口,有一個(gè)接收和發(fā)送緩存區(qū)sbuf,可以讀也可以寫(xiě),接口有兩個(gè)分別為p3.0和p3.1,。51內(nèi)部串口結(jié)構(gòu)如下圖由上面框圖可以看出,串行通信需要一個(gè)以為時(shí)鐘信號(hào)來(lái)解析發(fā)送或接收數(shù)據(jù),根據(jù)串口接收中斷,并將接收到的數(shù)據(jù)通過(guò)系統(tǒng)總線保存至接收sbuf中,當(dāng)發(fā)送數(shù)據(jù)是過(guò)程相反,cpu將數(shù)據(jù)寫(xiě)進(jìn)sbuf,精油系統(tǒng)總線將數(shù)據(jù)分解為以為一位在發(fā)送出去。串行通信控制寄存器介紹:接下來(lái)我們一一介紹:(1).sm0、sm1:串行口工作方式控制位。sm0,sm1工作方式00方式001方式110方式211方式3(2).sm2:多機(jī)通信控制位。工作于方式0時(shí),sm2必須為0。(3).ren:允許接收位。接收使能為:1 語(yǔ)序接收;0 禁止接收;默認(rèn)為為0,所以需要軟件置1.(4).tb8:發(fā)送接收數(shù)據(jù)位8。在方式2和方式3中,tb8是要發(fā)送的即第9位數(shù)據(jù)位。在多機(jī)通信中同樣亦要傳輸這一位,并且它代表傳輸?shù)牡刂愤€是數(shù)據(jù),tb8=0為數(shù)據(jù),tb8=1時(shí)為地址。(5).rb8:接收數(shù)據(jù)位8。設(shè)置數(shù)據(jù)位為8位。(6).ti:發(fā)送中斷標(biāo)志位。發(fā)送完成標(biāo)志,當(dāng)一個(gè)字節(jié)發(fā)送完成后此標(biāo)志位會(huì)自動(dòng)置1.用戶(hù)可根據(jù)此標(biāo)志位檢測(cè)發(fā)送是否完成,提高通信的準(zhǔn)確性。(7).ri:接收中斷標(biāo)志位。此位為接收標(biāo)志
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 化工儀表入職試題及答案
- 急性心衰考核試題及答案
- 探討紡織品產(chǎn)業(yè)鏈各環(huán)節(jié)的質(zhì)量控制試題及答案
- 神華歷年實(shí)操試題及答案
- 探索紡織品復(fù)合材料的應(yīng)用試題及答案
- 2024國(guó)際商業(yè)美術(shù)設(shè)計(jì)師的風(fēng)險(xiǎn)應(yīng)對(duì)策略試題及答案
- 幼兒文學(xué)考試題及答案
- 服裝設(shè)計(jì)的市場(chǎng)需求分析試題及答案
- 2024年廣告設(shè)計(jì)師考試品牌策略試題及答案
- 2024年商業(yè)設(shè)計(jì)師考試的真題解讀試題及答案
- 春季如何預(yù)防過(guò)敏
- 2025年上半年江蘇省常州市北港街道招聘街道城管協(xié)管員及內(nèi)勤共15人易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 2025國(guó)網(wǎng)陜西電力省管產(chǎn)業(yè)單位供電服務(wù)業(yè)務(wù)部招聘(379人)高頻重點(diǎn)提升(共500題)附帶答案詳解
- 人教版高中英語(yǔ)選擇性必修二單詞表
- GB/T 24091-2024適應(yīng)氣候變化脆弱性、影響和風(fēng)險(xiǎn)評(píng)估指南
- 中國(guó)腫瘤相關(guān)貧血診治專(zhuān)家共識(shí)2023版解讀課件
- 湖北武漢市2025屆高三第一次調(diào)研測(cè)試數(shù)學(xué)試卷含解析
- 科研項(xiàng)目保密協(xié)議承諾書(shū)
- 軍工項(xiàng)目招投標(biāo)操作手冊(cè)
- 2024年江蘇泰州市第四人民醫(yī)院招考聘用高層次人才11人管理單位遴選500模擬題附帶答案詳解
- 零售業(yè)數(shù)據(jù)安全防護(hù)
評(píng)論
0/150
提交評(píng)論