基于AT89C51的倒車測距警報器設計說明_第1頁
基于AT89C51的倒車測距警報器設計說明_第2頁
基于AT89C51的倒車測距警報器設計說明_第3頁
基于AT89C51的倒車測距警報器設計說明_第4頁
基于AT89C51的倒車測距警報器設計說明_第5頁
已閱讀5頁,還剩43頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 工業職業技術學院2011 2012學年第 一 學期畢業設計課題名稱:基于AT89C51的倒車測距報警器的設計 設計時間: 2011.9.102011.12.10 系 部: 電子信息工程系 班 級: 0902電氣技術 姓 名: 偉 指導教師: 呂志香、唐明軍 總目錄第一部分 任務書 第二部分 開題報告 第三部分 畢業設計正文第 一 部 分任務書工業職業技術學院畢業設計任務書系 部電子信息工程系指導老師呂志香唐明軍職稱講師講師學生偉班級0902電氣技術學號0905010219設計題目基于AT89C51的倒車測距報警器的設計設計容目標和要求一、畢業設計主要容與技術指標1、主要容 本畢業設計是應用單

2、片機技術設計一款簡易的倒車測距報警器,本儀器用于汽車倒車時,能實時檢測車尾與障礙物之間的距離,同時通過LED數碼管顯示器實時顯示檢測距離。當檢測的距離達到預設報警值(50cm)時,蜂鳴器就會發出蜂鳴聲報警,提醒司機注意正確操作并與時停車。本設計采用單片機為核心控制器件,整個控制電路主要由單片機控制電路、超聲波發射與接收電路、測距顯示電路、蜂鳴器報警提示電路和電源電路等部分組成。 通過本設計旨在讓學生將單片機的軟硬件知識和社會實踐應用相結合,設計出有一定實用性的單片機應用系統。培養學生學會獨立分析問題,運用所學知識解決實際問題的能力,培養學生包含專業能力、方法能力和社會能力在的綜合職業能力。 本

3、課題涵蓋了單片機與其接口技術、超聲波測距、LED數碼管顯示、單片機C語言程序設計等專業技能和知識,是單片機應用與檢測技術應用的綜合性課題。通過本課題的設計和制作,使學生鞏固所學的專業知識,增強應用動手能力,提高學生的創新能力和綜合職業能力。2、 主要技術指標(1)單片機與接口芯片工作電壓:+5V±5%(2)單片機選型:MCS-51系列單片機(3)軟件開發環境:Keil uvision(4)硬件電路設計:Protel99 SE (5)顯示方式:LED數碼管顯示(6)檢測功能:檢測汽車尾部與障礙物之間的距離。(7)檢測圍:0.02m-4.5m二、畢業設計的基本要求1、收集、整理與畢業設計

4、有關領域的信息資料;2、完成本畢業設計方案和結構框圖的設計;3、完成本畢業設計電路原理圖設計;4、制作測距報警器實物并實現本設計容;5、完成本畢業設計程序流程圖和C語言源程序設計;6、完成軟件和硬件系統的調試,功能指標達到技術要求;7、完整的程序清單和圖樣資料;8、根據本課題的設計、編程和制作工作過程,形成符合要求的畢業設計書面報告;三、畢業設計進度安排第一階段 2011 年 9月10日 - 2011 年10月10日 選題、調研、收集資料、論證、開題第二階段 2011 年10月11日 - 2011年11 月14日 方案、 電路、硬件與軟件設計 第三階段2011年 11月15日 - 2011年

5、11 月30日 設計項目安裝調試、寫作初稿第四階段2011年 12 月1日 - 2011年 12月10日 修改、定稿、打印、答辯四、畢業設計提交的成果1、開題報告2、畢業設計(報告)3、圖樣資料4、方案結構框圖5、硬件電路圖6、軟件流程圖7、軟件源程序五、中英文摘要(中文摘要約200字,3-5個關鍵詞)六、查閱文獻不少于8篇教研室審核系部審核第 二 部 分開題報告工業職業技術學院 電子信息工程 系 2012 屆畢業設計開題報告書學生偉專業電氣自動化班級0902電氣技術學號0905010219題 目基于AT89C51的倒車測距報警器的設計指導教師呂志香唐明軍職稱講師講師學 位碩士碩士題目類別 工

6、程設計 基礎研究 應用研究 其它課題的容與要求本畢業設計主要是利用單片機AT89C51設計一個倒車測距報警器。在汽車倒車時,該測距報警器能通過顯示器實時顯示汽車尾部與障礙物的距離,同時還具有蜂鳴器報警提示功能:當車尾與障礙物距離等于或小于50cm時,系統進行蜂鳴報警提示。整個設計過程包括硬件電路原理圖的繪制,Keil軟件的程序設計與編譯調試,實物的制作與調試運行。前言單片機是為了適應工業現場和較為廣泛的應用現場而設計的芯片,它把CPU、RAM、ROM、I/O接口電路等部件集成在一起。并且以集成度高,功能強,體積小,省電,應用靈活,價格低廉等優點,在工業自動化,過程控制,數字儀器儀表,通信系統以

7、與家用電器產品中有著不可替代的作用。由于生產工藝和設計能力的不斷提高,單片機也在向著更高集成化、更多位多功能,更強處理控制問題的能力、更快的運算速度、更廉價低功耗、更兼容開發和更好的軟件固有化的方向發展。方案的比較與評價目前測距方法很多,常見的有紅外測距與超聲波測距。紅外測距對色彩、光照度較敏感,容易受外界光線影響,而且在許多工業場合不適用,并且價格較昂貴。超聲波測距對色彩、光照度不敏感,可適用于識別透明、半透明與漫反射差的物體(如玻璃、拋光體)。同時對外界光線和電磁場不敏感,可用于黑暗、有灰塵或煙霧、電磁干擾強、有毒等惡劣環境中,電路設計簡單,而且價格便宜。綜上所述,選擇利用超聲波測距原理設

8、計倒車測距報警器更為合適。預期的效果與指標通過查閱資料、搜索電子文獻,確定倒車測距報警器的設計方案。圍繞單片機AT89C51完成外圍硬件電路配置,利用C語言完成系統程序設計,最終完成實物制作,并實現測試運行。當汽車倒車時,系統能實時顯示測試距離,當測試距離等于或者小于50cm時,蜂鳴器進行聲音報警提示。進度安排2011 年 9 月10 日 - 2011 年 9 月 30 日 選題、調研、收集資料2011 年 10 月1 日 - 2011 年 10 月 10 日 論證、開題2011 年 10 月11 日 - 2011 年 11 月 30 日 設計(寫作初稿)2011 年 12 月 1 日 - 2

9、011 年12 月 10 日 修改、定稿、打印參考文獻1夏路易,石宗義. 電路原理圖與電路板設計教程Protel99SE.:希望電子,2002.62陸亞民.單片機原理與應用.:中國輕工業,2000.83和平.單片機原理與接口技術.:冶金工業,2003.14剛,林凌.新概念單片機教程. :大學,2004.8指導教師意見(有針對性地說明選題意義與工作安排是否恰當等)基于AT89C51的倒車測距報警器的設計,利用了超聲波測距的原理進行方案的設計與選擇,具有一定的實用價值。畢業設計安排基本符合要求,同意提交開題報告。同意提交開題論證 修改后提交 不同意提交(請說明理由)指導教師簽章:呂志香 唐明軍 2

10、011年 10 月 10 日系部意見同意指導教師意見 不同意指導教師意見(請說明理由) 其它(請說明)系(部)主任簽章: 年 月 日第 三 部 分畢業設計正文基于AT89C51的倒車測距報警器的設計偉0902電氣技術摘 要超聲波測距在倒車雷達、液面高度測量等場合有著廣泛的應用。本文根據超聲波測距離原理,設計了一個簡易的超聲波倒車測距報警系統。系統主要由控制器模塊、超聲波收發模塊、距離顯示模塊、聲音提示模塊、電源模塊構成。控制器通過定時器產生周期的脈沖方波信號,經電聲轉換電路后發出超聲波,同時打開定時器計時。聲電轉換電路將超聲波的回波信號轉換為電平送單片機中斷,根據定時器計得的收發時間差計算障礙

11、物的距離。本設計分析了超聲波測距原理,給出了系統的總體設計方案,完成了具體硬件電路圖設計以與軟件程序設計,最后對系統進行了測試。測試數據表明系統具有較高的精度,較低成本的優點,因此具有一定的實際應用價值。關鍵詞AT89C51;超聲波測距;LED數碼管顯示Design of the ranging reversing alarm Based on AT89C51 LiWei0902 electricity techniqueAbstract: There is a wide range of occasions where ultrasonic ranging can be applied, s

12、uch as in reversing car and liquid level measurement.Based on the ultrasonic distance measurement principle, this paper aims at designing a simple ultrasonic reversing ranging alarm system. The system mainly includes the controller module, ultrasonic receiving module, display module, the voice promp

13、t distance module and power supply module.The controller module generates periodic pulse square wave signalthrough the timer. Then the conversion circuit emits ultrasonic waves and the timer is opened at the same time.The seismoelectric conversion circuitof the ultrasonic echo signal is converted to

14、 a voltage,which is sent to the SCM interrupt port. The SCM calculates the distance of the obstacle according to measured transceiver time difference. This paper analyzes the ultrasonic ranging principle, gives the overall design of the system and completes the concrete hardware circuit design, soft

15、ware program design and the final test of the system.The test data show thatthe system has higher accuracy together with its low cost. The utility model has a certain practical value.Key words:AT89C51;Ultrasonic Ranging;LED display目 錄第一章緒論11.1 課題研究背景11.2 超聲波測距發展歷程11.3 超聲波測距研究現狀21.4 課題主要任務2第二章系統總體設計3

16、2.1 設計方案論證32.1.1 控制模塊32.1.2 測距模塊32.2 系統總體設計方案4第三章系統硬件電路設計63.1 系統主控電路設計63.1.1單片機AT89C51簡介63.1.2 時鐘電路93.1.3 復位電路93.2 超聲波發射與接收電路的設計103.2.1 超聲波發射電路的設計103.2.2 超聲波接收電路的設計103.3 測距顯示電路的設計113.3.1 LED數碼管簡介113.3.2 LED數碼管顯示電路的設計113.4 報警電路的設計123.5 系統硬件電路原理圖13第四章系統軟件程序設計144.1 系統主程序設計144.2 系統子程序設計144.2.1 定時器中斷服務子程

17、序144.2.2 數碼管顯示與計算程序174.2.3 報警程序設計194.3 軟件程序的編譯調試194.3.1 Keil uVision軟件簡介194.3.2 搭建軟件開發工作環境204.3.3 程序編寫與編譯22第五章實物制作與系統測試245.1 實物制作245.1.1 PCB板的制作245.1.2 元器件的安裝與焊接245.3 系統測試25結束語27致28參考文獻29附錄A 系統硬件電路原理圖30附錄B 系統PCB圖31附錄C 系統實物圖3234 / 48第一章 緒 論1.1 課題研究背景 隨著我國經濟的飛速發展,交通運輸車輛的不斷增多,由此產生的交通問題越來越成為人們關注的問題。其中倒車

18、事故由于發生的頻率極高,已引起了社會和交通部門的高度重視。倒車事故發生的原因是多方面的,倒車鏡有死角,駕車者目測距離有誤差,視線模糊等原因造成倒車時的事故率遠大于汽車前進時的事故率,尤其是非職業駕駛員以與女性更為突出。而倒車事故給車主帶來許多麻煩,例如撞上別人的車、消防水籠頭,如果傷與兒童更是不堪設想,有鑒于此,汽車高科技產品家族中,專為汽車倒車泊位設置的“倒車雷達”應運而生,倒車雷達的加裝可以解決駕駛人員的后顧之憂,大大降低倒車事故的發生。汽車倒車雷達全稱為“倒車防撞雷達”,也叫“泊車輔助裝置”,是汽車泊車安全輔助裝置,能以聲音或者更為直觀的顯示告知駕駛員周圍障礙物的情況,解除駕駛員泊車和起

19、動車輛時因前后左右探視所引起的困擾,并幫助駕駛員克服視野死角和視線模糊的缺陷,提高駕駛的安全性。倒車雷達的原理與普通雷達一樣,是根據蝙蝠在黑夜里高速飛行而不會與任何障礙物相撞的原理設計開發的。通過感應裝置發出超聲波,然后通過反射回來的超聲波來判斷前方是否有障礙物,以與障礙物的距離、大小、方向、形狀等。只不過由于倒車雷達體積大小與實用性的限制,目前其主要功能僅為判斷障礙物與車的距離,并做出提示。1.2 超聲波測距發展歷程自19世紀末到20世紀初,在物理學上發現了壓電效應和反壓電效應之后,人們解決了利用電子技術產生超聲波的方法,從此迅速揭開了發展與推廣超聲技術的歷史進程。1993年,徠卡測量系統在

20、法國Batimat展出世界第一臺手持式激光測距儀,徠卡第一代迪士通以其堅固耐用,可靠精密的特性引起了人們的關注。隨后徠卡在1998年推出迪士通第二代basic、1999年推出迪士通第三代classic、2001年推出四款第四代、2002年推出classic5、lite5第五代測距產品,測量距離圍在0.2-200m之間,單次測量時間不到1秒,作為職場的領跑者,徠卡測量系統的發展歷程見證了超聲波測距技術的發展過程。1.3 超聲波測距研究現狀目前,在國際和國上,在超聲測距方面的研究方向的不同和研究水平的高低,主要體現在測距原理上。隨著電子技術的發展,出現了微波雷達測距、CCD測距、激光測距和超聲波測

21、距等多種形式的測距方法,前幾種測距法由于技術難度大、成本高等因素,主要用于軍事工業方面。而超聲波測距則由于其技術難度較低,成本低廉等特點,在一般測量領域應用廣泛。如汽車倒車雷達,目前的汽車倒車雷達主要是具有蜂鳴器的語音報警以與距離顯示為主的汽車安全系統。這些系統主要采用的是以單片機為控制核心的智能超聲波測距傳感器和蜂鳴器報警系統,這種汽車安全輔助系統便宜耐用,而且達到了汽車電子系統網絡化的發展需求。1.4 課題主要任務本課題主要是利用單片機AT89C51設計一款簡易的倒車測距報警器,應用于汽車倒車位置監控與報警。在汽車倒車時,系統能實時顯示汽車尾部與障礙物之間的距離,以便司機與時掌握倒車時車尾

22、狀況,做出正確的判斷。當車尾與障礙物距離等于或小于50cm時,系統觸發蜂鳴器報警電路進行報警提示,提醒司機與時停車。結合本課題的主要任務,提出系統總體設計方案,完成系統硬件電路圖的繪制,軟件程序設計以與實物的制作,最后能夠完成測試運行。第二章 系統總體設計本課題主要任務是設計一款簡易的倒車測距報警器,應用于汽車倒車位置監控與報警。該報警器主要包括控制模塊、測距模塊、聲音模塊、距離顯示模塊、電源模塊五個部分,控制模塊和測距模塊是本設計的核心,下面我們將從這兩個個方面對系統方案進行論證與選擇。2.1 設計方案論證2.1.1 控制模塊隨著自動化技術的不斷發展,在自動控制系統的設計過程中都會面臨核心控

23、制元件選擇的困惑,對于絕大部分的控制任務來說。無論是采用單片機還是PLC都能完成方案設計,但最終選擇還是要根據實際任務需求來定。(1)可編程邏輯控制器(PLC)PLC發展初期主要用于開關量的邏輯控制,隨著PLC技術的進步,它的應用領域在擴大,不僅可以用于開關量控制,還可用于模擬量與數字量的而控制,可采集與存儲數據,并進行聯網、通訊等,如今,PLC已成為工業控制中核心元器件之一。其主要優點是功能完善,穩定性高抗干擾能力強,擴展性好,硬件維護方便,編程簡單。缺點是價格較高,體積較大。(2)單片機單片機與PLC本質是一樣的,它們的發展都是基于微處理技術,而PLC實際上是建立在單片機之上的一種產品,而

24、單片機實際上是一個集成電路,體積相對較小,成本低,經濟實惠,但利用單片機實現的主控板受軟件布局、環境溫度、制板工藝等影響,穩定性和抗干擾性相對較弱。對比這兩種核心控制元件,兩者各有優缺點,根據本課題設計任務,汽車倒車報警裝置體積要小,這樣便于攜帶、安裝、不占用汽車空間,顯然由于PLC體積大的特點而不符合設計要求,因此本設計采用AT89C51單片機作為核心控制元件。2.1.2 測距模塊(1)激光測距激光由于其本質性的成因使得激光具有亮度高、單色性好、方向性好、傳光性好等特點,而激光測距則利用激光的方向性強和傳光性好的特點,用脈沖激光器向目標發射一列很窄的光脈沖(脈沖寬度小于50ns),光達到目標

25、表面后部分被反射,通過測量光脈沖從發射到返回接收機的時間,可算出測距地點與目標之間的距離。 假設所測距離為h,光脈沖往返時間為t,光在空中的的傳播速度為c,則: h=ct/2,脈沖激光測距最大測距也能達到30000m以上,其測距精度一般為5米,.最高的可達0.15m。由于激光對人體存在安全問題,而且制作的難度大成本也比較高,主要在軍事上用于對各種非合作目標的測距,也可在氣象上用于測定能見度和云層高度.以與應用在對人造衛星的精密距離測量等領域。(2)紅外線測距紅外線測距原理是紅外光遇到障礙物會反射回來,而反射回來紅光的強弱由距離而定,距離越遠,紅光強度越弱,根據這個特點能夠進行障礙物距離遠近的測

26、量。其優點是成本低廉,使用安全,制作簡單,缺點就是測量精度低,方向性也差,測量距離近。(3)超聲波測距超聲波是一種超出人類聽覺極限的聲波即其振動頻率高于16kHz的機械波。超聲波測距就是將電壓和超聲波之間的互相轉換,發射超聲波的探頭將電壓轉化的超聲波發射出去,當接收超聲波時,超聲波接收探頭將超聲波轉化的電壓回送到控制芯片。超聲波具有振動頻率高、波長短、繞射現象小而且方向性好還能夠為反射線定向傳播等優點,在中、長距離測量時,超聲波測量的精度和方向性都要大大優于紅外線測量。從安全性,成本、方向性等方面綜合考慮,超聲波傳感器更適合設計要求。根據對以上三種測距方法的比較,很明顯激光傳感器是比較理想的選

27、擇,但是它的價格卻比較高,而且安全度不夠高。因此在一般測距中不具有普遍適用性,而超聲波測距具有較強的抗干擾能力和較短的響應時間,在精度和方向性上都優于紅外測距,因此本方案的距離測量部件選用超聲波測距模塊。2.2 系統總體設計方案根據方案的論證與選擇,本設計以單片機AT89C51為控制核心,外圍配置超聲波發射接收模塊、聲音提示模塊、距離顯示模塊、電源模塊四部分。系統總體設計方框圖如圖2-1所示。圖2-1 系統總體設計方框圖其中,超聲波發射模塊選用軟件發生超聲波法,利用軟件產生40kHz的超聲波信號,通過輸出引腳輸入至驅動器,經驅動器驅動后推動探頭產生超聲波。超聲波接收模塊包括超聲波接收探頭、信號

28、放大電路與波形變換電路三部分。探頭變換后的正弦波電信號經放大電路放大并進行波形變換。聲音提示模塊采用蜂鳴器報警電路,倒車時,車尾與障礙物之間距離小于所設定的安全值時,發出蜂鳴聲提醒駕駛員。鑒于LED數碼管顯示簡潔、價格便宜等特點,距離顯示模塊采用4位LED數碼管動態顯示。第三章 系統硬件電路設計根據系統總體設計方案,系統以單片機AT89C51為控制器,時鐘電路、手動復位電路、電源和控制器一起構成主控電路。利用單片機的定時器產生超聲波的周期方波信號,經單片機P1.0口輸出,通過信號調理和換能電路后發出超聲波。利用單片機中斷口P3.2接收回波信號,計算時間差并換算距離信息。距離顯示電路采用4位LE

29、D數碼管顯示,單片機的P2口的高四位提供數碼管的位選信號,P0口作為數碼管的段碼;聲音提示電路采用蜂鳴器報警,由單片機的P3.4驅動蜂鳴器報警電路發出提示聲音。3.1 系統主控電路設計該系統以AT89C51為核心,配置時鐘電路、復位電路以與電源電路,構成系統主控電路。具體主控電路如圖3-1所示。圖3-1系統主控電路圖3.1.1單片機AT89C51簡介AT89C51是一種低功耗、高性能CMOS8位微控制器,具有8K在系統可編程Flash 存儲器。AT89C51具有以下標準功能:8k字節Flash,256字節RAM,32 位I/O口線,看門狗定時器,2 個數據指針,三個16位定時器/計數器,一個6

30、向量2級中斷結構,全雙工串行口,片晶振與時鐘電路。空閑模式下,CPU停止工作,允許RAM、定時器/計數器、串口、中斷繼續工作。掉電保護方式下,RAM容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。而且,它還具有一個看門狗(WDT)定時/計數器,如果程序沒有正常工作,就會強制整個系統復位,還可以在程序陷入死循環的時候,讓單片機復位而不用整個系統斷電,從而保護外圍硬件電路。AT89C51有40個引腳,32個外部雙向輸入/輸出(I/O)端口,同時含2個外中斷口,2個16位可編程定時計數器,2個全雙工串行通信口,片上Flash允許程序存儲器在系統可編程,亦適于常規編程器。其將

31、通用的微處理器和Flash存儲器結合在一起,特別是可反復擦寫的Flash存儲器可有效地降低開發成本。其芯片引腳示意圖如圖3-2所示。圖3-2 AT89C51引腳示意圖主要引腳功能介紹如下:P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數據存儲器,它可以被定義為數據/地址的第八位。在FIASH編程時,P0 口作為原碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。P1口:P1口是一個部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被部上拉為高

32、,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。 P2口:P2口為一個部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1”時,其管腳被部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數據存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用部上拉優勢,當對外部八位地址數據存儲器進行讀寫時,P2口輸出其特殊功能寄存器的容。P2口在FLASH編程和校驗時接收高八位地址信號

33、和控制信號。P3口:P3口管腳是8個帶部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入“1”后,它們被部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口也可作為AT89C51的一些特殊功能口,具體功能如表3-1所示。表3-1 P3口引腳功能表P3口引腳第二功能P3.0RXD(串行口輸入)P3.1TXD(串行口輸出)P3.2INT0(外部中斷0輸入)P3.3INT1(外部中斷1輸入)P3.4T0(定時器0外部脈沖輸入)P3.5T1(定時器1外部脈沖輸入)P3.6WR(外部數據存儲器寫脈沖輸出)P3.7RD(外部數據存

34、儲器讀脈沖輸出)P3口同時為閃爍編程和編程校驗接收一些控制信號。RST:復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。XTAL1:反向振蕩放大器的輸入與部時鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。3.1.2 時鐘電路單片機的時鐘信號通常用兩種電路形式得到:部振蕩方式和外部振蕩方式。本系統采用部振蕩方式,在AT89C51引腳XTAL1和XTAL2外接晶體振蕩器(簡稱晶振)或瓷諧振器,就構成了部振蕩方式。由于單片機部有一個高增益反相放大器,當外接晶振后,就構成了自激振蕩器并產生振蕩時鐘脈沖。具體系統時鐘電路如圖3-3所示。圖3-3 時鐘電路3.1.3 復位電路復

35、位電路有上電復位和手動復位兩種。本系統采用手動復位方式,具體電路如圖3-4所示。系統上電時, RC電路開始充電,因為電容電壓不能突變,使RST端的電位接近Vcc,以后RST端的電位將隨電容充電而逐漸下降。只要RST端出現的正脈沖時間保持在10ms以上,就能使單片機有效地復位。工作過程中,需要手動復位時,按下按鈕時,電容瞬間完成放電,Vcc的+5V電平就會直接加到RST端,完成系統復位。圖3-4 復位電路圖3.2 超聲波發射與接收電路的設計3.2.1 超聲波發射電路的設計超聲波發射電路主要由74LS04和超聲波換能器構成,單片機P1.0端口輸出40KHz方波信號一路經一級反向器后送到超聲波換能器

36、的第一個電極,另一路經兩級反向器后送到超聲波換能器的另一個電極,用這種推挽形式將方波信號加到超聲波換能器兩端可以提高發射強度。具體電路圖如圖3-5所示。圖3-5 超聲波發射電路3.2.2 超聲波接收電路的設計 超聲波接收電路主要由CX20106A和超聲波換能器構成,CX20106A是一款紅外的專用芯片,考慮到紅外遙控常用的載波頻38K與測距的超聲波頻率40KHz較為接近,故利用它制作超聲波檢測接收電路,具體電路圖如圖3-6所示。 圖3-6 超聲波接收電路3.3 測距顯示電路的設計3.3.1 LED數碼管簡介LED數碼顯示管有兩種,一種是共陽極數碼管,其部是由八個陽極相連接的二極管組成;另一種是

37、共陰極數碼管,其部是由八個陽極相連接的二極管組成。共陰極LED數碼顯示塊的發光二極管陰極連接在一起,形成該模塊的公共端(通常稱為位選端),因此稱為共陰極LED數碼顯示器,8個數碼管的另一端通常稱為段選段,當顯示器的公共端接低電平,某個發光二極管的陽極接高電平時,該發光二極管被點亮;共陽極LED數碼顯示塊的發光二極管陽極連接在一起,形成該模塊的公共端,因此稱為共陽極LED數碼顯示器,8個數碼管的另一端通常稱為段選段,當顯示器的公共端接高電平,某個發光二極管的陽極接低電平時,該發光二極管被點亮。二者原理不同但功能一樣。LED數碼管外形結構圖如圖3-7所示。圖3-7 LED外形結構圖3.3.2 LE

38、D數碼管顯示電路的設計LED數碼管顯示方式有靜態顯示和動態顯示兩種。其中,靜態顯示就是顯示驅動電路具有鎖存功能,單片機將所要顯示的數據送出后就不再控制LED,直到下次顯示時再傳送一次新的顯示數據。靜態顯示的數據穩定,占用的CPU時間少。靜態顯示中,每一個顯示器都要占用單獨的具有鎖存功能的I/O接口,該接口用于筆劃段字型代碼。這樣單片機只要把顯示的字形代碼發送到接口電路,該字段就可以顯示發送的字形。要顯示新的數據時,單片機再發送新的數據。另一種方法就是動態掃描顯示。由于單片機本身具有較強的邏輯控制能力,所以采用動態掃描軟件譯碼并不復雜。而且軟件譯碼其譯碼邏輯可隨意編程設定,不受硬件譯碼邏輯限制。

39、采用動態掃描軟件譯碼的方式能大大簡化硬件電路結構,降低系統成本。它用分時的方法輪流控制各個顯示器的公共端,使各個顯示器輪流點亮。在輪流點亮掃描過程中,每位顯示器的點亮時間極為短暫,但由于人的視覺暫留現象與二極管的余輝效應,給人的印象就是一組穩定的顯示數據。本系統顯示電路采用4位共陽極LED數碼管動態顯示方式,位碼用PNP三極管驅動,具體電路圖如圖3-8所示。圖3-8 測距顯示電路圖3.4 報警電路的設計在單片機應用系統中,最常見的發聲器件就是蜂鳴器。蜂鳴器一般用于一些要求不高的聲音報警與發出按鍵操作提示音等。有源蜂鳴器最重要的特點是只要按照極性要求加上合適的直流電壓就可以發出固有頻率的聲音,使

40、用起來比揚聲器簡單。蜂鳴器是感性負載,一般不建議用單片機的 I/O 口直接對其進行操作,需要加一只驅動三極管。系統聲音提示電路圖如圖3-9所示。三極管為PNP型,要使蜂鳴器發聲,只要將單片機 P3.4 口置為低電平就可以了。圖3-9 聲音提示電路圖3.5 系統硬件電路原理圖根據對系統的控制模塊、測距模塊、報警模塊、顯示模塊的設計與調試,系統硬件電路原理圖如圖3-10所示。圖3-10 系統硬件電路原理圖第四章 系統軟件程序設計4.1 系統主程序設計本系統硬件電路設計以單片機AT89C51為核心。程序設計采用模塊化設計方法,整個軟件程序設計由主程序、超聲波發射子程序、定時器中斷服務子程序、顯示子程

41、序等模塊組成。該系統的主程序處于鍵控循環工作方式,當按下電源按鍵時,主程序開始調用發射子程序、查詢接收子程序、定時器中斷服務子程序,并把測量結果用顯示子程序在數碼管上顯示出來。雖然用一個單獨計時器電路也可以測量超聲波的傳輸時間,但利用AT89C51單片機可以簡化設計,便于操作和直觀讀數。系統主程序設計流程圖如圖4-1所示。系統初始化開 始延 時發送40KHz的方波信號啟動定時器與外部中斷調用顯示程序圖4-1 系統主程序設計流程圖4.2 系統子程序設計系統子程序設計主要涉與到超聲波發射、接收子程序設計、定時器中斷服務子程序設計以與LED數碼管顯示子程序設計。4.2.1 定時器中斷服務子程序定時器

42、中斷服務子程序設計流程圖如圖4-2所示。外部中斷入口關外部中斷關定時器中斷讀取時間值計算距離結果輸出 開外部中斷 返 回圖4-2 定時器中斷服務子程序設計流程圖程序如下:void zhongduan0( ) interrupt 1 /T0中斷用來計數器溢出,超過測距圍 flag=1; /中斷溢出標志void zhongduan1( ) interrupt 2 /T1中斷用來掃描數碼管 TH1=0xf8; /2ms定時 TL1=0x30; Display(); timer+; if(timer>=400) /800ms 啟動一次模塊 timer=0; TX=1; _nop_(); _nop

43、_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); TX=0; void main( void ) TMOD=0x11; /設T0為方式1,GATE=1;TH0=0;TL0=0; TH1=0xf8; /2ms定時TL1=0x30;ET0=1; /允許T0中斷ET1=1; /允許T1中斷TR1=1;

44、/開啟定時器EA=1; /開啟總中斷 while(1) while(!RX); /當RX為零時等待 TR0=1; /開啟計數 while(RX); /當RX為1計數并等待 TR0=0; /關閉計數 Conut(); /計算 4.2.2 數碼管顯示與計算程序超聲波測距時由安裝在同一位置的超聲波發射器和接收器完成超聲波的發射與接收,由定時器計時。首先由發射器向特定方向發射超聲波并同時啟動定時器計時,超聲波在介質傳播途中一旦遇到障礙物后就被反射回來,當接收器接收到反射波后立即停止計時。此時,定時器就記錄下了超聲波自發射點至障礙物之間往返傳播經歷的時間t(s)。由于常溫下超聲波在空氣中的傳播速度約為3

45、40m/s,所以發射點距障礙物之間的距離為: S=340t/2=170 t 由于單片機部定時器的計時實際上是對部固定頻率的機器周期T的計數,設計中時鐘頻率fosc取12MHz,設計數值N,則T=12/fosc=1s,t=N×T=N×10-6(s)S=170×N×T=170×N/10-6(m)或S=17×N/10-3(cm)程序如下:void Display(void) /掃描數碼管if(posit = =0)P0=(discodedisbuffposit)&0x7f;elseP0=discodedisbuffposit;P2=

46、positonposit;if(+posit>=4)posit=0;/*/void Conut(void)time=TH0*256+TL0;TH0=0;TL0=0; S=(time*1.7)/10; /算出來是mmif(S>=1500)|flag=1) /超出測量圍顯示“-” flag=0; disbuff0=10; /“-” disbuff1=10; /“-”disbuff2=10; /“-” disbuff3=10; /“-”else if(S<=500)|flag=1) disbuff0=S%10000/1000; disbuff1=S%10000%1000/100;

47、disbuff2=S%10000%1000%100/10; disbuff3=S%10000%1000%100%10; LED=LED; fmg=fmg; else LED=0; fmg=1; disbuff0=S%10000/1000; disbuff1=S%10000%1000/100; disbuff2=S%10000%1000%100/10; disbuff3=S%10000%1000%100%10; 4.2.3 報警程序設計本設計報警有聲光組合報警,在距離4.3 軟件程序的編譯調試4.3.1 Keil uVision軟件簡介Keil C51是美國Keil Software公司出品的5

48、1系列兼容單片機C語言軟件開發系統,與匯編相比,C語言在功能上、結構性、可讀性、可維護性上有明顯的優勢,因而易學易用。Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調試器等在的完整開發方案,通過一個集成開發環境(uVision)將這些部分組合在一起,調試中使用的版本是uVision4。4.3.2 搭建軟件開發工作環境在進行具體編程之前,必須先建立項目,在建立項目過程中設定軟件工作平臺所用的芯片、項目文件命名以與項目文件在計算機上存放的位置。然后建立程序文件,并把文件添加到項目中,最后才能進行具體的編程。具體步驟如下:1、新建項目通過Project菜單下的New uVis

49、ion Project選項建立項目,如圖4-3所示。圖4-3 新建項目2、項目文件命名與保存在圖4-4中所示的“文件名”位置填寫項目文件名,然后在“保存在”位置選擇項目文件在計算機中的存放位置,最點擊“保存”。圖4-4 項目文件命名與保存3、選擇項目所用芯片保存好項目文件后,Keil軟件會提示你選擇項目所用芯片,如圖4-5所示,在本系統中我們選用的是美國ATMEL公司的AT89S51芯片。圖4-5 選擇項目所用芯片4、建立程序文件項目建立好之后,我們就要建立程序文件。通過“File”菜單中的“New”選項建立一個文件,然后將這個文件保存成程序文件。在本項目中,采用的是C51語言進行程序編寫的,

50、建立的程序文件名為“*.c”,如圖4-6所示。圖4-6 程序文件的保存5、向項目添加程序文件如圖4-7所示,通過鼠標右擊“Source Group1”選擇“Add Files to Group 'Source Group1'”,在彈出對話框中選擇程序文件,如圖4-8所示,然后點擊“Add”,完成添加操作。圖4-7 添加程序文件 圖4-8 選擇程序文件4.3.3 程序編寫與編譯將程序編譯并生成機器碼。在編譯之前需要對項目輸出選項進行設定,設定項目在編譯后生成HEX格式機器碼文件。如圖4-9所示,鼠標右擊“Source Group1”選擇“Options for Group 

51、9;Source Group1'”,如圖4-10所示面板選擇“Output”選項卡,并勾選“Create HEX File”。圖4-9 設定項目“選項”圖4-10 設定項目生成“HEX”文件設定好選項之后,通過點擊工具欄上的“Build”按鈕進行編譯,如圖4-11所示,并生成如圖4-12所示的編譯結果。圖4-11 點擊Build按鈕進行程序編譯圖4-12 編譯結果第五章 實物制作與系統測試5.1 實物制作5.1.1 PCB板的制作利用Protel99 SE軟件完成系統硬件電路原理圖繪制,繼續在Protel99SE軟件中生成PCB電路板圖,系統PCB圖如圖5-1所示。圖5-1 系統PCB

52、圖PCB板制作過程中應注意對應關系不要出錯,連接線的粗細在不影響導電的前提下,盡量粗些,然后就是注意它們的位置關系盡量美觀均稱。5.1.2 元器件的安裝與焊接按照電路板上所作的引腳功能和連接標注,進行相關元器件的安裝與焊接。超聲波發射和接收采用超聲波換能器TCT40-10F1和TCT40-10S1,中心頻率為40kHz,安裝時應保持兩換能器中心軸線平行并相距3至4厘米,其余原件無特殊要求。若能將超聲波接收電路用金屬殼屏蔽起來,則可以提高抗干擾能力。焊接步驟是先焊接各個模塊,焊接完每個模塊以后,再進行模塊的單獨測試,以確保在整個系統焊接完成后能正常工作。首先焊接的是電源模塊,我們主要采用直接方式

53、,但注意電源不能接反,然后開始檢查PCB和電路圖,接下來是單片機最小系統的測試,焊接完以后發現系統沒有問題,程序可以正常下載,然后是超聲波發送模塊的焊接,焊接完通電測試,將測試結果與測算出來的結果進行比較,從中尋找問題在分析出問題的原因。制作好的實物如圖5-2所示。圖5-2 實物圖5.3 系統測試硬件電路制作完畢后,便可將編譯好的可執行文件下載到單片機試運行。根據實際情況修改超聲波發生子程序每次發送的脈沖寬度和兩次測量的間隔時間,以適應不同距離的測量需要。系統調試完成后應對測量誤差和重復一致性進行多次實驗分析,不斷優化系統使其達到實際使用的測量要求。用本裝置測量30cm時,裝置實際測量距離如圖5-3所示,誤差為:用本裝

溫馨提示

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

評論

0/150

提交評論