




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、攀枝花學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 摘 要基于單片機(jī)控制超聲波測(cè)距儀設(shè)計(jì)學(xué)生姓名:學(xué)生學(xué)號(hào):院(系): 電氣信息工程學(xué)院 年級(jí)專業(yè):指導(dǎo)教師:助理指導(dǎo)教師: 二一五年六月I摘 要咱們把頻率高于2萬赫茲的聲波稱為“超聲波”。超聲波是一種指向性強(qiáng),能量消耗遲緩,在介質(zhì)中傳輸路程較遠(yuǎn)的聲波,很方便用于距離丈量中。具備方向性好,穿透力強(qiáng),易于取得較多的聲能,在水中路程遠(yuǎn)等特質(zhì)。超聲測(cè)距技能在工廠生產(chǎn)、車輛導(dǎo)航、水聲工程等范疇都具有普遍的應(yīng)用現(xiàn)象,目前已利用于物位測(cè)量、機(jī)器人自動(dòng)導(dǎo)航以及空氣中與水下的目標(biāo)探測(cè)、識(shí)別、定位等場(chǎng)合。于是,深入研究超聲的測(cè)距理論和方法具有重要的實(shí)踐意義。當(dāng)前我國(guó)內(nèi)大部分是用專用集
2、成電路制作的超聲波測(cè)距儀,但是價(jià)格高,木有液晶屏幕的顯示,操縱掌握不方便,拓展不靈活。而基于單片機(jī)的超聲波測(cè)距降服了上述的弊端,故應(yīng)用十分的廣泛,這類實(shí)驗(yàn)設(shè)備具備非接觸式測(cè)距。此實(shí)驗(yàn)是基于單片AT89C52的功能,來測(cè)量對(duì)前面的物體距離的原理。該設(shè)計(jì)的系統(tǒng)主要有四個(gè)基本的模塊:主控制器模塊、超聲波發(fā)射模塊、超聲波接收模塊和顯示模塊構(gòu)成。本設(shè)計(jì)采用兩中斷,信號(hào)傳輸,打開定時(shí)器中斷,外部中斷0和0這樣的定時(shí)器,接收到的超聲波信號(hào)發(fā)射,外部中斷0的中斷禁用,這時(shí)候定時(shí)器中斷0計(jì)錄的時(shí)間t就為超聲波傳播經(jīng)過測(cè)距儀到前方物體的往返總時(shí)間,經(jīng)過單片機(jī)計(jì)算、處理獲得距離值S然后再經(jīng)過液晶LCD1602顯示出
3、來。本設(shè)計(jì)實(shí)驗(yàn)如果在測(cè)量物體周圍比較空曠而且空氣溫度在精確的室溫條件下,測(cè)量的精確度能達(dá)到3mm以內(nèi)。關(guān)鍵詞 單片機(jī),超聲波傳感器,LCD1602ABSTRACTLet's put the acoustic frequencies higher than 20000 Hz is called "ultrasonic". Ultrasonic is a kind of strong point, energy consumption slow, sound waves in the medium of transmission distance, very conve
4、nient for distance measurement. Have the good direction, strong penetrating power, more acoustic energy is easy to be spread far away, in the water qualities.Ultrasonic ranging skills in factory production, vehicle navigation, underwater acoustic engineering fields with the application of the common
5、 phenomenon, has been used in level measurement, robot automatic navigation and air and underwater target detection, identification, location and so on. So, has the important practice significance ranging theory and method of in-depth study of ultrasoundThe current domestic mostly ultrasonic range f
6、inder fabricated using special integrated circuit, but the price is high, wood has the LCD screen display, control is not convenient, development is not flexible. Ultrasonic distance measurement based on single chip and overcome the above disadvantages, so a very wide range of applications, this kin
7、d of experimental equipment with non-contact distance measurement.This experiment is based on SCM AT89C52 function, principle to measure the distance of the objects on the front of the. The design of the system mainly has four basic modules: main controller module, ultrasonic transmitting module, ul
8、trasonic receiving module and display module. The design adopts two interrupt, signal transmission, open the timer interrupt, external interrupt 0 and 0 so that the timer, the received ultrasonic signal transmitting, external interrupt 0 interrupt disable, at this time the timer interrupt 0 recordin
9、g time t for the ultrasonic propagation through the range finder to the front of an object round-trip total time, through the SCM calculation process to obtain the distance value S, and then through the liquid crystal LCD1602 display.The design of experiment in measuring objects around if is open an
10、d the air temperature at room temperature under accurate, measurement accuracy can be less than 3mm.Key words single chip,ultrasonic,sensor,LCD16 目 錄目 錄摘 要IABSTRACTII1 緒 論11.1 研究的意義11.2 國(guó)內(nèi)外研究現(xiàn)狀和水平11.3 本課題的發(fā)展趨勢(shì)11.4 實(shí)驗(yàn)設(shè)計(jì)任務(wù)與指標(biāo)22 系統(tǒng)方案的設(shè)計(jì)與論證32.1 超聲波測(cè)距儀系統(tǒng)方案32.2系統(tǒng)整體方案的論證32.3 系統(tǒng)總體設(shè)計(jì)43 超聲波測(cè)距儀系統(tǒng)硬件設(shè)計(jì)53.1 單片機(jī)的選
11、擇與其性能分析53.1.1 單片機(jī)概述53.1.2 引腳功能描述53.2 單片機(jī)最小系統(tǒng)83.2.1 復(fù)位電路83.2.2 晶振電路設(shè)計(jì)93.3 LCD1602液晶顯示器93.3.1 LCD1602模塊的結(jié)構(gòu)93.3.2 概述103.3.3 模塊接口說明103.3.4 LCD1602與單片機(jī)的連接方式113.4 HC-SR04超聲波測(cè)距模塊123.4.1 超聲波模塊簡(jiǎn)介123.4.2 HC-SR04工作原理123.4.3 超聲波具體顯示情況134 超聲波測(cè)距系統(tǒng)軟件設(shè)計(jì)154.1 系統(tǒng)設(shè)計(jì)超聲波測(cè)距儀的算法設(shè)計(jì)154.2 主程序流程154.3 超聲波發(fā)生子程序和超聲波接收中斷程序175 電路仿
12、真系統(tǒng)設(shè)計(jì)185.1 Proteus簡(jiǎn)介185.2 ISISI編輯器介紹185.2.1 仿真界面185.2.2 SPICE仿真元件庫(kù)195.3 Proteus中虛擬單片機(jī)仿真圖搭建195.3.1 單片機(jī)最小系統(tǒng)電路195.3.2 proteus中1602液晶電路205.3.3 超聲波模塊模擬電路205.3.4 在Proteus中畫出完整的電路圖215.4 在µVision4IDE中編寫51代碼215.4.1 Keil中編寫代碼215.4.2 HEX文件添加到虛擬51單片機(jī)225.5 Proteus仿真236 調(diào)試及誤差分析246.1 軟件調(diào)試246.1.1 超聲波發(fā)射啟動(dòng)256.1.
13、2 超聲波模塊工作256.1.3 計(jì)算距離256.1.4 距離溢出處理及報(bào)警266.2 測(cè)試分析266.3 誤差分析27結(jié) 論28參 考 文 獻(xiàn)29附錄A:超聲波測(cè)距儀系統(tǒng)C程序30附錄B:超聲波測(cè)距儀系統(tǒng)原理圖38附錄C:超聲波測(cè)距儀系統(tǒng)PCB圖39附錄D:超聲波測(cè)距儀系統(tǒng)Proteus仿真40附錄E:超聲波測(cè)距儀系統(tǒng)實(shí)物圖41致 謝421 1 緒 論1 緒 論1.1 研究的意義正是因?yàn)槌暡ň哂兄赶蛐詮?qiáng),能量消耗遲慢,而且它也在介質(zhì)中傳播的距離較遠(yuǎn),因此人們?cè)趶V泛應(yīng)用領(lǐng)域來用它來做距離的測(cè)試。利用超聲波檢測(cè)每每更快速,方便,計(jì)算快捷,易于實(shí)時(shí)的設(shè)備控制,并且在測(cè)量精度標(biāo)準(zhǔn)方面能達(dá)到工業(yè)生產(chǎn)
14、使用的需求,測(cè)量過程是無需與測(cè)物體有直接的接觸,它的這些優(yōu)勢(shì)使其具有廣泛的實(shí)際應(yīng)用前景,被廣泛應(yīng)用于井深、液位、管道深度等丈量。比方修建施工單位的間距丈量,汽車倒車防撞系統(tǒng),潛艇超聲波探頭定位體系等等。1.2 國(guó)內(nèi)外研究現(xiàn)狀和水平國(guó)外早期許多選用傳統(tǒng)測(cè)量的機(jī)械原理,然而當(dāng)電子技術(shù)越來越先進(jìn)的發(fā)展,正朝著機(jī)電一體化發(fā)展形式。從國(guó)外關(guān)于測(cè)量發(fā)展技術(shù)動(dòng)向看,目前國(guó)外較新的測(cè)距技術(shù)通常選用的是:電子設(shè)計(jì)自動(dòng)化,數(shù)字信號(hào)處理,計(jì)算機(jī)輔助測(cè)試,表面貼裝技術(shù)及專業(yè)集成電路等。當(dāng)前的我們國(guó)內(nèi)普遍是專用的超聲波儀,在它上面集成了特定的電路設(shè)計(jì),但這樣的價(jià)格高,沒有液晶顯示數(shù)據(jù),操縱不方便,拓展不靈活。然而基于單
15、片機(jī)的超聲波測(cè)距摒除了上述弊端,是以它應(yīng)用場(chǎng)景非常普遍,這種設(shè)計(jì)要求測(cè)距過程是非接觸方式。故策劃該實(shí)驗(yàn)項(xiàng)目,該系統(tǒng)可廣泛用于生活、軍事等很多的領(lǐng)域,因而該設(shè)計(jì)需要自己有較好的數(shù)電、模電基礎(chǔ)知識(shí),而且擁有一定的C語言編程能力,并且要?dú)w納運(yùn)用上面的知識(shí)和能力來完成對(duì)超聲波發(fā)射和接收信號(hào)進(jìn)行信號(hào)控制、處置、計(jì)算,最終顯示在液晶LCD1602顯示器上。超聲波模塊的測(cè)量限度在2cm-400cm,測(cè)量精度達(dá)到3mm,并且測(cè)量過程不與被測(cè)物體有直接接觸測(cè)量,便可清晰、穩(wěn)定的在液晶上測(cè)量數(shù)據(jù)。1.3 本課題的發(fā)展趨勢(shì)在基于原始的距離測(cè)量常常存在不可克服的弊端。比如:油液面丈量就是一種特殊的距離測(cè)量,如果我們選
16、用統(tǒng)的電極法,也便是差位分布電極方式來丈量,經(jīng)過給電或脈沖來檢測(cè)液面,電極長(zhǎng)時(shí)間的浸泡于水中或其余種類的液體,易被侵蝕、電解,丟失功能。于是利用超聲波測(cè)量距離具備有強(qiáng)度大,方向性好等特征,就能夠處理這些問題。然而在當(dāng)人們生活水平的逐步改善,城市加速建筑建立,漸漸的城市車輛加多,由于泊車失當(dāng)而釀成的交通事件越來越常見。為了盡量防止發(fā)生這類事故,于是一個(gè)可以直接測(cè)量和預(yù)警出汽車與障礙物之間的間距的設(shè)備就變得很重要。它可以給司機(jī)以更確切的訊息,進(jìn)而及時(shí)的讓司機(jī)將車輛與障礙物之間距離反應(yīng)出來,減少產(chǎn)生這類事件。另外,超聲波測(cè)量距離技術(shù)還在工業(yè)控制、勘探測(cè)量、軍事應(yīng)用和機(jī)器人定位等畛域得到寬泛的應(yīng)用前景
17、。1.4 實(shí)驗(yàn)設(shè)計(jì)任務(wù)與指標(biāo)超聲波測(cè)距電路能夠由以往傳統(tǒng)的數(shù)字電路或有模擬電路構(gòu)建,但基于這些傳統(tǒng)電路構(gòu)建的系統(tǒng)每每設(shè)備調(diào)試艱苦,可靠性能差,可擴(kuò)展性低,是以人們廣泛的應(yīng)用把基于單片機(jī)的超聲波系統(tǒng)用來測(cè)距。經(jīng)過簡(jiǎn)易的設(shè)備外圍超聲波電路發(fā)射、接收超聲波,單片機(jī)通過其來采樣并獲取到超聲波的傳播到障礙物到反射回來的時(shí)間,用自己編譯C程序來計(jì)算、處理并得到超聲波的傳播距離,而且這類的系統(tǒng)的測(cè)量整體電路小、反映速度快、可靠性強(qiáng)、精確度高。1 2 系統(tǒng)方案的設(shè)計(jì)與論證2 系統(tǒng)方案的設(shè)計(jì)與論證2.1 超聲波測(cè)距儀系統(tǒng)方案超聲波測(cè)距儀要領(lǐng)的原理一般為使用時(shí)間差。開始測(cè)量時(shí)從發(fā)射超聲波到碰到障礙物后超聲波返回回
18、來的總時(shí)間,單片機(jī)與HC-SR04超聲波模塊依據(jù)測(cè)量裝置來實(shí)現(xiàn)測(cè)距處理,然后在經(jīng)過液晶顯示器LCD1602顯示測(cè)量點(diǎn)到目標(biāo)障礙物之間的間距。本次實(shí)驗(yàn)設(shè)計(jì)的超聲波測(cè)距儀主要由以下幾個(gè)部份構(gòu)成,包含有HC-SR04超聲波測(cè)距模塊,AT89C52微型處理器,LCD1602液晶顯示器等。從上面敘述能夠知道,其硬件設(shè)計(jì)電路主要包含:超聲波發(fā)射器和超聲波接收器,單片機(jī)微型控制系統(tǒng),液晶顯示電路四部份構(gòu)成。控制器也能夠用Atmel公司的AT89C52單片機(jī)微控制器兼容系列取代對(duì)單片機(jī)對(duì)超聲波發(fā)射器進(jìn)行控制和超聲波接收器把接受到的信號(hào)傳輸?shù)絾纹瑱C(jī)系統(tǒng)中,而后再經(jīng)過在內(nèi)部的程序?qū)鬏旊娖叫盘?hào)進(jìn)行分析、處理和計(jì)算
19、,最終讓液晶顯示器LCD1602顯示出測(cè)量距離的值。2.2系統(tǒng)整體方案的論證超聲波測(cè)距的原理是利用超聲波的發(fā)射和接受,根據(jù)超聲波傳播的時(shí)間來計(jì)算出傳播距離。實(shí)用的測(cè)距方法有兩種,一種是在被測(cè)距離的兩端,一端發(fā)射,另一端接收的直接波方式,適用于身高計(jì);一種是發(fā)射波被物體反射回來后接收的反射波方式,適用于測(cè)距儀。此次設(shè)計(jì)采用反射波方式。測(cè)距儀的分辨率取決于對(duì)超聲波傳感器的選擇。超聲波傳感器是一種采用壓電效應(yīng)的傳感器,常用的材料是壓電陶瓷。由于超聲波在空氣中傳播時(shí)會(huì)有相當(dāng)?shù)乃p,衰減的程度與頻率的高低成正比;而頻率高分辨率也高,故短距離測(cè)量時(shí)應(yīng)選擇頻率高的傳感器,而長(zhǎng)距離的測(cè)量時(shí)應(yīng)用低頻率的傳感器。
20、雙向超聲波測(cè)距儀的系統(tǒng)主要有五個(gè)部分組成(如圖2.1所示):超聲波發(fā)射模塊,超聲波接收模塊, 單片機(jī)AT89C52芯片,LED1602液晶顯示模塊,電源模塊等五大模塊構(gòu)成。超聲波發(fā)射模塊顯示模塊AT89C52超聲波接收模塊電源模塊圖2.1 系統(tǒng)設(shè)計(jì)總體框圖優(yōu)點(diǎn):成本低,功耗低,精度高,具有雙向測(cè)距。在電路中咱們使用PIC單片機(jī)擁有的優(yōu)點(diǎn):減少指令執(zhí)行效率大大提高;完全保密;其引腳具備有防瞬態(tài)能力,經(jīng)過限流電阻能夠接至220V家用交流電源上,可直接與繼電器控制電路連接,不必光電耦合器阻隔,給我們的使用帶來大大的方便。2.3 系統(tǒng)總體設(shè)計(jì)本次設(shè)計(jì)的硬件電路主要由AT89C52單片機(jī)系統(tǒng)、LCD16
21、02液晶顯示電路,超聲波發(fā)射電路、超聲波接收電路(采用HC-SR04超聲波測(cè)距模塊完成四部分)。(1)單片機(jī)的應(yīng)用:比較常用的STC系列單片機(jī)主要有STC89C51xx、STC90C51xx、STC11/10xx、STC12xx、STC15xx等系列。本次實(shí)驗(yàn)考慮到功能和價(jià)格以及燒錄等情況選擇STC90C16RD+單片機(jī)做控制器。(2)超聲波傳感器的原理與應(yīng)用:超聲波傳感器分為集成與獨(dú)立的發(fā)送和接收到兩部分。該實(shí)驗(yàn)選用超聲波傳感器發(fā)射接收分離式。(3)顯示器:液晶顯示咱們能夠用LCD顯示器或八段數(shù)碼管LED。本實(shí)驗(yàn)采用LCD1602液晶顯示器做顯示器件。(4)超聲波測(cè)距的有效距離和精度:因?yàn)閷?shí)
22、際情況的需要和傳感器的性能限定,測(cè)距都有一定有效范圍和精度大小,因此在實(shí)驗(yàn)中測(cè)距儀時(shí)該當(dāng)思考到這兩方面的技術(shù)問題。這次實(shí)驗(yàn)選擇的是HC-SR04超聲波測(cè)距模塊做為超聲波發(fā)射與接收形式,其可測(cè)量出2cm-400cm的非接觸式距離感測(cè)性能,測(cè)距精度能夠達(dá)到3mm。40 3 超聲波測(cè)距儀系統(tǒng)硬件設(shè)計(jì)3 超聲波測(cè)距儀系統(tǒng)硬件設(shè)計(jì)3.1 單片機(jī)的選擇與其性能分析3.1.1 單片機(jī)概述單片機(jī)AT89C52是具備8K在系統(tǒng)可編程Flash存儲(chǔ)器的一種低功耗、高性能CMOS8位微控制器。我們使用Atmel公司C52系列單片機(jī)的擁有高密度非易失性存儲(chǔ)器技術(shù)制造技術(shù),同工業(yè)中80C51產(chǎn)品引腳和指令兼容性強(qiáng)。單片
23、機(jī)上閃存Flash容允程序存儲(chǔ)器在系統(tǒng)可編程,也同樣適用在常規(guī)的編程器上。在AT89C52單片機(jī)上,具有在系統(tǒng)可編程Flash和靈活的8位CPU,讓得AT89C52成為繁多生活中嵌入式控制應(yīng)用系統(tǒng)給予高靈活、超有用的解決方法。 AT89C52的主要構(gòu)成包含如下幾個(gè)部分: 8k字節(jié)Flash閃存、32位I/O口線、256字節(jié)RAM、2個(gè)數(shù)據(jù)指針、看門狗定時(shí)器、一個(gè)6向量2級(jí)中斷結(jié)構(gòu)、三個(gè)16位定時(shí)器/計(jì)數(shù)器、全雙工串行口。此外,AT89C52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選的節(jié)電模式。在空閑模式下,CPU停止工作了,RAM,定時(shí)器/計(jì)數(shù)器,串行口,中斷,陸續(xù)工作許可。在掉電保護(hù)方式下,
24、振蕩器停止,RAM內(nèi)容被保留,單片機(jī)停止全部的工作,一直要等到下一個(gè)中斷或硬件復(fù)位電平來才結(jié)束。3.1.2 引腳功能描述表3.1 P1引腳功能圖 引腳號(hào)第二功能P1.0T2 定時(shí)器,時(shí)鐘輸出,T2的計(jì)數(shù)段.P1.1T2EXT2的計(jì)數(shù)器,定時(shí)器,T2的計(jì)數(shù)段、重載觸發(fā)信號(hào)與方位掌控.P1.5MOSI串行數(shù)據(jù)輸入,在系統(tǒng)編程.P1.6MISO串行數(shù)據(jù)輸出,在系統(tǒng)編程.P1.7SCK移位脈沖引腳,在系統(tǒng)編程.圖3.1 AT89C52引腳圖如圖VCC : 接電源 GND: 接地P0口:P0口特征是擁有一個(gè)8位雙功能的并行口。當(dāng)它被作為輸出口時(shí),所有位可以驅(qū)動(dòng)8個(gè)TTL邏輯電平。P0端口寫“控制”信號(hào)高
25、電平1時(shí),其引腳被用作高阻抗輸入。P0口被當(dāng)作地址/數(shù)據(jù)復(fù)用方式訪問外部存儲(chǔ)器時(shí),P0口也能夠當(dāng)作低8位地址/數(shù)據(jù)復(fù)用。當(dāng)在這種模式運(yùn)行下,P0口擁有內(nèi)部上拉電阻。在閃存Flash編程中,接收指令字節(jié)也可用P0口。當(dāng)然我們?cè)诔绦蛐r?yàn)中,應(yīng)該在P0口接個(gè)上拉電阻。 P1口:P1口為準(zhǔn)雙向口,也是一個(gè)擁有在內(nèi)部上拉電阻的8位雙向I/O 口,p1輸出緩沖器能驅(qū)動(dòng)四個(gè)TTL負(fù)載。對(duì)P1端口“讀引腳”向鎖存器寫1時(shí),端口被內(nèi)部的上拉電阻拉高,此時(shí)可以作為輸入口使用。當(dāng)為輸入口使用時(shí),外部把引腳拉低是因?yàn)樵趦?nèi)部電阻的緣故,將輸出電流(IIL)。 此外,P1.0引腳與P1.2引腳分別作為定時(shí)器/計(jì)數(shù)器2的外
26、部計(jì)數(shù)輸入(T2/P1.0)與時(shí)器/計(jì)數(shù)器2的觸發(fā)輸入(T2EX/P1.1),詳細(xì)如上表2-1所示。 在flash編程和校驗(yàn)時(shí),低8位地址字節(jié)被P1口接收。 P2口:P2口是一個(gè)具備在內(nèi)部的上拉電阻的8位準(zhǔn)雙向I/O 口,P2輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL負(fù)載。當(dāng)對(duì)P2端口輸出鎖存器寫入1時(shí),端口被內(nèi)部上拉電阻拉高,這樣就可以作為輸入口使用。作為輸入使用時(shí),外部把端口引腳拉低,因?yàn)閮?nèi)部電阻的緣故,將電流(IIL)輸出。 在訪問外部程序存儲(chǔ)器或用16位地址(P0口輸出的低8位與P2口高8位地址一起構(gòu)成16位地址)讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVCAA+C)時(shí)。在這種應(yīng)用中,P2口使用很強(qiáng)的內(nèi)部上拉
27、發(fā)送1。在使用8位地址(如MOVX RI)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口輸出P2鎖存器的內(nèi)容。 當(dāng)在flash編程與校驗(yàn)時(shí),P2口也接收高8位地址字和一部分的控制信號(hào)。 P3口:P3口也是具備內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O 口,p2輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL負(fù)載。P3口“讀引腳”向鎖存器寫1時(shí),端口被內(nèi)部的上拉電阻拉高,此時(shí)可以作為輸入口使用。當(dāng)為輸入口使用時(shí),外部把引腳拉低是因?yàn)樵趦?nèi)部電阻的緣故,將輸出電流(IIL)。由于AT89C52的引腳數(shù)碼有限,因此P3口電路亦作為AT89C52特殊功能(第二功能)來行駛,詳細(xì)如下表3.2所示。 在flash編程和校驗(yàn)過程中,P3口亦接收一部分的控制信號(hào)
28、。表3.2 P3引腳功能圖引腳號(hào)第二功能P3.0RXD串行數(shù)據(jù)出入口.P3.1TXD串行數(shù)據(jù)輸出.P3.2INT0外部中斷輸入.P3.3INT0外部中斷輸出.P3.4T0定時(shí)器0外部計(jì)數(shù)輸入.P3.5T1定時(shí)器1外部計(jì)數(shù)輸).P3.6WR外部數(shù)據(jù)存儲(chǔ)器寫選通輸出.P3.7RD外部數(shù)據(jù)存儲(chǔ)器寫選通輸入.RST(RESET,9腳): 復(fù)位信號(hào)輸入段,高電平有效。當(dāng)此RST腳持續(xù)大于2個(gè)機(jī)器周期高電平,就能夠使單片機(jī)復(fù)位。當(dāng)看門狗計(jì)時(shí)溢出輸出,RST腳輸出長(zhǎng)達(dá)96個(gè)時(shí)鐘震蕩周期的高電平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以用來禁用此功能。DISRTO默許形態(tài)下,復(fù)位高電平有效。AL
29、E/PROG(Address Latch Enable/PROGramming,30腳):該引腳為CPU訪問外部程序存儲(chǔ)器或外部存儲(chǔ)數(shù)據(jù)器提供一個(gè)地址鎖存信號(hào),把鎖存低8位地址鎖存在片外的地址鎖存器中。在flash編程時(shí),也使用該引腳(PROG)來作編程輸入脈沖。在通常情況下,ALE以晶振震蕩周期的六分之一的穩(wěn)定頻率輸出脈沖,可用來作為外部定時(shí)器或時(shí)鐘來使用。但是,特別注意,在每回讀取外部數(shù)據(jù)存儲(chǔ)器時(shí),將會(huì)跳過ALE脈沖。若是需要,通過將地址為8EH的SFR的第0位置寫入“1”,ALE操作將被禁用。這一位寫入“1”時(shí),ALE僅在執(zhí)行命令MOVX或MOVC指令時(shí)有效。不然,ALE將被薄弱拉高。這
30、個(gè)ALE使能標(biāo)記位(地址為8EH的SFR的第0位)系列微控制器在外部執(zhí)行模式將無效。 PSEN(Program Strobe Enable,29腳):外部程序存儲(chǔ)器的讀選通信號(hào)(PSEN)低電平有效。當(dāng)外部程序存儲(chǔ)器通過AT89C52執(zhí)行外部代碼時(shí),PSEN在每一次激活機(jī)器周期兩次,但是在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),PSEN就不會(huì)激活。 EA/VPP(Enable Address/Voltage Pulse of Programing):訪問外部程序存儲(chǔ)器控制信號(hào)。為使能從0000H到FFFFH的外部程序存儲(chǔ)器讀取指令,EA務(wù)必接地GND。為了執(zhí)行內(nèi)部程序指令,EA應(yīng)該接VCC。在flash編程期間
31、,EA也接收12伏VPP電壓。 XTAL1(19腳):片內(nèi)振蕩器反相放大器和在內(nèi)部時(shí)鐘發(fā)生電路的輸入端。 XTAL2(18腳):片內(nèi)振蕩器反相放大器的輸出端。3.2 單片機(jī)最小系統(tǒng)單片機(jī)最小系統(tǒng),我們也可以叫做單片機(jī)的最小應(yīng)用系統(tǒng),是指用最少的元件構(gòu)成的使單片機(jī)能夠正常工作的系統(tǒng)。如圖3.2所示,對(duì)51系列單片機(jī)而言,最小系統(tǒng)通常包含有:單片機(jī)、復(fù)位電路、晶振電路。圖3.2 單片機(jī)最小系統(tǒng)給的原理圖3.2.1 復(fù)位電路為保證單片機(jī)穩(wěn)定可靠工作性能,譬如出現(xiàn)程序運(yùn)行出錯(cuò)(如程序“跑飛”)或操作錯(cuò)誤使系統(tǒng)處于“鎖死”狀態(tài)時(shí),那么復(fù)位電路就是必不可少的部分。單片機(jī)在啟動(dòng)時(shí)都要復(fù)位動(dòng)作,來讓CPU及系
32、統(tǒng)各寄存器處于確定的初始值得狀態(tài),然后讓其開始工作。單片機(jī)的復(fù)位信號(hào)是從復(fù)位引腳RST通過芯片內(nèi)的一個(gè)與復(fù)位電路相連的施密特觸發(fā)器中。在系統(tǒng)處于正常工作狀況下,并且振蕩器處于穩(wěn)定后,假如復(fù)位引腳RST引腳上加一個(gè)短的高電平并且保持在2個(gè)機(jī)器周期(24個(gè)振蕩周期)以上,那么CPU就響應(yīng)并將讓單片機(jī)系統(tǒng)進(jìn)入復(fù)位模式工作。單片機(jī)系統(tǒng)的復(fù)位方式除了有上述的上電復(fù)位還有按鍵手動(dòng)復(fù)位。在這次的實(shí)驗(yàn)中我們采用的按鍵手動(dòng)復(fù)位方式。復(fù)位電路的原理是利用RC電路的充電時(shí)間,使RST端可以保持在一段時(shí)間的高水平。一般取經(jīng)驗(yàn)值R=100K,C=0.1uF。RST高電平復(fù)位,低正常工作1F的電容和一個(gè)100k的電阻組成
33、的RC延時(shí)電路,單片機(jī)提供上電復(fù)位,添加1F的電容器的目的是不讓雙方電壓突變。電路圖如圖3.3所示。圖3.3 復(fù)位電路3.2.2 晶振電路設(shè)計(jì)常用的時(shí)鐘電路有兩種方式:內(nèi)部時(shí)鐘和外部時(shí)鐘方式。通常情況下,我們選用的是12MHz石英晶體(在這個(gè)頻率上,XYAL1能夠很容易的發(fā)出9600的波特率讓串口行駛)。電路中的電容C1和C2的通常置選用30PF,并且讓它們組成并聯(lián)諧振電路,然后讓其接在放大器的反饋回路上。在實(shí)際情中,對(duì)外接電容并無嚴(yán)格的要求,典型值選30PF的瓷片電容,該電容的大小會(huì)影響震蕩器頻率的高低、穩(wěn)定性和起振的快速性。該實(shí)驗(yàn)電路中就用兩個(gè)30PF的瓷片電容,12MHZ的晶振,該晶振電
34、路的主要作用是為單片機(jī)提供工作時(shí)鐘。電路圖如圖3.4所示。圖3.4 晶振電路3.3 LCD1602液晶顯示器3.3.1 LCD1602模塊的結(jié)構(gòu)圖3.5 液晶LCD16023.3.2 概述(1)液晶顯示器是由多個(gè)顯示字符組5×7 / 8或5×10 / 11矩陣的塊,每個(gè)塊是一個(gè)字符點(diǎn)陣,字符間距和行距都為一個(gè)點(diǎn)的寬度。 (2)主控制IC驅(qū)動(dòng)為HD44780以及其他公司全兼容IC有:NOVATEK NT3881 KS0066 NOVATEKSAMSUNGSUNPLUS SPLC78A01。 (3)具備字符發(fā)生器ROM,可顯示192個(gè)點(diǎn)陣字符分別是:160個(gè)5 ×7
35、點(diǎn)陣組合與32個(gè)5 ×10點(diǎn)陣組合。 (4)模塊內(nèi)擁有64個(gè)字節(jié)的自定義字符RAM(CGRAM),我們能自定義8個(gè)5× 7點(diǎn)陣字符。 (5)模塊內(nèi)擁有80字節(jié)的數(shù)據(jù)顯示存儲(chǔ)器(DDRRAM)。 (6)標(biāo)準(zhǔn)的接口引腳特征,適配M6800 系列MPU的工作時(shí)序。 (7)模塊結(jié)構(gòu)緊湊,易于裝配。 (8)+5V單電源供電。 (9)低功耗、長(zhǎng)壽命、高可靠性。由該模塊構(gòu)成的液晶顯示方案較其他同類型的圖形點(diǎn)陣液晶顯示模塊擁有:硬件電路構(gòu)造或顯示程序都要簡(jiǎn)便;該模塊成本也少于其相同點(diǎn)陣的圖形液晶模塊。3.3.3 模塊接口說明1602采用標(biāo)準(zhǔn)的16腳接口,其中:第1腳:VSS為電源地第2腳:
36、VCC接5V電源正極第3腳:V0為液晶顯示器調(diào)整對(duì)比度端,在接VCC時(shí)對(duì)比度最弱,接GND時(shí)對(duì)比度最大,對(duì)比度過大時(shí)會(huì)產(chǎn)生“鬼影”,用戶在使用時(shí)能夠通過10K的電位器來調(diào)整液晶的對(duì)比度。第4腳:RS為寄存器選擇,當(dāng)?shù)碗娖綍r(shí)選擇指令寄存器,在高電平時(shí)選擇數(shù)據(jù)寄存器。第5腳:R/W為讀寫信號(hào)線,低電平時(shí)進(jìn)行寫操作,高電平時(shí)進(jìn)行讀操作。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),模塊開始執(zhí)行指令。第714腳:D0D7為8位雙向數(shù)據(jù)端。第15腳:背光正極。第16腳:背光負(fù)極。3.3.4 LCD1602與單片機(jī)的連接方式在實(shí)踐的使用中,液晶模塊與單片機(jī)的連接形式有許多,從占用I/O口線的個(gè)數(shù)來分
37、有:并行方式與串行方式,其中串行方式速率慢,但占用的串口較少;并行形式分為4線與8線,速率較快,但占用的串口較多,實(shí)際使用中以并行方式占多數(shù)。LCD1602通常有16個(gè)引腳,但也有少數(shù)的LCM為14個(gè)引腳,然而在連接電路時(shí)其實(shí)不復(fù)雜。需要注意的是LCD的電源共有2組,一組是用于驅(qū)動(dòng)LCD顯示,另一組用于背光顯示。兩組在一起或背光電源省略。此外有個(gè)輸入管腳V0需求接入LCD調(diào)整電壓來調(diào)節(jié)液晶面板的對(duì)比度。一般我們?cè)趧偸褂靡壕r(shí)出現(xiàn)的難題就在這里,對(duì)比度太高或太低會(huì)使屏幕顯示不正確。它可接2K到地。在當(dāng)前市面上一些LCD1602的對(duì)比度可由單片機(jī)操縱其寄存器調(diào)理,我們可根據(jù)自己出現(xiàn)情況來進(jìn)行選擇調(diào)
38、節(jié)。其余的端口均連接至單片機(jī)。將單片機(jī)IO口P0.0-P0.7依次連接LCD1602的DB0-DB7,并且依次與上拉電阻的2-9引腳相連,RS、RW、E、分別連接至P2.4至P2.6。1602液晶其他引腳連接電路方式如圖3.6所示:圖3.6 單片機(jī)與液晶屏的連接3.4 HC-SR04超聲波測(cè)距模塊3.4.1 超聲波模塊簡(jiǎn)介HCSR04模塊具備性能穩(wěn)定,模塊高精度,測(cè)度距離精確,盲區(qū)較小。 產(chǎn)品應(yīng)用范圍包括:機(jī)器人避障、液位檢測(cè) 、物體測(cè)距、公共安防、停車場(chǎng)檢測(cè)、倒車報(bào)警儀。接線端口如圖3.7所示:VCC供5V的電源;GND為地線;TRIG觸發(fā)控制信號(hào)輸入;ECHO回響信號(hào)輸出;圖3.7 HC-
39、SR04超聲波模塊3.4.2 HC-SR04工作原理(1)初始化時(shí)將trig和echo端口都寫入低電平信號(hào);(2)最初給I/O口TRIG發(fā)送至少10us的高電平脈沖;(3)模塊自主發(fā)送8個(gè)40khz的方波,自動(dòng)檢測(cè)是是不有信號(hào)反射回來;(4)當(dāng)有信號(hào)反射回來時(shí),經(jīng)過I/O口ECHO輸出一高電平,高電平持續(xù)時(shí)間就是超聲波從發(fā)射到反射回來的總時(shí)間。測(cè)試距離=高電平時(shí)間/2*聲速。電氣參數(shù):表3.3 HC-SR04超聲波傳感器的電氣參數(shù)電氣參數(shù)HC-SR04超聲波傳感器工作電壓DC-5V工作電流15mA工作頻率40Hz最遠(yuǎn)射程400cm最近射程2cm測(cè)量角度15 度輸入觸發(fā)信號(hào)至少10us的TTL脈
40、沖輸出回響信號(hào)輸出TTL電平信號(hào),與射程成比例規(guī)格尺寸45*20*15mm超聲波時(shí)序圖:圖3.8 超聲波時(shí)序圖以上時(shí)序圖3.8表明本設(shè)計(jì)只需要提供一個(gè)10us以上脈沖觸發(fā)信號(hào),該模塊內(nèi)部將發(fā)出8個(gè)40kHz周期電平并檢測(cè)回波。一旦發(fā)現(xiàn),脈沖寬度輸出信號(hào)回波回波回波信號(hào)和測(cè)量信號(hào)的距離成正比。因此,通過信號(hào)傳輸?shù)浇邮栈夭ㄐ盘?hào)的間隔距離可以計(jì)算。公式:距離=高電平時(shí)間*聲速(340m/s)/2;建議測(cè)量周期為 60ms 以上,來避免發(fā)射信號(hào)對(duì)回響信號(hào)的影響。距離測(cè)量模塊與單片機(jī)連接如圖3.9所示,VCC為5V電源,GND為地,觸發(fā)Trig控制信號(hào)輸入,Echo輸出回波信號(hào)。圖3.9 超聲波模塊電路
41、連接3.4.3 超聲波具體顯示情況為了驗(yàn)證系統(tǒng)的測(cè)量精度,在空曠地進(jìn)行極限測(cè)量。HC-SR04超聲波測(cè)距模塊能夠測(cè)試出2cm-400厘米的范圍,精度在3mm之內(nèi)。測(cè)試結(jié)果如圖所示:在測(cè)量范圍之內(nèi): 超出量程范圍: 圖 3.10 測(cè)量范圍內(nèi)的LCD顯示效果 圖 3.11 超出范圍的LCD顯示效果 4 超聲波測(cè)距系統(tǒng)軟件設(shè)計(jì)4 超聲波測(cè)距系統(tǒng)軟件設(shè)計(jì)4.1 系統(tǒng)設(shè)計(jì)超聲波測(cè)距儀的算法設(shè)計(jì)本次實(shí)驗(yàn)超聲波測(cè)距儀系統(tǒng)的軟件部分主要可分為:主程序、超聲波發(fā)生子程序、超聲波接收中斷程序及液晶顯示子程序構(gòu)成。我們知道C語言程序有利于實(shí)現(xiàn)復(fù)雜的算法,匯編語言程序的程序的運(yùn)行時(shí)間效率高和便于精細(xì)計(jì)算,但是超聲波測(cè)
42、距儀的程序不僅有較復(fù)雜的計(jì)算部分(處理距離s時(shí)),而且還要求精密計(jì)算程序運(yùn)行時(shí)間,是以控制程序可采用C語言?shī)A雜匯編語言編程運(yùn)行。超聲波測(cè)距的基本原理為超聲波發(fā)生器在某一時(shí)刻發(fā)出一超聲波信號(hào),當(dāng)發(fā)射的超聲波遇到測(cè)量物體目標(biāo)后被反射回來,就被超聲波接收器接收到該信號(hào)。如此我們只需計(jì)算出從發(fā)射出超聲波信號(hào)到接收到返回信號(hào)所花的總時(shí)間,便能夠計(jì)算出超聲波發(fā)生器與被測(cè)目標(biāo)物體之間的距離。距離的計(jì)算公式為: d=s/2=(u*t)/2 式(4.2)其中:d-為被測(cè)物與測(cè)距儀的距離;s-為聲波的來回的路程;u-為聲速;t-為聲波來回所用的時(shí)間。在開啟發(fā)射電路超聲波發(fā)射器的同時(shí)運(yùn)行單片機(jī)里面的定時(shí)器T0,使用
43、定時(shí)器的計(jì)時(shí)功能,記載超聲波從發(fā)射到目標(biāo)物體反射回來的超聲波的時(shí)間。在超聲波接收器接收到反射回來的超聲波時(shí),超聲波的接收電路會(huì)向輸出端發(fā)出一負(fù)跳變電平信號(hào),并且在INT0或INT1端就會(huì)產(chǎn)生中斷請(qǐng)求電平信號(hào),CPU同時(shí)就響應(yīng)外部中斷請(qǐng)求,接著就開始執(zhí)行外部中斷服務(wù)子程序,讀取并處理時(shí)間差,最終計(jì)算距離并顯示。4.2 主程序流程此次實(shí)驗(yàn)的系統(tǒng)軟件分大體能夠劃分成兩個(gè)部分,系統(tǒng)的主程序和中斷服務(wù)程序(如圖4.1所示)。主程序?qū)崿F(xiàn):(1)系統(tǒng)的初始化工作;(2)各部分電路的超聲波發(fā)射、接收;(3)計(jì)算處理序次的控制;定時(shí)中斷服務(wù)子程序?qū)崿F(xiàn):三方向輪番發(fā)射超聲波。外部中斷服務(wù)子程序?qū)崿F(xiàn):讀取時(shí)間值、距
44、離計(jì)算、輸出結(jié)果等操作。定時(shí)中斷入口外部中斷入口開始關(guān)外部中斷系統(tǒng)初始化定時(shí)器初始化讀取時(shí)間值定時(shí)中斷子程序發(fā)射超聲波計(jì)算距離否發(fā)射完否?結(jié)果輸出有回波嗎?否停止發(fā)射開外部中斷外部中斷子程序返回返回結(jié)束(a)主程序 (b)定時(shí)中斷子程序 (c)外部中斷子程序圖4.1 超聲波測(cè)距系統(tǒng)的軟件設(shè)計(jì)主程序最先實(shí)現(xiàn)整個(gè)系統(tǒng)環(huán)境初始化,對(duì)16位定時(shí)計(jì)數(shù)器模式設(shè)置定時(shí)器T0工作模式。在中斷允許寄存器IE中EA=1,在開始時(shí)初始化E為0,然后置E為1,再清0。而后運(yùn)行超聲波發(fā)生子程序來發(fā)送出超聲波脈沖,為了防止超聲波發(fā)射器發(fā)出的超聲波直接傳被送到超聲波接收器而引發(fā)的直射波觸發(fā)事故現(xiàn)象,必需延時(shí)大概0.1 ms
45、(這便是超聲波測(cè)距儀會(huì)有最小可測(cè)范圍的緣故)后,再可以開啟外部中斷0接收反射回來的超聲波信號(hào)。因?yàn)槭俏覀冞x用的是12 MH的晶振,所以計(jì)數(shù)器每計(jì)一次數(shù)就為1s,當(dāng)主程序成功檢測(cè)到并接收的標(biāo)志位后,將計(jì)數(shù)器T0中的數(shù)(就是超聲波往返所花總時(shí)間t)按式中(3)來計(jì)算,便可得到超聲波測(cè)距儀到被測(cè)目標(biāo)物體之間的距離,實(shí)驗(yàn)中我們?nèi)?0時(shí)的聲速為340 m/s則有: d=(u*t)/2=172T0/10000cm 式(4.1)其中:T0-為計(jì)數(shù)器T0的計(jì)算值。 測(cè)出距離的距離是以十進(jìn)制BCD碼形式送往LED顯示大概需要0.5s,然后再發(fā)射超聲波脈沖來進(jìn)行重復(fù)測(cè)量過程。為了便于程序結(jié)構(gòu)化和計(jì)算的距離簡(jiǎn)易,主
46、程序我們選用C語言來編寫。4.3 超聲波發(fā)生子程序和超聲波接收中斷程序超聲波發(fā)生子程序的作用是使P2.1端口產(chǎn)生大概2個(gè)超聲波脈沖信號(hào)(頻率大約為40kHz的方波),并且脈沖寬度為12s上下,同時(shí)啟動(dòng)計(jì)數(shù)器T0開始進(jìn)行計(jì)時(shí)。超聲波發(fā)生子程序較為簡(jiǎn)易,但是程序運(yùn)行需要十分的精確,是以我們選用C語言編程。 超聲波測(cè)距儀主程序是使用外部中斷0檢測(cè)反射回來超聲波信號(hào)所用的時(shí)間,如果當(dāng)接收到反射回來的超聲波信號(hào)(引起INT0引腳產(chǎn)生低電平),立刻運(yùn)行中斷程序。當(dāng)進(jìn)來中斷后就立刻停止計(jì)時(shí)器T0計(jì)時(shí),接著就把測(cè)距成功標(biāo)志字賦值為1。假如當(dāng)計(jì)時(shí)器溢出時(shí),超聲波電路尚未檢測(cè)到反射回來的超聲
47、波信號(hào),則定時(shí)器T0溢出中斷并且將關(guān)閉外中斷0,然后測(cè)距成功標(biāo)志字被賦值為2來顯示出這次測(cè)距失敗。 前面的超聲波測(cè)距電路的輸出端與單片機(jī)INT0端口相連,其中斷優(yōu)先級(jí)最高,左、右測(cè)距電路的輸出與單片機(jī)INT1端口相連,同時(shí)單片機(jī)P3.3接到的輸入端,并由程序來查詢和處理中斷源的識(shí)別,中斷優(yōu)先級(jí)為先右后左。 5 電路仿真系統(tǒng)設(shè)計(jì)5 電路仿真系統(tǒng)設(shè)計(jì)5.1 Proteus簡(jiǎn)介目前由于protel、Multisim、proteus等許多的軟件的存在,于是就能夠虛代實(shí)與以軟代硬,獨(dú)立實(shí)現(xiàn)一個(gè)完善的虛擬實(shí)驗(yàn)室。代替了在實(shí)驗(yàn)室和教室里的以實(shí)物進(jìn)行實(shí)踐的形式,可以在計(jì)算機(jī)上學(xué)習(xí)單片機(jī)應(yīng)用、電工基礎(chǔ)
48、、數(shù)字電路、模擬電路系統(tǒng)等課程,還能夠進(jìn)行電路設(shè)計(jì)、仿真、調(diào)試等。所以這一系列的軟件受到許多的電子設(shè)計(jì)愛好者的喜歡,是他們學(xué)習(xí)與工作上難得的工具軟件,于是它們?cè)谌驌碛性S多的使用者。其中,Proteus軟件提供多達(dá)30多個(gè)元件庫(kù),元件涉及到模擬與數(shù)學(xué)、交流與直流等。例如有RAM、ROM、鍵盤、LCD、LED、馬達(dá)、AD/DA、部分SPI器件、部分IIC器件,編譯方面支持Keil和MPLAB等編譯器。其功能也很強(qiáng)大,集電路設(shè)計(jì)、制版及仿真等多種功能都囊括在內(nèi),不但能夠?qū)﹄姽ぁ㈦娮蛹夹g(shù)學(xué)科涉及的電路進(jìn)行設(shè)計(jì)與分析,而且可以對(duì)微處理器進(jìn)行設(shè)計(jì)和仿真,還可以仿真單片機(jī)外圍電路或沒有單片機(jī)參與的其它電路
49、的工作情況。它還提供繁多現(xiàn)實(shí)存在的虛擬儀器,這些儀表具備有極高的輸入阻抗、極低的輸出阻抗,盡可能減少儀器對(duì)測(cè)量結(jié)果的誤差。另外,Proteus軟件還有圖形顯示功能,能夠把線路上變化的信號(hào),通過圖形的方式實(shí)時(shí)地顯示出來。對(duì)于單片機(jī)硬件電路與軟件的調(diào)試,Proteus給予了兩種方式:系統(tǒng)總體執(zhí)行效果與對(duì)軟件的分步調(diào)試。它還有許多的測(cè)試信號(hào)用于電路的測(cè)試,這些測(cè)試信號(hào)包括模擬信號(hào)和數(shù)字信號(hào)。在用Proteus進(jìn)行仿真和程序調(diào)試中,只需知曉在工程的角度就能看出程序運(yùn)行和電路工作的過程和結(jié)果。它還提供SchematicDrawing、PCB設(shè)計(jì)功能與SPICE仿真,而且能夠仿真單片機(jī)和周邊設(shè)備,比如仿真
50、PIC、AVR、51系列等常用的MCU,同時(shí)還提供周邊設(shè)備的仿真,比如示波器、373、液晶LED等。5.2 ISISI編輯器介紹5.2.1 仿真界面圖5.1 proteus仿真界面5.2.2 SPICE仿真元件庫(kù)圖5.2 SPICE仿真元件庫(kù)從中把我們需要的所有元件從庫(kù)中選出來,其中包括:51單片機(jī)最小系統(tǒng)用到的元件和芯片。5.3 Proteus中虛擬單片機(jī)仿真圖搭建5.3.1 單片機(jī)最小系統(tǒng)電路圖5.3 單片機(jī)最小系統(tǒng)電路此為proteus中的虛擬單片機(jī),用來接收從單片機(jī)利用串口通信傳過來的距離數(shù)據(jù),通過單片機(jī)的處理后,將數(shù)據(jù)顯示在1602液晶上,實(shí)現(xiàn)和實(shí)際單片機(jī)同步顯示的功能。5.3.2
51、proteus中1602液晶電路圖5.4 1602液晶電路5.3.3 超聲波模塊模擬電路由于Proteus中沒有這個(gè)超聲波模塊的仿真元件圖,我們就通過兩個(gè)按鍵來模擬超聲模塊發(fā)射和接受的電平信號(hào),進(jìn)而實(shí)現(xiàn)仿真需求。圖5.5 超聲波模塊模擬電路5.3.4 在Proteus中畫出完整的電路圖圖5.6 完整的電路圖5.4 在µVision4IDE中編寫51代碼5.4.1 Keil中編寫代碼根據(jù)功能要求,編寫虛擬單片機(jī)的C語言程序,實(shí)現(xiàn)液晶1602的顯示與報(bào)警器的等工作。部分操作如下圖5.7 Keil軟件編輯代碼5.4.2 HEX文件添加到虛擬51單片機(jī)雙擊虛擬AT89C52單片機(jī),彈出如下圖
52、對(duì)話框:圖5.8 添加HEX文件在ProgramFile中將KeiL工程目錄下的.HEX文件添加進(jìn)去,點(diǎn)擊確定,即可。5.5 Proteus仿真Proteus打開仿真運(yùn)行按鈕,仿真結(jié)果如下,液晶顯示仿真結(jié)果就出來了圖5.9 運(yùn)行Proteus仿真電 6 調(diào)試及誤差分析6 調(diào)試及誤差分析 6.1 軟件調(diào)試因?yàn)榇舜螌?shí)驗(yàn)本設(shè)計(jì)采取的是模塊連接方法,連接前首先保證地GND全部接好后,然后就能夠用萬用表檢測(cè)一下它們是不是都全部有效連接好。在實(shí)物連接前,我們應(yīng)該首先檢測(cè)每個(gè)模塊是不是能夠有效的工作,它們的功能能否達(dá)到實(shí)驗(yàn)設(shè)計(jì)所需要求。當(dāng)檢測(cè)好硬件電路以后,我們就能夠把編譯好C程序生產(chǎn)的hex文件下載到單片
53、機(jī)中運(yùn)行調(diào)試。然后就可以根據(jù)實(shí)際測(cè)試情況修改超聲波發(fā)生子程序每一次發(fā)送的脈沖寬度以及兩次測(cè)量目標(biāo)的時(shí)間間隔,來達(dá)到不同距離的測(cè)量需要。參考實(shí)驗(yàn)所設(shè)計(jì)的電路參數(shù)和程序,超聲波傳感器可以測(cè)量的范圍為0.3-4m,超聲波傳感器測(cè)量最大的誤差不應(yīng)超過3cm。測(cè)量系統(tǒng)調(diào)試完成后就應(yīng)該測(cè)量誤差和重復(fù)一致性進(jìn)行多次分析實(shí)驗(yàn)數(shù)據(jù),進(jìn)而來不斷調(diào)試優(yōu)化測(cè)量系統(tǒng)讓它能夠?qū)崿F(xiàn)實(shí)際情況使用的要求。此次實(shí)驗(yàn)設(shè)計(jì)使用KEIL4編譯。圖6.1 Keil4的程序編譯界面此時(shí)實(shí)驗(yàn)程序采取宏定義的方式,這樣程序?qū)哟魏退悸繁容^清晰,進(jìn)而便于后期調(diào)試優(yōu)化系統(tǒng)。其中的包括LED1602.h是以前就編譯后的,這讓調(diào)用起來比較節(jié)省時(shí)間,修改也很方便。6.1.1 超聲波發(fā)射啟動(dòng) while(1) EA=0; Trig=1; delay_20us(); Trig=0;據(jù)模塊工作的時(shí)序圖,要求在啟動(dòng)超聲波模塊的前應(yīng)該給予TRIG引腳提供至少10us的高電平。程序利用循環(huán)執(zhí)行空語句,達(dá)到20us延時(shí)以上,來啟動(dòng)超聲波模塊正常工作。6.1.2 超聲波模塊工作 while(Echo=0); /等待Echo回波引腳變高電平succeed_flag=0; /清測(cè)量成功標(biāo)志 EX1=1; /打開外部中斷 TH1=0; /定時(shí)器1清零 TL1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- Unit 4 Our World Topic2 Section C 教學(xué)設(shè)計(jì) 2024-2025學(xué)年仁愛科普版八年級(jí)英語上冊(cè)
- Module 9 Unit 2 I'm going to do the high jump.(教學(xué)設(shè)計(jì))-2024-2025學(xué)年外研版(三起)英語四年級(jí)上冊(cè)
- 10 滅火與逃生 教學(xué)設(shè)計(jì)-2023-2024學(xué)年科學(xué)五年級(jí)下冊(cè)青島版
- 熱電廠資源需求分析
- 二零二五年度購(gòu)房合同房屋交易風(fēng)險(xiǎn)防范提示
- 二零二五年度生態(tài)園區(qū)綠植花卉租賃養(yǎng)護(hù)管理協(xié)議
- 2025年度特色餐飲店品牌合作推廣協(xié)議書
- 二零二五年度環(huán)境保護(hù)合同授權(quán)委托書
- 二零二五年度消防員勞務(wù)派遣與消防安全風(fēng)險(xiǎn)評(píng)估合同
- 2025年度環(huán)保材料知識(shí)產(chǎn)權(quán)歸屬及市場(chǎng)推廣合同
- 2024年新人教版七年級(jí)上冊(cè)歷史全冊(cè)課件 第1課 遠(yuǎn)古時(shí)期的人類活動(dòng)
- 北師大版二年級(jí)數(shù)學(xué)下冊(cè)全冊(cè)10套試卷(附答案)
- 數(shù)字出版概論 課件 第六章 數(shù)字內(nèi)容加工、管理技術(shù)
- 【中考真題】廣東省2024年中考語文真題試卷
- 糖尿病并發(fā)癥的早期篩查
- GB/T 32399-2024信息技術(shù)云計(jì)算參考架構(gòu)
- 初中體育與健康 初二 水平四(八年級(jí))田徑大單元教學(xué)設(shè)計(jì)+快速跑教案
- 2025年湖南省長(zhǎng)沙市中考數(shù)學(xué)模擬試卷(附答案解析)
- 五級(jí)人工智能訓(xùn)練師(初級(jí))職業(yè)技能等級(jí)認(rèn)定考試題庫(kù)(含答案)
- 2022年內(nèi)蒙古呼和浩特市中考化學(xué)真題(解析版)
-
評(píng)論
0/150
提交評(píng)論