2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩65頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、<p>  編 號: </p><p>  審定成績: </p><p><b>  畢業(yè)設(shè)計(論文)</b></p><p>  填表時間:二○一三年 五 月</p><p> 設(shè)計(論文)題目:超聲波測距儀設(shè)計開發(fā)</p><p>&

2、lt;b>  摘 要</b></p><p>  隨著社會的發(fā)展,人們對距離測量精度以及測距工具附加功能多樣性的要求越來越高。在社會生活中,超聲波的應(yīng)用無處不在,如汽車?yán)走_(dá)倒車系統(tǒng)、管道長度測量、物位測量等。由于超聲波具有指向性強(qiáng),能量消耗慢,在介質(zhì)中傳播距離遠(yuǎn),因而超聲波技術(shù)的研究與開發(fā),具有現(xiàn)實意義。</p><p>  本文介紹了一種利用超聲波測距的系統(tǒng)。該系統(tǒng)是

3、一種基于STC89C52單片機(jī)的超聲波測距系統(tǒng)。它根據(jù)超聲波在空氣中傳播遇到被測物反射的原理,通過計算傳播的時間來確定距離。該系統(tǒng)由超聲波傳感器模塊作為超聲波發(fā)生器和接收器,主控制器模塊進(jìn)行數(shù)據(jù)的處理,顯示模塊實時顯示被測距離,按鍵模塊實現(xiàn)測距系統(tǒng)的一些附加功能。該超聲波測距系統(tǒng)測距范圍為2cm—3m,具有測量準(zhǔn)確,精度高,顯示數(shù)據(jù)及時的特點,并能鎖定當(dāng)前值,查詢歷史值。能廣泛運(yùn)用到工廠里,模具制作成型后方便及時校驗?zāi)>?,具有一定的實?/p>

4、性。</p><p>  【關(guān)鍵詞】超聲波 測距 單片機(jī)</p><p><b>  ABSTRACT</b></p><p>  With the development of society, people require more for measurement accuracy and distance meter with mul

5、tiple functions. In social life, the use of ultrasonic is everywhere, for example, the auto reversing system, the measurement of the length of pipe, the measurement of position and so on. The ultrasonic have some charact

6、eristics of powerful directivity, low energy-loss, long propagation distance in the medium, so ultrasound technology research and development has the realistic meaning.</p><p>  This paper introduces a kind

7、of ultrasonic ranging system. This ultrasonic ranging system based on a SCM (Single Chip Microcomputer) of STC89C52. It according to the spread of ultrasound in the air meeting something then reflecting, and it measures

8、distance by counting the travel time. This system consists of ultrasonic sensor module as the ultrasonic generator and receiver, main controller module for data processing, display module displaying the distance being me

9、asured, keys module for some ad</p><p>  【Key words】ultrasonic distance measurement SCM</p><p><b>  目 錄</b></p><p><b>  前 言1</b></p><p>  第

10、一章 超聲波測距系統(tǒng)工作原理2</p><p>  第一節(jié) 超聲波概述2</p><p>  第二節(jié) 超聲波傳感器簡介3</p><p>  一、壓電式超聲波傳感器3</p><p>  第三節(jié) 超聲波傳感器原理5</p><p><b>  一、測距原理5</b></p>

11、<p>  二、超聲波測量中盲區(qū)及近限和遠(yuǎn)限5</p><p>  三、提高測距儀的措施6</p><p>  第四節(jié) 超聲波測距儀系統(tǒng)設(shè)計7</p><p>  一、論文設(shè)計內(nèi)容7</p><p>  二、硬件設(shè)計內(nèi)容7</p><p>  第五節(jié) 本章小結(jié)8</p><

12、p>  第二章 系統(tǒng)硬件設(shè)計9</p><p>  第一節(jié) 電路原理設(shè)計9</p><p>  一、設(shè)計總體思路9</p><p>  第二節(jié) 主要元器件介紹9</p><p>  一、單片機(jī)STC89C529</p><p>  二、超聲波傳感器HC-SR0411</p><p&

13、gt;  三、顯示電路LCD160214</p><p><b>  四、按鍵電路22</b></p><p><b>  五、下載電路22</b></p><p>  第三節(jié) 本章小結(jié)24</p><p>  第三章 系統(tǒng)軟件設(shè)計25</p><p>  第一節(jié)

14、軟件設(shè)計總體方案25</p><p>  一、主程序設(shè)計總體思路25</p><p>  二、測距子程序軟件設(shè)計26</p><p>  三、顯示程序設(shè)計27</p><p>  四、按鍵程序設(shè)計29</p><p>  第二節(jié) 本章小結(jié)31</p><p>  第四章 超聲波測距的

15、誤差分析32</p><p>  第一節(jié) 超聲波測距測量結(jié)果32</p><p><b>  一、測量結(jié)果32</b></p><p><b>  二、誤差分析32</b></p><p>  第二節(jié) 本章小結(jié)34</p><p><b>  結(jié) 論3

16、5</b></p><p><b>  致 謝36</b></p><p><b>  參考文獻(xiàn)37</b></p><p><b>  附 錄38</b></p><p><b>  一、英文原文38</b></p>

17、<p><b>  二、英文翻譯44</b></p><p><b>  三、電路圖49</b></p><p><b>  四、源程序50</b></p><p><b>  前 言</b></p><p>  超聲波是指頻率在20k

18、Hz以上的聲波,它屬于機(jī)械波的范疇。近年來,隨著電子測量技術(shù)的發(fā)展,運(yùn)用超聲波作出精確測量已成可能。隨著經(jīng)濟(jì)發(fā)展,電子測量技術(shù)應(yīng)用越來越廣泛,而超聲波測量精確高,成本低,性能穩(wěn)定則備受青睞。超聲波是指頻率在20kHz以上的聲波,它屬于機(jī)械波的范疇。超聲波也遵循一般機(jī)械波在彈性介質(zhì)中的傳播規(guī)律,如在介質(zhì)的分界面處發(fā)生反射和折射現(xiàn)象,在進(jìn)入介質(zhì)后被介質(zhì)吸收而發(fā)生衰減等。正是因為具有這些性質(zhì),使得超聲波可以用于距離的測量中。隨著科技水平的不斷

19、提高,超聲波測距技術(shù)被廣泛應(yīng)用于人們?nèi)粘9ぷ骱蜕钪?。一般的超聲波測距儀可用于固定物位或液位的測量,適用于建筑物內(nèi)部、液位高度的測量等。</p><p>  由于超聲波測距是一種非接觸檢測技術(shù),不受光線、被測對象顏色等的影響,較其它儀器更衛(wèi)生,更耐潮濕、粉塵、高溫、腐蝕氣體等惡劣環(huán)境,具有少維護(hù)、不污染、高可靠、長壽命等特點。因此可廣泛應(yīng)用于紙業(yè)、礦業(yè)、電廠、化工業(yè)、水處理廠、污水處理廠、農(nóng)業(yè)用水、環(huán)保檢測、食

20、品、防汛、水文、明渠、空間定位、公路限高等行業(yè)中??稍诓煌h(huán)境中進(jìn)行距離準(zhǔn)確度在線標(biāo)定,可直接用于水、酒、糖、飲料等液位控制,可進(jìn)行差 值設(shè)定,直接顯示各種液位罐的液位、料位高度。因此,超聲波在空氣中測距在特殊環(huán)境下有較廣泛的應(yīng)用。利用超聲波檢測往往比較迅速、方便、計算簡單、易于實現(xiàn)實時控制,并且在測量精度方面能達(dá)到工業(yè)實用的指標(biāo)要求,因此可以廣泛運(yùn)用在工廠對模具經(jīng)行校驗的過程中,因此超聲波測距在精確實時測量的研究上得到了廣泛應(yīng)用。&l

21、t;/p><p>  超聲波測距原理是發(fā)射器發(fā)出的超聲波以速度v在空氣中傳播,在到達(dá)被測物體時被反射返回,由接收器接收,其往返時間為t,由s=v*t/2即可算出被測物體的距離。由于超聲波也是一種聲波,其聲速v與溫度有關(guān),下表列出了幾種不同溫度下的聲速。在使用時,如果溫度變化不大,則可認(rèn)為聲速是基本不變的。如果測距精度要求很高,則應(yīng)通過溫度補(bǔ)償?shù)姆椒右孕U???紤]到該系統(tǒng)應(yīng)用場合不具特殊性,因此速度v選擇常溫下的速度3

22、44m/s。</p><p>  表1.1 超聲波波速與溫度的關(guān)系表</p><p>  第一章 超聲波測距系統(tǒng)工作原理</p><p><b>  第一節(jié) 超聲波概述</b></p><p>  聲音是與人類生活緊密相聯(lián)的一種自然現(xiàn)象,人們對聲音早有認(rèn)識,在人們的日常生活中存在著各式各樣的聲音。在科學(xué)史上,聲學(xué)是發(fā)展最

23、早的學(xué)科之一。然而,由于超聲是人耳聽不到的信號,直到18世紀(jì),人們才開始研究海豚、蝙蝠等動物時,才推測自然界存在超聲波。聲波是一種能在氣體、液體和固體中傳播的機(jī)械波。根據(jù)聲波振動頻率的范圍,可以分為次聲波、聲波、超聲波和特超聲波。當(dāng)聲的頻率高到超過人耳的頻率極限時,人們就覺察不出聲的存在,我們稱這種高頻率的聲為超聲。頻率高于人類聽覺上限頻率(約20000Hz)的聲波,稱為超聲波,或稱超聲。超聲波在介質(zhì)中傳輸?shù)乃俣燃唇橘|(zhì)的聲速。它是一秒鐘

24、超聲波等相位面通過的距離,與介質(zhì)的密度和彈性性質(zhì)有關(guān)。對于液體介質(zhì),只能傳播縱波。聲速參數(shù)與聲介質(zhì)、聲阻抗及生衰減等有很大關(guān)系。</p><p>  聲速是隨著介質(zhì)及其狀態(tài)(如溫度)的不同而不同。如在常溫下,空氣中的聲速約為344m/s,在水中的聲速約為1440m/s,而在鋼鐵中約為5000m/s。除水以外,大部分液體的聲速隨溫度的升高而增加。流體中的聲速隨壓力的增加而增加。</p><p&g

25、t;  聲速與介質(zhì)的許多特性有關(guān),有的關(guān)系非常直接,可有精確的理論公式,有的關(guān)系比較間接而復(fù)雜,但在特定條件下,也可建立一些經(jīng)驗公式,例如介質(zhì)的成分、混合物的比例、溶液的濃度、某些液體的比重等,都可以與聲速建立一定關(guān)系,這樣就可以通過聲速來測定這些特性參數(shù)。由于介質(zhì)的溫度、壓強(qiáng)和流速等狀態(tài)參量的變化都會引起響應(yīng)的聲速變化,因此出現(xiàn)了超聲溫度計和超聲流量計等。在聲速已知的介質(zhì)中,可以利用身波傳播距離L和傳播時間t的關(guān)系L=vt,進(jìn)行超聲測

26、距,超聲液位計和超聲測厚計就是這方面的典型應(yīng)用。</p><p>  聲阻抗是當(dāng)聲波從一種介質(zhì)傳播到另一種介質(zhì),在兩個介質(zhì)的分界面上一部分超聲波被反射,另一部分透射過界面,在另一種介質(zhì)內(nèi)部繼續(xù)傳播。這樣的兩種情況稱之為聲波的反射和折射。</p><p>  由物理學(xué)可知,當(dāng)波在界面上產(chǎn)生反射時,入射角的正弦之比等于波速之比,當(dāng)入射波和反射波的波型相同時,波速相同,入射角度等于反射角。當(dāng)波在

27、界面處生折射時,入射角的正弦與折射角的正弦之比,等于入射波在第一介質(zhì)中的波速與折射波在第二介質(zhì)中的波速之比。</p><p>  超聲波在兩種介質(zhì)的界面上的反射能量和透射能量的變化,取決于這兩種介質(zhì)的聲阻抗之比。聲阻抗定義為傳聲介質(zhì)的密度ρ與聲速c的乘積,用Z表示。它是介質(zhì)固有的一個常數(shù),它的數(shù)值對超聲波在介質(zhì)中的傳播非常重要,單位為瑞利(rayl)。</p><p>  超聲波在彈性介質(zhì)

28、中傳播時,會發(fā)生能量的衰減,其產(chǎn)生原因可分為三個方面:</p><p> ?、?由于波前的擴(kuò)展而產(chǎn)生的能量損失;</p><p> ?、?超聲波在介質(zhì)中的散射而產(chǎn)生的能量損失,即散射衰減;</p><p> ?、?由于介質(zhì)內(nèi)耗所產(chǎn)生的吸收衰減。</p><p>  第二節(jié) 超聲波傳感器簡介</p><p>  一、壓電

29、式超聲波傳感器</p><p>  壓電式超聲波發(fā)生器實際上是利用壓電晶體的諧振來工作的。超聲波發(fā)生器內(nèi)部結(jié)構(gòu)有兩個壓電晶片和一個共振板。當(dāng)它的兩極外加脈沖信號,其頻率等于壓電晶片的固有振蕩頻率時,壓電晶片將會發(fā)生共振,并帶動共振板振動,便產(chǎn)生超聲波。反之,如果兩電極間未外加電壓,當(dāng)共振板接收到超聲波時,將壓迫壓電晶片作振動,將機(jī)械能轉(zhuǎn)換為電信號,這時它就成為超聲波接收器了。</p><p&g

30、t;  目前壓電式換能器的理論研究和實際應(yīng)用最為廣泛,本文超聲波測距選用的也是壓電式超聲波換能器。常見的壓電材料有石英晶體、壓電陶瓷、壓電半導(dǎo)體、高分子壓電材料等,壓電效應(yīng)包括正壓電效應(yīng)和逆壓電效應(yīng)[3]。</p><p>  逆壓電效應(yīng)是指將具有逆壓電效應(yīng)的介質(zhì)置于電場中,由于電場作用介質(zhì)內(nèi)部正負(fù)電荷中心發(fā)生位置變化,這種位置變化在宏觀上表現(xiàn)為產(chǎn)生了形變,形變與電場強(qiáng)度成正比。如電場反向,則形變亦相反。這一現(xiàn)象

31、稱為逆壓電效應(yīng)。利用逆壓電效應(yīng)能產(chǎn)生超聲波。將適當(dāng)?shù)慕蛔冸娦盘柺┘拥骄w上,晶體將發(fā)生交替的壓縮和拉伸,因而產(chǎn)生振動,振動頻率與交變電壓的頻率相同,若把晶體耦合到彈性介質(zhì)中,晶體將充當(dāng)一個超聲源的作用,超聲波將被輻射到那種介質(zhì)中。</p><p>  正壓電效應(yīng)是指當(dāng)對某電介質(zhì)施加應(yīng)力時,產(chǎn)生的變形將引起內(nèi)部正負(fù)電荷中心發(fā)生相對位移而產(chǎn)生極化,在介質(zhì)兩端面上出現(xiàn)符號相反的束縛電荷,其電荷密度與應(yīng)力成正比,這種效應(yīng)

32、稱為正壓電效應(yīng)。利用正壓電效應(yīng)將機(jī)械能(即聲能轉(zhuǎn)換成電能,并用來接受超聲波的裝置,稱為接收換能器。</p><p>  1、超聲波傳感器頻率特性</p><p>  圖1.1是超聲波的頻率特性曲線。圖中,f0為超聲波發(fā)射器的中心頻率 ,在f0處,超聲波發(fā)射器產(chǎn)生的超聲機(jī)械波最強(qiáng),也就是說,在f0處所產(chǎn)生的超聲波聲壓能級最高。而在f0兩測,聲壓能級迅速減小。因此,超聲波發(fā)射器一定要使用非常接

33、近中心頻率的f0的交流電壓來激勵。由圖1.1知,f0為中心頻率,曲線在f0處最尖銳,輸出電信號的幅度最大,信號f0處接收靈敏度最高。因此超聲波接收器具有很好的頻率選擇特性,在構(gòu)成遙測系統(tǒng)時一般不再設(shè)置選頻電路。另外,超聲波接收器的頻率特性和輸出端外接電阻有很大關(guān)系,如果R很大,(如大于100K)頻率特性是尖銳共振的,并且在這個共振頻率上靈敏度很高。如果R較小,(如小于10K)頻率特性曲線變的平滑而且具有放寬的帶寬,同時靈敏度也隨著降低。

34、并且最大靈敏度向著稍低的頻率移動。因此,超聲波接收器應(yīng)于輸入阻抗高的前置放大器配合使用,才能有較高的接收靈敏度。</p><p>  圖1.1 超聲波發(fā)射傳感器的發(fā)射頻率特性</p><p>  2、超聲波傳感器指向特性</p><p>  實際的超聲波傳感器中壓電晶片是個小圓片,可以把表面上每個點看成1個振蕩源,輻射出一個半球面波(子波),這些子波沒有指向性。但離

35、開超聲波傳感器的空間某一點的聲壓是這些子波疊加的結(jié)果(衍射),卻有指向性。指向特性用指向圖表示。下圖1.2就是超聲波傳感器的指向圖。超聲波傳感器的指向圖是由一個主瓣和幾個副瓣構(gòu)成,其物理意義是Ф=0聲壓最大,角度逐漸增大時,聲壓減小。超聲波傳感器的指向角一般為40度~80度[5]。超聲波傳感器指向特性圖如圖1.2所示。</p><p>  圖1.2 超聲波傳感器指向特性圖</p><p>

36、  第三節(jié) 超聲波傳感器原理</p><p><b>  一、測距原理</b></p><p>  超聲波測距的方法有多種,如相位檢測法、聲波幅值檢測法和往返時間檢測法等。相位檢測法雖然精度高,但檢測范圍有限;聲波幅值檢測法易受反射波的影響。本論文硬件設(shè)計采用超聲波往返時間檢測法,其原理為:檢測從超聲波發(fā)射器發(fā)出的超聲波(假設(shè)傳播介質(zhì)為氣體),經(jīng)氣體介質(zhì)的傳播到接收器

37、的時間即往返時間。往返時間與氣體介質(zhì)中的聲速相乘,就是聲波傳輸?shù)木嚯x。而所測距離是聲波傳輸距離的一半,即公式(1.3.1),</p><p>  L= vt/2 (1.3.1)</p><p>  在上式中,L為待測距離,v為超聲波的聲速,t為往返時間。若要求測距誤差小于0.lm,已知聲速v=344m/s(20℃時)。顯然,直接用秒表測時間是不

38、現(xiàn)實的。因此,實現(xiàn)超聲波測距必須避開直接測量時間的方法,才能獲得實用的測長精度。</p><p>  二、超聲波測量中盲區(qū)及近限和遠(yuǎn)限</p><p>  用往返時間檢測法測量距離時,障礙物與超聲波傳感器間的距離既不能太遠(yuǎn)也不能太近,存在著距離測量的近限和遠(yuǎn)限[1]。距離過遠(yuǎn)時,接收到的信號太弱,以致無法從噪聲信號中分辨出來,這是遠(yuǎn)限存在的原因。在距離過近時,接收信號將落進(jìn)盲區(qū)中而無法分辨

39、出來,這是近限所以存在的原因。</p><p>  在使用一個探頭同時充當(dāng)發(fā)射和接收的情況下,由于在探頭上施加的發(fā)射電壓強(qiáng)達(dá)幾十伏甚至上百伏以上,雖然發(fā)射信號只維持一個極短的時間,但停止施加發(fā)射信號后,探頭上還存在一定的余振,因此在一段較長的時間內(nèi),加在接收放大器輸入端的發(fā)射信號幅值仍是相當(dāng)強(qiáng)的,可以達(dá)到限幅電路,引起探頭振動,不能進(jìn)行正確的測量,同時,探頭上接收到的各種反射信號卻遠(yuǎn)比發(fā)射信號小,即使是離探頭較近

40、處的液面反射信號也達(dá)不到限幅電路的限幅電平。當(dāng)液面離探頭越來越遠(yuǎn)時,接收信號與發(fā)射信號相隔時間越來越長,其幅值相應(yīng)的越來越小。同時,接收信號的衰減程度總是要比發(fā)射信號余振的衰減慢得多。為了保證一定的信噪比,接收信號需要規(guī)定一個值,接收信號必須大于這個值,才能有輸出信號。這就構(gòu)成了遠(yuǎn)限的問題。</p><p>  在使用一個探頭的情況下,發(fā)射信號的幅值要維持到低于引起探頭振動時,接收信號才基本上擺脫了發(fā)射信號的影響

41、而能夠明顯地分辨出來。所以把這段時間規(guī)定為盲區(qū)時間。當(dāng)開始計時,測量超聲波在空氣中的傳播時間才有效。</p><p>  但是,當(dāng)探測距離很遠(yuǎn)時,為了增大發(fā)射功率,須采用特殊形式的大功率超聲發(fā)射傳感器,但這些傳感器的接收靈敏度一般很低,甚至無法用于接收,在這種情況下,選用兩個換能器分別用于發(fā)送和接收。而使用雙探頭方式,不僅可以增加探測距離,還可以減小盲區(qū)。由于發(fā)射探頭上并不直接施加發(fā)射電壓,所以,從理論上說,可以

42、沒有盲區(qū)。但是,由于接收電路多少會受到發(fā)射電路的感應(yīng),并且發(fā)射探頭所發(fā)出的超聲波可能有部分直接繞道接收探頭,因此實際上仍存在一定的盲區(qū),不過它要比單探頭方式的盲區(qū)小很多。</p><p>  所以,在本實驗中,我們選取了雙探頭的工作方式,減小盲區(qū),同時提高檢測的距離精度。</p><p>  三、提高測距儀的措施</p><p><b>  1、聲速校正&

43、lt;/b></p><p>  要想通過測量超聲波傳播時間確定距離,聲速c必須恒定,實際上聲速隨介質(zhì)、溫度、壓力等變化而變化。一般情況下,由于大氣壓力變化很小,因此傳播速度主要考慮溫度的影響。對一定介質(zhì),通常采用對溫度進(jìn)行修正的方法,可以測得比較準(zhǔn)確的距離。通過對溫度修正來校正聲速的方法,即用測溫元件測量實際環(huán)境。</p><p><b>  2、減小盲區(qū)</b&g

44、t;</p><p>  減小盲區(qū)可以壓縮發(fā)射脈沖寬度,發(fā)射端采用減幅振蕩脈沖或單個脈沖,可使余震(拖尾)減少,此法常用于短距離測量距離。另外采用自動距離增益控制功能的接收放大器,使近距離的增益很小,遠(yuǎn)距離時的增益較大,這樣一方面發(fā)射信號的余震幅度變小,相應(yīng)的延續(xù)時間縮短,可以分辨出近處的接受回波信號,故可使盲區(qū)減少[2]。另一方面,可使遠(yuǎn)處的回波信號的幅度增大,以提高測量的精度。再次,超聲波測距儀都有確定的量程

45、。量程主要決定于接收信號的幅值應(yīng)大于規(guī)定的闡值。這個閡值決定信噪比。噪聲有兩類,一類電噪聲,在處理上同其它電子儀器一樣,另一類為機(jī)械噪聲,其中工業(yè)噪聲頻率較低,對液介式超聲測距儀,工作頻率較高,可以避開工業(yè)噪聲頻譜段。而氣介式超聲回波測距儀,一般頻率都較低,易引入工業(yè)噪聲。這時要求對環(huán)境噪聲進(jìn)行頻譜分析,盡量避免與噪聲頻率重疊。</p><p>  第四節(jié) 超聲波測距儀系統(tǒng)設(shè)計</p><p&

46、gt;<b>  一、論文設(shè)計內(nèi)容</b></p><p>  超聲波測距儀開發(fā)設(shè)計論文將包括超聲波測距系統(tǒng)工作原理,系統(tǒng)硬件設(shè)計,系統(tǒng)軟件設(shè)計以及超聲波測距儀誤差統(tǒng)計與分析。</p><p>  前言。介紹了超聲波測距儀所應(yīng)用領(lǐng)域之廣,以及本次設(shè)計所應(yīng)用的工廠模具校正測量。指出了論文研究的基礎(chǔ)、現(xiàn)實意義。并大致介紹論文研究內(nèi)容及其結(jié)構(gòu)。</p><

47、;p>  第一章,超聲波測距系統(tǒng)工作原理。首先介紹了超聲波的基本概念,然后介紹了超聲波傳感器,重點是壓電式傳感器。最后介紹了超聲波傳感器測距儀的測距原理,以及影響測距誤差的因素。</p><p>  第二章,系統(tǒng)硬件設(shè)計。論文首先介紹了硬件設(shè)計的總體思路。然后分別著重介紹了單片機(jī)、顯示電路、測距模塊、按鍵電路、下載電路這幾個主要硬件的功能與應(yīng)用。</p><p>  第三章。系統(tǒng)軟件

48、設(shè)計。論文首先介紹了軟件設(shè)計的總體思路。然后分別從主程序、測距子程序、按鍵程序、顯示程序?qū)τ布δ艿膶崿F(xiàn)進(jìn)行介紹。</p><p>  第四章。超聲波測距的誤差分析。論文首先客觀的記錄了本次超聲波測距儀的測量結(jié)果,然后對測量結(jié)果經(jīng)行了細(xì)致的分析,最后提出了減小誤差的方法和措施。</p><p><b>  二、硬件設(shè)計內(nèi)容</b></p><p&g

49、t;  硬件設(shè)計上考慮到制作成本以及鍛煉自己的動手能力,選用萬用板自己焊接電路,但是由于自己考慮不夠周全,硬件電路期間布局設(shè)計上造成跳線過多,設(shè)計外觀不夠美觀。而且在最初設(shè)計上考慮到為了實現(xiàn)掉電保存數(shù)據(jù)功能,電路板上焊接了AT24C02芯片,但是在最后軟件設(shè)計時,并沒使用到這個芯片。電路板上還設(shè)計了復(fù)位電路,但是在調(diào)試過程中,由于功能都能滿足而且效果較好,使得復(fù)位電路變得多余了??傊布O(shè)計上,功能完美實現(xiàn),但是在最初整體布局規(guī)劃上做的

50、不夠完善。</p><p><b>  第五節(jié) 本章小結(jié)</b></p><p>  超聲波測距的原理是利用超聲波的發(fā)射和接收,根據(jù)超聲波傳播的時間來計算出傳播距離。實用的測距方法有兩種,一種是在被測距離的兩端,一端發(fā)射,另一端接收的直接波方式,適用于身高計;一種是發(fā)射波被物體反射回來后接收的反射波方式,適用于測距儀。此次設(shè)計采用反射波方式。由于此次設(shè)計為短距離測量,

51、為了提高分辨率,減小誤差,故使用頻率高的傳感器。為了減少盲區(qū),超聲波發(fā)生器與超聲波接收器盡量縮小間距。</p><p>  第二章 系統(tǒng)硬件設(shè)計</p><p>  第一節(jié) 電路原理設(shè)計</p><p><b>  一、設(shè)計總體思路</b></p><p>  主要由單片機(jī)系統(tǒng),顯示電路,超聲波發(fā)射電路和超聲波接收電路,

52、按鍵電路四部分組成。利用單片機(jī)來實現(xiàn)對超聲波傳感器模塊的控制,并且由定時器計算超聲波傳感器模塊所返回的高電平持續(xù)時間,通過轉(zhuǎn)換得出傳感器與障礙物之間的距離。單片機(jī)及時將所測距離通過顯示電路顯示出來。按鍵電路提供了必要的附加功能[8]。結(jié)構(gòu)框圖如圖2.1所示。</p><p>  圖2.1 超聲波測距系統(tǒng)結(jié)構(gòu)框圖</p><p>  第二節(jié) 主要元器件介紹</p><p&

53、gt;  一、單片機(jī)STC89C52</p><p>  STC89C52是STC公司生產(chǎn)的一種低功耗、高性能CMOS8位微控制器,具有8K 在系統(tǒng)可編程Flash存儲器。STC89C52使用經(jīng)典的MCS-51內(nèi)核,但做了很多的改進(jìn)使得芯片具有傳統(tǒng)51單片機(jī)不具備的功能。在單芯片上,擁有靈巧的8位CPU 和在系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。具有以下標(biāo)

54、準(zhǔn)功能:8k字節(jié)Flash,512字節(jié)RAM,32 位I/O口線,看門狗定時器,內(nèi)置4KB EEPROM,MAX810復(fù)位電路,3個16位定時器/計數(shù)器,4個外部中斷,一個7向量4級中斷結(jié)構(gòu)(兼容傳統(tǒng)51的5向量2級中斷結(jié)構(gòu)),全雙工串行口。另外STC89C52可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié)

55、,單片機(jī)一切工作停止,直到下一個中斷或硬件復(fù)位為止。最高運(yùn)作頻率35MHz,6T/12T可選[4]。如圖2.2.1所示。</p><p>  圖2.2.1 STC89C52單片機(jī)</p><p><b>  1、工作參數(shù)</b></p><p> ?、?增強(qiáng)型8051單片機(jī),6時鐘/機(jī)器周期和12時鐘/機(jī)器周期可以任意 選擇,指令代碼完全

56、兼容傳統(tǒng)8051;</p><p> ?、?工作電壓:5.5V~3.3V(5V單片機(jī))/3.8V~2.0V(3V單片機(jī));</p><p>  工作頻率范圍:0~40MHz,相當(dāng)于普通8051的0~80MHz,實際工作 頻率可③ 達(dá)48MHz;</p><p>  ④ 用戶應(yīng)用程序空間為8K字節(jié);</p><p>  ⑤ 片上集成512字節(jié)R

57、AM;</p><p>  ⑥ 通用I/O 口(32個),復(fù)位后為:P0/P1/P2/P3 是準(zhǔn)雙向口/弱上拉, P0口是漏極開路輸出,作為總線擴(kuò)展用時,不用加上拉電阻,作為I/O口用時,需加上拉電阻;</p><p> ?、?ISP(在系統(tǒng)可編程)/IAP(在應(yīng)用可編程),無需專用編程器,無 需專用仿真器,可通過串口(RxD/P3.0,TxD/P3.1)直接下載用戶程 序,數(shù)秒即可完成一

58、片;</p><p>  ⑧ 具有EEPROM功能;</p><p> ?、?共3個16位定時器/計數(shù)器。即定時器T0、T1、T2;</p><p> ?、?外部中斷4路,下降沿中斷或低電平觸發(fā)電路,Power Down模式可 由外部中斷低電平觸發(fā)中斷方式喚醒[7]。</p><p><b>  2、引腳說明</b>&l

59、t;/p><p>  如圖2.2.2所示。</p><p> ?、?P0:顯示電路數(shù)據(jù)接口;</p><p> ?、?P2.5-P2.7:LCD1602寄存器選擇信號線、讀寫信號線、使能信號線;</p><p> ?、?P1.2-P1.6:按鍵電路;</p><p> ?、?P2.0:超聲波傳感器HC-SR04信號返回線;

60、</p><p>  ⑤ P2.1:超聲波傳感器HC-SR04啟動信號線;</p><p> ?、?P3.0-P3.1:MAX232串口信號線;</p><p> ?、?P1.4:存入當(dāng)前距離值;</p><p> ?、?P1.5:查詢已存歷史距離值;</p><p>  ⑨ XTAL1、XTAL2:外部時鐘信號線[5

61、]。</p><p>  圖2.2.2 89C52引腳圖</p><p>  二、超聲波傳感器HC-SR04</p><p>  HC-SR04超聲波傳感器模塊可提供2cm-300cm的非接觸式距離感測功能,測距精度可高達(dá)3mm;模塊包括超聲波發(fā)射器、接收器與控制電路[6]。實物圖如圖2.2.3所示。</p><p>  圖2.2.3 HC-

62、SR04超聲波模塊實物圖</p><p>  1、HC-SR04主要參數(shù)</p><p>  表2.2.1 HC-SR04參數(shù)</p><p>  2、HC-SR04內(nèi)部結(jié)構(gòu)與工作原理</p><p>  該超聲波傳感器的內(nèi)部結(jié)構(gòu)及電路工作原理如圖2.2.4和圖2.2.5所示,該傳感器主要包括兩大部分:發(fā)射電路和接收電路。采用I/O觸發(fā)測距,

63、給至少10us的高電平信號,模塊自動發(fā)送8個40kHz的方波,并自動檢測是否有信號返回,當(dāng)接收到回波時,通過I/O輸出一高電平,高電平持續(xù)的時間t就是超聲波從發(fā)射到返回的時間,測試距離s=(t*v)/2[12]。v是超聲波在空氣中傳播的速度。</p><p> ?。?)、發(fā)射電路的設(shè)計</p><p>  超聲波傳感器的發(fā)射電路主要由方波發(fā)生芯片,40kHz的晶振和MAX232芯片構(gòu)成,單

64、片機(jī)給方波發(fā)生芯片觸發(fā)信號后,方波發(fā)生芯片開始工作,產(chǎn)生40kHz的方波信號,電平轉(zhuǎn)換芯片MAX232將TTL電平轉(zhuǎn)換成可以驅(qū)動振蕩器的高電壓,進(jìn)而產(chǎn)生所需的40kHz的超聲波[10]。</p><p> ?。?)、接收電路的設(shè)計</p><p>  本設(shè)計中采用了前置放大電路+帶通濾波電路+后級放大電路。將接收到的波形經(jīng)過整形、積分、檢波、濾波和限幅放大等實現(xiàn)接收超聲波的功能[11]。&

65、lt;/p><p>  當(dāng)距離較遠(yuǎn)時,回波信號會非常微弱,轉(zhuǎn)換后的信號電平幅值很小,故要經(jīng)過若干級放大,使輸出功率達(dá)到一定要求,并且為了防止信號出現(xiàn)較大的失真,接收電路可以保證有4MHz的帶寬。放大后的交流信號送入比較器后輸出一個方波信號,并使觸發(fā)器觸發(fā),向CPU發(fā)出中斷請求。在中斷服務(wù)程序中,讀取計數(shù)器的計數(shù)值,結(jié)合溫度補(bǔ)償后的聲速計算出測距儀距離障礙物的距離。</p><p>  圖2.2

66、.4 HC-SR04發(fā)射電路</p><p>  圖2.2.5 HC-SR04接收電路</p><p>  三、顯示電路LCD1602</p><p>  在日常生活中,我們對液晶顯示器并不陌生。液晶顯示模塊已作為很多電子產(chǎn)品的通過器件,如在計算器、萬用表、電子表及很多家用電子產(chǎn)品中都可以看到,顯示的主要是數(shù)字、專用符號和圖形。在單片機(jī)的人機(jī)交流界面中,一般的輸出方

67、式有以下幾種:發(fā)光管、LED數(shù)碼管、液晶顯示器。</p><p>  液晶顯示器顯示質(zhì)量高,由于液晶顯示器每一個點在收到信號后就一直保持那種色彩和亮度,恒定發(fā)光,而不像陰極射線管顯示器(CRT)那樣需要不斷刷新新亮點。因此,液晶顯示器畫質(zhì)高且不會閃爍。其次,液晶顯示器都是數(shù)字式的,和單片機(jī)系統(tǒng)的接口更加簡單可靠,操作更加方便。而且,液晶顯示器通過顯示屏上的電極控制液晶分子狀態(tài)來達(dá)到顯示的目的,在重量上比相同顯示面

68、積的傳統(tǒng)顯示器要輕得多。同時,相對而言,液晶顯示器的功耗主要消耗在其內(nèi)部的電極和驅(qū)動IC上,因而耗電量比其它顯示器要少得多。</p><p><b>  1、液晶顯示原理</b></p><p>  液晶顯示的原理是利用液晶的物理特性,通過電壓對其顯示區(qū)域進(jìn)行控制,有電就有顯示,這樣即可以顯示出圖形。液晶顯示器具有厚度薄、適用于大規(guī)模集成電路直接驅(qū)動、易于實現(xiàn)全彩色顯

69、示的特點,目前已經(jīng)被廣泛應(yīng)用在便攜式電腦、數(shù)字?jǐn)z像機(jī)、PDA移動通信工具等眾多領(lǐng)域。</p><p><b> ?。?)、線段的顯示</b></p><p>  點陣圖形式液晶由M×N個顯示單元組成,假設(shè)LCD顯示屏有64行,每行有128列,每8列對應(yīng)1字節(jié)的8位,即每行由16字節(jié),共16×8=128個點組成,屏上64×16個顯示單元與顯

70、示RAM區(qū)1024字節(jié)相對應(yīng),每一字節(jié)的內(nèi)容和顯示屏上相應(yīng)位置的亮暗對應(yīng)。例如屏的第一行的亮暗由RAM區(qū)的000H——00FH的16字節(jié)的內(nèi)容決定,當(dāng)(000H)=FFH時,則屏幕的左上角顯示一條短亮線,長度為8個點;當(dāng)(3FFH)=FFH時,則屏幕的右下角顯示一條短亮線;當(dāng)(000H)=FFH,(001H)=00H,(002H)=00H,……(00EH)=00H,(00FH)=00H時,則在屏幕的頂部顯示一條由8段亮線和8條暗線組成的

71、虛線。這就是LCD顯示的基本原理。</p><p><b>  (2)、字符的顯示</b></p><p>  用LCD顯示一個字符時比較復(fù)雜,因為一個字符由6×8或8×8點陣組成,既要找到和顯示屏幕上某幾個位置對應(yīng)的顯示RAM區(qū)的8字節(jié),還要使每字節(jié)的不同位為“1”,其它的為“0”,為“1”的點亮,為“0”的不亮。這樣一來就組成某個字符。但由于內(nèi)

72、帶字符發(fā)生器的控制器來說,顯示字符就比較簡單了,可以讓控制器工作在文本方式,根據(jù)在LCD上開始顯示的行列號及每行的列數(shù)找出顯示RAM對應(yīng)的地址,設(shè)立光標(biāo),在此送上該字符對應(yīng)的代碼即可。</p><p><b> ?。?)、漢字的顯示</b></p><p>  漢字的顯示一般采用圖形的方式,事先從微機(jī)中提取要顯示的漢字的點陣碼(一般用字模提取軟件),每個漢字占32B,

73、分左右兩半,各占16B,左邊為1、3、5……右邊為2、4、6……根據(jù)在LCD上開始顯示的行列號及每行的列數(shù)可找出顯示RAM對應(yīng)的地址,設(shè)立光標(biāo),送上要顯示的漢字的第一字節(jié),光標(biāo)位置加1,送第二個字節(jié),換行按列對齊,送第三個字節(jié)……直到32B顯示完就可以LCD上得到一個完整漢字。</p><p>  2、1602字符型LCD簡介</p><p>  字符型液晶顯示模塊是一種專門用于顯示字母、

74、數(shù)字、符號等點陣式LCD,目前常用16*1,16*2,20*2和40*2行等的模塊。1602字符型液晶顯示器實物如圖2.3.1和圖2.3.2所示。</p><p>  圖2.3.1 LCD1602正面</p><p>  圖2.3.2 LCD1602背面</p><p>  3、LCD1602的基本參數(shù)及引腳功能</p><p>  LCD1

75、602分為帶背光和不帶背光兩種,基控制器大部分為HD44780,帶背光的比不帶背光的厚,是否帶背光在應(yīng)用中并無差別,兩者尺寸差別如下圖2.3.3所示:</p><p>  圖2.3.3 LCD1602尺寸圖</p><p>  LCD1602主要參數(shù):</p><p> ?、?顯示容量:16×2個字符;</p><p> ?、?芯片

76、工作電壓:4.5—5.5V;</p><p> ?、?工作電流:2.0mA(5.0V);</p><p> ?、?模塊最佳工作電壓:5.0V;</p><p> ?、?字符尺寸:2.95×4.35(W×H)mm。</p><p><b>  引腳功能說明:</b></p><p&g

77、t;  LCD1602采用標(biāo)準(zhǔn)的14腳(無背光)或16腳(帶背光)接口,各引腳接口說明如表2.3.1和圖2.3.4所示:</p><p>  圖2.3.4 LCD1602顯示電路</p><p>  表2.3.1 LCD1602引腳接口說明</p><p>  第1腳:VSS為地電源。</p><p>  第2腳:VDD接5V正電源。<

78、/p><p>  第3腳:VL為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度。</p><p>  第4腳:RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。</p><p>  第5腳:R/W為讀寫信號線,高電平時進(jìn)行讀操作,低電平時進(jìn)行寫操作。當(dāng)RS和R/W共同

79、為低電平時可以寫入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時可以讀忙信號,當(dāng)RS為高電平R/W為低電平時可以寫入數(shù)據(jù)。</p><p>  第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。</p><p>  第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。</p><p>  第15腳:背光源正極。</p><p> 

80、 第16腳:背光源負(fù)極。</p><p>  4、LCD1602的指令說明及時序</p><p>  1602液晶模塊內(nèi)部的控制器共有11條控制指令,如表2.3.2所示:</p><p>  表2.3.2 控制指令表</p><p>  1602液晶模塊的讀寫操作、屏幕和光標(biāo)的操作都是通過指令編程來實現(xiàn)的。(說明:1為高電平、0為低電平)&l

81、t;/p><p>  指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。</p><p>  指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。</p><p>  指令3:光標(biāo)和顯示模式設(shè)置 I/D:光標(biāo)移動方向,高電平右移,低電平左移 S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效。</p><p>  指令4:顯示開關(guān)控制。

82、D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。</p><p>  指令5:光標(biāo)或顯示移位 S/C:高電平時移動顯示的文字,低電平時移動光標(biāo)。</p><p>  指令6:功能設(shè)置命令 DL:高電平時為4位總線,低電平時為8位總線 N:低電平時為單行顯示,高電平時雙行顯示

83、 F: 低電平時顯示5x7的點陣字符,高電平時顯示5x10的點陣字符。</p><p>  指令7:字符發(fā)生器RAM地址設(shè)置。</p><p>  指令8:DDRAM地址設(shè)置。</p><p>  指令9:讀忙信號和光標(biāo)地址BF:為忙標(biāo)志位,高電平表示忙,此時模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。</p><p><b>

84、  指令10:寫數(shù)據(jù)。</b></p><p><b>  指令11:讀數(shù)據(jù)。</b></p><p>  讀寫操作時序如圖2.3.5和圖2.3.6所示:</p><p>  圖2.3.5 讀操作時序</p><p>  圖2.3.6 寫操作時序</p><p>  5、LCD1602

85、的RAM地址映射</p><p>  液晶顯示模塊是一個慢顯示器件,所以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志為低電平,表示不忙,否則此指令失效。要顯示字符時要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符,圖2.3.6是1602的內(nèi)部顯示地址。</p><p>  圖2.3.6 LCD1602內(nèi)部顯示地址</p><p>  例如第二行第一個字符的地址是40H

86、,那么是否直接寫入40H就可以將光標(biāo)定位在第二行第一個字符的位置呢?這樣不行,因為寫入顯示地址時要求最高位D7恒定為高電平1所以實際寫入的數(shù)據(jù)應(yīng)該是01000000B(40H)+10000000B(80H)=11000000B(C0H)。</p><p>  在對液晶模塊的初始化中要先設(shè)置其顯示模式,在液晶模塊顯示字符時光標(biāo)是自動右移的,無需人工干預(yù)。每次輸入指令前都要判斷液晶模塊是否處于忙的狀態(tài)。</p&

87、gt;<p>  1602液晶模塊內(nèi)部的字符發(fā)生存儲器(CGROM)已經(jīng)存儲了160個不同的點陣字符圖形,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號、和日文假名等,每一個字符都有一個固定的代碼,比如大寫的英文字母“A”的代碼是01000001B(41H),顯示時模塊把地址41H中的點陣字符圖形顯示出來,我們就能看到字母“A”。</p><p><b>  四、按鍵電路</b

88、></p><p>  考慮到實現(xiàn)超聲波測距儀的附加功能,本次設(shè)計一共設(shè)有5個4腳按鍵,分別對應(yīng)的功能是鎖定當(dāng)前值便于記錄、解鎖并繼續(xù)測距、在測距狀態(tài)下存儲當(dāng)前距離值、查詢已存的歷史值、返回測距。5個按鍵分別于單片機(jī)的5個I/O口連接,當(dāng)按下按鍵時單片機(jī)檢測到對應(yīng)的I/O口為低電平,即執(zhí)行相應(yīng)的程序。如圖2.4.1所示。</p><p>  圖2.4.1 按鍵電路</p>

89、<p><b>  五、下載電路</b></p><p><b>  1、MAX232</b></p><p>  MAX232芯片是美信公司專門為電腦的RS-232標(biāo)準(zhǔn)串口設(shè)計的接口電路,使用+5v單電源供電。</p><p>  MAX232是一種雙組驅(qū)動器/接收器,片內(nèi)含有一個電容性電壓發(fā)生器以便在單5

90、V電源供電時提供EIA/TIA-232-E電平。每個接收器將EIA/TIA-232-E電平輸入轉(zhuǎn)換為5V TTL/CMOS電平。這些接收器具有1.3V的典型門限值及0.5V的典型遲滯,而且可以接收±30V的輸入。每個驅(qū)動器將TTL/CMOS輸入電平轉(zhuǎn)換為EIA/TIA-232-E電平。所有的驅(qū)動器、接收器及電壓發(fā)生器都可以在德州儀器公司的LinASICTM元件庫中得到標(biāo)準(zhǔn)單元。MAX232的工作溫度范圍為0℃至70℃,MAX2

91、32I的工作溫度范圍為-40℃至85℃。</p><p>  內(nèi)部結(jié)構(gòu)基本可分三個部分:</p><p>  第一部分是電荷泵電路。由1、2、3、4、5、6腳和4只電容構(gòu)成。功能是產(chǎn)生+12v和-12v兩個電源,提供給RS-232串口電平的需要。</p><p>  第二部分是數(shù)據(jù)轉(zhuǎn)換通道。由7、8、9、10、11、12、13、14腳構(gòu)成兩個數(shù)據(jù)通道。其中13腳(R

92、1IN)、12腳(R1OUT)、11腳(T1IN)、14腳(T1OUT)為第一數(shù)據(jù)通道。8腳(R2IN)、9腳(R2OUT)、10腳(T2IN)、7腳(T2OUT)為第二數(shù)據(jù)通道。TTL/CMOS數(shù)據(jù)從T1IN、T2IN輸入轉(zhuǎn)換成RS-232數(shù)據(jù)從T1OUT、T2OUT送到電腦DB9插頭;DB9插頭的RS-232數(shù)據(jù)從R1IN、R2IN輸入轉(zhuǎn)換成TTL/CMOS數(shù)據(jù)后從R1OUT、R2OUT輸出。</p><p>

93、;  第三部分是供電。15腳GND、16腳VCC(+5v)。</p><p><b>  主要特點:</b></p><p> ?、?單5V電源工作;</p><p>  ② LinBiCMOSTM工藝技術(shù);</p><p> ?、?兩個驅(qū)動器及兩個接收器;</p><p> ?、?±3

94、0V輸入電平;</p><p> ?、?低電源電流:典型值是8mA;</p><p> ?、?符合甚至優(yōu)于ANSI標(biāo)準(zhǔn) EIA/TIA-232-E及ITU推薦標(biāo)準(zhǔn)V.28;</p><p>  ⑦ ESD保護(hù)大于MIL-STD-883(方 法3015)標(biāo)準(zhǔn)的2000V。</p><p>  如下圖2.5.1所示。</p><

95、;p>  圖2.5.1 MAX232下載電路</p><p><b>  第三節(jié) 本章小結(jié)</b></p><p>  在硬件設(shè)計上由于直接使用的超聲波傳感器測距模塊,使得硬件電路設(shè)計方面簡化很多,也為軟件編寫提供了方便,使所測距離更準(zhǔn)確,顯示更及時。另外,在硬件設(shè)計上也有很多不足,比如電路整體布局上欠考慮,一開始沒有很好的規(guī)劃,造成了跳線過多,硬件不夠美觀。而

96、且在最初設(shè)計中考慮到實現(xiàn)掉電保存距離值的功能,在電路板上添加了AT24C02芯片,但在軟件調(diào)試過程中,芯片工作不穩(wěn)定,于是放棄使用AT24C02的掉電寄存功能,直接使用片內(nèi)寄存器存儲距離值。再者,總體設(shè)計時設(shè)計了復(fù)位電路,但在后續(xù)軟件調(diào)試中復(fù)位功能被其他功能所代替??偟膩碚f,本次硬件設(shè)計不夠完美,有待改進(jìn)。</p><p>  第三章 系統(tǒng)軟件設(shè)計</p><p>  第一節(jié) 軟件設(shè)計總體

97、方案</p><p>  一、主程序設(shè)計總體思路</p><p>  系統(tǒng)的主要功能是距離測量,整個系統(tǒng)軟件程序包括主程序、測距子程序、顯示子程序、按鍵子程序、以及各種中斷子程序。主程序流程圖如圖3.1.1所示。系統(tǒng)軟件程序大體上包括下面幾個過程:</p><p><b>  ① 初始化LCD;</b></p><p>

98、 ?、?單片機(jī)對中斷經(jīng)行初始化,并開啟總中斷。;</p><p> ?、?單片機(jī)對超聲波傳感器Trig接口發(fā)出10us脈沖觸發(fā)信號作為啟動信號;</p><p> ?、?Echo引腳檢測到回波信號,關(guān)定時器,計算高電平持續(xù)時間,得出距離;</p><p><b>  ⑤ 顯示測量結(jié)果;</b></p><p> ?、?若

99、有按鍵按下,執(zhí)行相應(yīng)的按鍵程序。</p><p>  圖3.1.1 主程序流程圖</p><p>  二、測距子程序軟件設(shè)計</p><p>  1、超聲波傳感器模塊HC-SR04軟件設(shè)計</p><p>  啟動HC-SR04需要單片機(jī)I/O給Trig引腳一個10us的TTL脈沖觸發(fā)信號,HC-SR04內(nèi)部將發(fā)出8個40KHz周期電平并檢測

100、回波,一旦檢測到有回波信號則輸出回響信號?;仨懶盘柕拿}沖寬度與所測的距離成正比。由此通過發(fā)射信號到收到的回響信號時間間隔可以計算得到距離。公式:s=v*t/2,s為所測距離,v為聲速,t為回響信號高電平持續(xù)時間。HC-SR04時序圖如圖3.2.1所示。</p><p>  圖3.2.1 超聲波測距模塊HC-SR04時序圖</p><p><b>  2、測距程序設(shè)計</b&

101、gt;</p><p>  由定時器T0計算回響信號高電平持續(xù)時間,T0為方式1,啟動模塊后,等待,若檢測到Echo變?yōu)?,開啟計數(shù),當(dāng)Echo變?yōu)?,關(guān)閉計數(shù),計算所測距離s。具體測距程序如下所示:</p><p>  void StartModule() //啟動模塊</p><p><b>  {</b><

102、/p><p>  Trig=1; //啟動一次模塊</p><p>  delay_ms(5); </p><p><b>  Trig=0;</b></p><p><b>  }</b></p><p>  void Conut_m(void)</p><

103、;p><b>  { </b></p><p>  time=TH0*256+TL0;</p><p><b>  TH0=0;</b></p><p><b>  TL0=0;</b></p><p>  S=(time*1.72)/100; //算出來是CM

104、</p><p><b>  LCD_m();</b></p><p><b>  }</b></p><p><b>  三、顯示程序設(shè)計</b></p><p>  1、LCD1602的初始化程序</p><p>  void LCD_Init()&

105、lt;/p><p><b>  {</b></p><p>  Write_Cmd(0x38); /*顯示模式設(shè)置*/ </p><p>  delay_ms(5); </p><p>  Write_Cmd(0x38); </p><p>  delay_ms(5); </p>

106、<p>  Write_Cmd(0x38); </p><p>  delay_ms(5); </p><p>  Write_Cmd(0x38); </p><p>  Write_Cmd(0x08); /*顯示關(guān)閉*/ </p><p>  Write_Cmd(0x01); /*顯示清屏*/ </p>

107、<p>  Write_Cmd(0x06); /*顯示光標(biāo)移動設(shè)置*/ </p><p>  delay_ms(5); </p><p>  Write_Cmd(0x0C); /*顯示開及光標(biāo)設(shè)置*/</p><p><b>  }</b></p><p><b>  2、距離顯示程序

108、</b></p><p>  實現(xiàn)實時顯示定時器T0測得的距離值s,并設(shè)定測量范圍為2cm-3m,測量精度為cm,若超出或小于測量范圍則顯示警告“Warning”。具體顯示程序如下:</p><p>  void LCD_m()</p><p><b>  { </b></p><p><b> 

109、 uchar i;</b></p><p>  if((S>=300)|(S<3)|flag==1) //超出測量范圍顯示"Warning"</p><p><b>  { </b></p><p><b>  flag=0;</b></p><p> 

110、 Write_Cmd(0x00|0x80);</p><p><b>  i=0;</b></p><p>  while(line_data[i]!='\0')</p><p><b>  {</b></p><p>  Write_Data(line_data[i]);</

111、p><p><b>  i++;</b></p><p><b>  }</b></p><p>  Write_Cmd(0x40|0x80);</p><p><b>  i=0;</b></p><p>  while(warning[i]!='

112、;\0')</p><p><b>  {</b></p><p>  Write_Data(warning[i]);</p><p><b>  i++;</b></p><p><b>  } </b></p><p><b>

113、  }</b></p><p><b>  else</b></p><p><b>  { </b></p><p>  Write_Cmd(0x00|0x80);</p><p><b>  i=0;</b></p><p>  whi

114、le(line_data[i]!='\0')</p><p><b>  {</b></p><p>  Write_Data(line_data[i]);</p><p><b>  i++;</b></p><p><b>  }</b></p>

115、;<p>  disbuff[0]=S%1000/100;</p><p>  disbuff[1]=S%1000%100/10;</p><p>  disbuff[2]=S%1000%10%10;</p><p>  Write_Cmd(0x80+0x40);</p><p>  Write_Data(ASCII[disbu

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論