版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 一、課設(shè)題目: 基于單片機(jī)的超聲波測(cè)距器</p><p><b> 二、設(shè)計(jì)目的:</b></p><p> 設(shè)計(jì)一個(gè)超聲波測(cè)距器,可以應(yīng)用于汽車倒車位置監(jiān)控,也可用于如液位、井深、管道長(zhǎng)度的測(cè)量等場(chǎng)合。要求測(cè)量范圍在0.10-10.00m,測(cè)量精度1cm,測(cè)量時(shí)與被測(cè)物體無直接接觸,能夠清晰穩(wěn)定地顯示測(cè)量結(jié)果,能夠手工設(shè)定報(bào)警量值。<
2、/p><p><b> 三、設(shè)計(jì)思路:</b></p><p> 本系統(tǒng)的設(shè)計(jì)思想是采用MCS51單片機(jī)為核心,來設(shè)計(jì)一種低成本、高精度、微型化數(shù)字顯示超聲波測(cè)距儀。超聲波測(cè)距可測(cè)出回波和發(fā)射脈沖之間的時(shí)間間隔,利用S=Ct/2就可以算出距離,再在LED上顯示出來。當(dāng)然還可以設(shè)置若干個(gè)鍵,以用來控制電路的工作狀態(tài)。限制的最大可測(cè)距離存有四個(gè)因素:超聲波的幅度,反射面的
3、質(zhì)地,反射面和入射聲波之間的夾角以及接收換能器的靈敏度。接收換能器對(duì)聲波脈沖的直接接收能力將決定最小的可測(cè)距離。</p><p> 根據(jù)設(shè)計(jì)要求并綜合各方面因素,采用單片機(jī)作為主控制器,用動(dòng)態(tài)掃描法實(shí)現(xiàn)LED數(shù)字顯示,超聲波驅(qū)動(dòng)信號(hào)可以用單片機(jī)的定時(shí)器和計(jì)數(shù)器來完成。</p><p><b> 三、設(shè)計(jì)原理</b></p><p> 本設(shè)
4、計(jì)采用MCS51單片機(jī)作為主控制器,用動(dòng)態(tài)掃描法實(shí)現(xiàn)LED數(shù)字顯示,超聲波驅(qū)動(dòng)信號(hào)用單片機(jī)的定時(shí)器和計(jì)數(shù)器來完成,超聲波測(cè)距器的系統(tǒng)框圖如圖1所示:</p><p> 圖1 超聲波測(cè)距器系統(tǒng)的框圖</p><p> 系統(tǒng)框圖中的單片機(jī)MCS51用來協(xié)調(diào)各個(gè)單元,超聲波接收電路用來接收要接收的信號(hào),超聲波發(fā)射電路用來發(fā)射需要發(fā)射的信號(hào),存儲(chǔ)器用來存儲(chǔ)接收的信號(hào),用數(shù)碼管LED顯示距離。
5、</p><p><b> 四、系統(tǒng)框圖:</b></p><p> 本設(shè)計(jì)就是以MCS51單片機(jī)為核心。它采用模塊化設(shè)計(jì),由主程序、發(fā)射子程序、接收子程序、定時(shí)子程序、顯示子程序等模塊組成。該系統(tǒng)的主程序處于鍵控循環(huán)工作方式,當(dāng)按下測(cè)量鍵時(shí),主程序開始調(diào)用發(fā)射子程序、查詢接收子程序、定時(shí)子程序,并把測(cè)量結(jié)果用顯示子程序在數(shù)碼管上顯示出來。雖然用一個(gè)單獨(dú)計(jì)時(shí)器電路
6、也可以測(cè)量超聲波的傳輸時(shí)間,但利用MCS51單片機(jī)可以簡(jiǎn)化設(shè)計(jì),便于操作和直觀讀數(shù)。</p><p> 為了增強(qiáng)系統(tǒng)的可靠性,應(yīng)在軟硬件上采用一些特殊措施。主程序框圖如下圖2。</p><p><b> 圖2 主程序框圖</b></p><p> 超聲波發(fā)生子程序的作用是通過P1.0端口發(fā)送2個(gè)左右的超聲波信號(hào)頻率約40KHz的方波,脈沖
7、寬度為12us左右,同時(shí)把計(jì)數(shù)器T0打開進(jìn)行計(jì)時(shí)。超聲波測(cè)距器主程序利用外中斷0檢測(cè)返回超聲波信號(hào),一旦接收到返回超聲波信號(hào)(INT0引腳出現(xiàn)低電平),立即進(jìn)入中斷程序。進(jìn)入該中斷后就立即關(guān)閉計(jì)時(shí)器T0停止計(jì)時(shí),并將測(cè)距成功標(biāo)志字賦值1。如果當(dāng)計(jì)時(shí)器溢出時(shí)還未檢測(cè)到超聲波返回信號(hào),則定時(shí)器T0溢出中斷將外中斷0關(guān)閉,并將測(cè)距成功標(biāo)志字賦值2以表示此次測(cè)距不成功。</p><p> 定時(shí)中斷服務(wù)子程序完成三方向超
8、聲波的輪流發(fā)射,外部中斷服務(wù)子程序主要完成時(shí)間值的讀取、距離計(jì)算、結(jié)果的輸出等工作。如圖3和4。</p><p> 圖3定時(shí)中斷子服務(wù)子程序框圖</p><p> 圖4外部中斷服務(wù)子程序框圖</p><p><b> 五、源程序</b></p><p><b> 1中斷入口程序</b><
9、;/p><p> ORG 0000H</p><p> LJMP START</p><p> ORG 0003H</p><p> LJMP PINT0</p><p> ORG 000BH</p><p> LJMP INTT0</p>&
10、lt;p> ORG 0013H</p><p><b> RETI</b></p><p> ORG 001BH</p><p> LJMP INTT1</p><p> ORG 0023H</p><p><b> RETI </b>
11、</p><p> ORG 002BH</p><p><b> RETI</b></p><p><b> 2主程序:</b></p><p> START: MOV SP, #4FH</p><p> MOV R0, #40H
12、 ;40~43H為顯示數(shù)據(jù)存放單元</p><p> MOV R7, #0BH</p><p> CLEARDISP: MOV @R0, #00H</p><p><b> INC R0</b></p><p> DJNZ R7, CLEARDISP</p><p>
13、 MOV 20H, #00H</p><p> MOV TMOD, #21H ;T1為8位自動(dòng)重裝模式,T0為16位定時(shí)器</p><p> MOV TH0, #00H ;65ms初值</p><p> MOV TL0, #00H </p><p> MOV TH1, #0
14、F2H ; 40kHz初值</p><p> MOV TL1, #0F2H</p><p> MOV P0, #0FFH</p><p> MOV P1, #0FFH</p><p> MOV P2, #0FFH</p><p> MOV P3, #0FFH</p>&l
15、t;p> MOV R4, #04H ;超聲波脈沖個(gè)數(shù)控制 </p><p><b> SETB PX0</b></p><p><b> SETB ET0</b></p><p><b> SETB EA</b></p><p> SE
16、TB TR0 ;開啟測(cè)距定時(shí)器</p><p> start1: LCALL DISPLAY</p><p> JNB 00H, START1 ;收到反射信號(hào)時(shí)標(biāo)志為1</p><p> CLR EA</p><p> LCALL WORK ;計(jì)算距離
17、子程序</p><p> SETB EA </p><p> CLR 00H</p><p> SETB TR0 ;重新開啟測(cè)距定時(shí)器</p><p> MOV R2, #64H ;測(cè)量間隔控制(約4*100=400ms)</p><p> LO
18、OP: LCALL DISPLAY</p><p> DJNZ R2, LOOP </p><p> SJMP Start1</p><p><b> 3中斷程序:</b></p><p> T0中斷,65ms中斷一次</p><p> INTT0: CL
19、R EA</p><p> CLR TR0</p><p> MOV TH0, #00H</p><p> MOV TL0, #00H</p><p> SETB ET1</p><p><b> SETB EA</b></p><p&
20、gt; SETB TR0 ;啟動(dòng)計(jì)時(shí)器T0,用以計(jì)算超聲波往返時(shí)間</p><p> SETB TR1 ;開啟發(fā)超聲波用定時(shí)器T1</p><p> OUT: RETI ;T1中斷,發(fā)超聲波用</p><p> INTT1:
21、 CPL VOUT</p><p> DJNZ R4, RETIOUT</p><p> CLR TR1 ;超聲波發(fā)送完畢,關(guān)T1</p><p> CLR ET1</p><p> MOV R4, #04H</p><p> SETB EX0
22、 ;開啟接收回波中斷</p><p> RETIOUT: RETI</p><p> 外中斷0,收到回波時(shí)進(jìn)入</p><p> PINT0: CLR TR0 ;關(guān)計(jì)數(shù)器</p><p><b> CLR TR1</b><
23、/p><p><b> CLR ET1</b></p><p><b> CLR EA</b></p><p><b> CLR EX0</b></p><p> MOV 44H, TL0 ;將計(jì)數(shù)值移入處理單元</p>&
24、lt;p> MOV 45H, TH0</p><p> SETB 00H ;接收成功標(biāo)志</p><p><b> RETI</b></p><p><b> 4顯示程序:</b></p><p> 40H為最高位,43H為最低位,先掃描高位<
25、/p><p> DISPLAY: MOV R1, #40H</p><p> MOV R5, #0F7H</p><p> PLAY: MOV A, R5</p><p> MOV P0, #0FFH</p><p> MOV P2, A</p>
26、;<p> MOV A, @R1</p><p> MOV DPTR, #TAB</p><p> MOVC A, @A+DPTR</p><p> MOV P0, A</p><p> LCALL DL1MS</p><p><b> INC R1</b&
27、gt;</p><p> MOV A, R5</p><p> JNB ACC.0, ENDOUT</p><p><b> RRA</b></p><p> MOV R5, A</p><p><b> AJMPPLAY</b></p&
28、gt;<p> ENDOUT: MOV P2, #0FFH</p><p> MOV P0, #0FFH</p><p><b> RET</b></p><p><b> 5距離計(jì)算程序近似</b></p><p> WORK: PUSHACC
29、</p><p><b> PUSHPSW</b></p><p><b> PUSHB</b></p><p> MOV PSW, #18H</p><p> MOV R3, 45H</p><p> MOV R2, 44H<
30、/p><p> MOV R1, #00D </p><p> MOV R0, #17D</p><p> LCALL MUL2BY2</p><p> MOV R3, #03H</p><p> MOV R2, #0E8H</p><p> LCAL
31、L DIV4BY2</p><p> LCALL DIV4BY2</p><p> MOV 40H, R4</p><p> MOV A, 40H</p><p> JNZ JJ0</p><p> MOV 40H, #0AH ;最高位為
32、0,不點(diǎn)亮</p><p> JJ0: MOV A, R0</p><p> MOV R4, A</p><p> MOV A, R1</p><p> MOV R5, A</p><p> MOV R3, #00D</p><p> M
33、OV R2, #100D</p><p> LCALL DIV4BY2</p><p> MOV 41H, R4</p><p> MOV A, 41H</p><p><b> JNZ JJ1</b></p><p> MOV A, 40H
34、 ;次高位為0,先看最高位是否為不亮</p><p> SUBB A, #0AH</p><p> JNZ JJ1</p><p> MOV 41H, #0AH ;最高位不亮,次高位也不亮</p><p> JJ1: MOV A, R0</p
35、><p> MOV R4, A</p><p> MOV A, R1</p><p> MOV R5, A</p><p> MOV R3, #00D</p><p> MOV R2, #10D</p><p> LCALL DIV4BY2
36、</p><p> MOV 42H, R4</p><p> MOV A,42H</p><p> JNZ JJ2</p><p> MOV A, 41H ;次次高位為0,先看次高位是否為不亮</p><p> SUBB A, #0
37、AH</p><p> JNZ JJ2</p><p> MOV 42H, #0AH ;次高位不亮,次次高位也不亮</p><p> JJ2: MOV 43H, R0</p><p> POP B</p><p> POP PS
38、W</p><p> POP ACC</p><p><b> RET </b></p><p><b> END</b></p><p> 六、上機(jī)仿真 </p><p><b> 結(jié)果如下:</b></p>
39、<p><b> 七、設(shè)計(jì)心得:</b></p><p> 通過本次課程設(shè)計(jì),掌握了美國(guó)Intel 公司生產(chǎn)的單片機(jī)MCS51芯片得基本結(jié)構(gòu)和工作原理。初步認(rèn)識(shí)了超聲波測(cè)距器的設(shè)計(jì)方法。對(duì)課堂上了解的單片機(jī)知識(shí)有了鞏固和提高。加深了對(duì)單片機(jī)學(xué)習(xí)的興趣。</p><p> 在剛剛設(shè)計(jì)過程中,遇到了很多問題。對(duì)基本操作還不熟悉,做的效率不高。但在老師同學(xué)的
40、幫助下,并通過查詢有關(guān)參考文獻(xiàn),使我了解了很多以前不懂的知識(shí)和設(shè)計(jì)技巧,遇到的困難一一解決。由于課本上的知識(shí)很多很雜,平時(shí)課間的學(xué)習(xí)并不能很好的理解和運(yùn)用各個(gè)元件的功能,而且考試內(nèi)容有限,所以在這次課程設(shè)計(jì)過程中,我們了解了很多元件的功能。明白了一些道理,只有不斷實(shí)踐,才能在實(shí)踐中找到自己的問題,并通過不斷提高自己解決各種問題。</p><p> 本次課程設(shè)計(jì)使我受益匪淺,在今后的學(xué)習(xí)工作中,用這次學(xué)到的方法和
41、經(jīng)驗(yàn)一定能是自我的能力得到更大的提升。</p><p><b> 八、參考文獻(xiàn):</b></p><p> 1.牛昱光. 單片機(jī)原理與接口技術(shù).北京:電子工業(yè)出版社,2009</p><p> 2.趙晶. Protel 99高級(jí)應(yīng)用. 北京: 人民郵電出版社, 2000</p>&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于51單片機(jī)超聲波測(cè)距器設(shè)計(jì)
- 基于51單片機(jī)超聲波測(cè)距器設(shè)計(jì)
- 基于51單片機(jī)超聲波測(cè)距器的設(shè)計(jì)
- 超聲波測(cè)距器課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)-超聲波測(cè)距
- 單片機(jī)課程設(shè)計(jì)--超聲波測(cè)距
- 單片機(jī)課程設(shè)計(jì)-超聲波測(cè)距
- 基于單片機(jī)的超聲波測(cè)距課程設(shè)計(jì)
- 基于單片機(jī)的超聲波測(cè)距課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)---基于單片機(jī)的超聲波測(cè)距儀
- 單片機(jī)課程設(shè)計(jì)--超聲波測(cè)距系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--超聲波測(cè)距儀
- 基于52單片機(jī)的超聲波測(cè)距系統(tǒng)-課程設(shè)計(jì)
- 基于單片機(jī)的超聲波測(cè)距儀課程設(shè)計(jì)
- 單片機(jī)超聲波測(cè)距儀設(shè)計(jì)課程設(shè)計(jì)
- 基于單片機(jī)的超聲波測(cè)距設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--超聲波測(cè)距儀的設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)超聲波測(cè)距儀的設(shè)計(jì)
- 課程設(shè)計(jì)--- 基于51單片機(jī)的超聲波測(cè)距儀設(shè)計(jì)
- 基于單片機(jī)的超聲波測(cè)距系統(tǒng)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論