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

下載本文檔

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

文檔簡介

1、<p>  論文題目:基于藍牙控制的智能小車</p><p><b>  摘要:</b></p><p>  隨著科學技術的快速發(fā)展,超聲波將在測距儀中的應用越來越廣。但就目前技術水平來說,人們可以具體利用的測距技術還十分有限,因此,這是一個正在蓬勃發(fā)展而又有無限前景的技術及產(chǎn)業(yè)領域。展望未來,超聲波測距儀作為一種新型的非常重要有用的工具在各方面都將有很大的

2、發(fā)展空間,它將朝著更加高定位高精度的方向發(fā)展,以滿足日益發(fā)展的社會需求,如聲納的發(fā)展趨勢基本為:研制具有更高定位精度的被動測距聲納,以滿足水中武器實施全隱蔽攻擊的需要;繼續(xù)發(fā)展采用低頻線譜檢測的潛艇拖曳線列陣聲納,實現(xiàn)超遠程的被動探測和識別;研制更適合于淺海工作的潛艇聲納,特別是解決淺海水中目標識別問題;大力降低潛艇自噪聲,改善潛艇聲納的工作環(huán)境。無庸置疑,未來的超聲波測距儀將與自動化智能化接軌,與其他的測距儀集成和融合,形成多測距儀。

3、隨著測距儀的技術進步,測距儀將從具有單純判斷功能發(fā)展到具有學習功能,最終發(fā)展到具有創(chuàng)造力。在新的世紀里,面貌一新的測距儀將發(fā)揮更大的作用。</p><p>  本設計采用以AT89C51單片機為核心的低成本、高精度、微型化數(shù)字顯示超聲波測距儀的硬件電路和軟件設計方法。整個電路采用模塊化設計,由主程序、中斷程序、發(fā)射子程序、接收子程序、顯示子程序等模塊組成。各探頭的信號經(jīng)單片機綜合分析處理,實現(xiàn)超聲波測距儀的各種功

4、能。在此基礎上設計了系統(tǒng)的總體方案,最后通過硬件和軟件實現(xiàn)了各個功能模塊。 </p><p><b>  目錄</b></p><p><b>  1.設計課題</b></p><p><b>  2.電路設計</b></p><p><b>  3.程序設計<

5、;/b></p><p><b>  4.調(diào)試及性能分析</b></p><p><b>  5.設計總結</b></p><p><b>  6.附件</b></p><p><b>  7.設計體會</b></p><p>

6、;<b>  8.參考文獻</b></p><p><b>  1.設計課題</b></p><p>  本文所研究的超聲波測距儀利用超聲波指向性強、能量消耗緩慢、傳播距離較遠等優(yōu)點,即用超聲波發(fā)射器向某一方向發(fā)送超聲波,同時在發(fā)射的時候開始計時,在超聲波遇到障礙物的時候反射回來,超聲波接收器在接收到反射回來的超聲波時,停止計時。設超聲波在空氣中

7、的傳播速度為V,在空氣中的傳播時間為T,汽車與障礙物的距離為S,S=VT/2,這樣可以測出汽車與障礙物之間的距離,然后在LED顯示屏上顯示出來。</p><p>  其工作機理是依據(jù)壓電材料的正逆壓電效應,利用逆壓電效應產(chǎn)生超聲波,即逆壓電效應是在壓電材料上加上某種特定頻率的交變正弦信號,材料就會產(chǎn)生隨所加電壓的變化規(guī)律而變化的機械形變,這種機械形變推動周圍介質(zhì)振動,產(chǎn)生疏密相間的機械波,如果其振動頻率在超聲范圍

8、內(nèi),這種機械波就是超聲波。</p><p>  本文所設計的超聲波測距儀主要由AT89C52單片機、超聲波發(fā)射電路、超聲波接收放大電路、顯示電路.</p><p>  首先由單片機驅(qū)動產(chǎn)生12MHZ晶振,由超聲波發(fā)射探頭發(fā)送出去,在遇到障礙物反射回來時由超聲波接收探頭檢測到信號,然后經(jīng)過濾波、放大、整形之后送入單片機進行計算,把計算結果輸出到LED液晶顯示屏上。超聲波發(fā)生器可以分為兩大類:

9、一類是用電氣方式產(chǎn)生超聲波;另一類是用機械方式。產(chǎn)生超聲波。電氣方式包括壓電型、電動型等;機械方式有加爾統(tǒng)笛、液 和氣流旋笛等。它們所產(chǎn)生的超聲波的頻率,功率和聲波特性各不相同,因而用途也各不相同。目前在近距離測量方面較為常用的是壓電式超聲波換能器。</p><p>  根據(jù)設計要求并綜合各方面因素,本例決定采用AT89C51單片機作為主控制器,用動態(tài)掃描法實現(xiàn)LED數(shù)字顯示,超聲波驅(qū)動信號用單片機的定時器完成。

10、超聲波測距器系統(tǒng)設計如圖3.1所示。</p><p>  圖3.1 超聲波測距器系統(tǒng)設計框圖</p><p><b>  2.硬件電路設計</b></p><p>  硬件電路的設計主要包括單片機系統(tǒng)及顯示電路、超聲波發(fā)射電路和超聲波檢測接收電路三部分。單片機采用AT89C51或其兼容系列。采用12MHz高精度的晶振,以獲得較穩(wěn)定時鐘頻率,減

11、小測量誤差。單片機用P1.0端口輸出超聲波換能器所需的40kHz的方波信號,利用外中斷0口監(jiān)測超聲波接收電路輸出的返回信號。顯示電路采用簡單實用的4位共陽LED數(shù)碼管,段碼用74LS244驅(qū)動,位碼用PNP三極管9012驅(qū)動。</p><p>  主要由單片機系統(tǒng)及顯示電路、超聲波發(fā)射電路和超聲波檢測接收電路三</p><p>  部分組成。采用AT89S51來實現(xiàn)對超聲波模組進行控制,然

12、后單片機不停的檢測INT0引腳,當INT0引腳的電平由高電平變?yōu)榈碗娖綍r就認為超聲波已經(jīng)返回。計數(shù)器所計的數(shù)據(jù)就是超聲波所經(jīng)歷的時間,通過換算就可以得到傳感器與障礙物之間的距離。2.1超聲波發(fā)射和接收模組(V2.0)</p><p>  本文采用的超聲波測距模組集發(fā)射和接受為一體,內(nèi)部超聲波傳感器諧振頻率40KHz,模組傳感器工作電壓4.5V~9V,模組接口電壓4.5V~5.5V。提供三種測距模式,選擇跳線可以

13、選擇短距、中距和可調(diào)距。本實驗采用短距(20~100cm)精度1cm。模組結構示意圖如下:</p><p>  應用時只需要用J5的第1個口與單片機Vcc連接,最后一個口與單片機GND連接,第4個接口與 單片機的INT0口相連接,J4的第3個接口與單片機1.0口連接,同時將J1跳線設置為短距模式,J2跳線設置為非外部電源供電方式(此時開發(fā)板通過10PIN排線為模組供電,板上J5選擇5V,要把J2跳接到5v的一端)

14、。這就完成了模組硬件的連接。超聲波諧振頻率調(diào)理電路圖如下:</p><p>  由單片機產(chǎn)生40KHz的方波由P1.0口送出,連接模組接口J4到模組的CD4049,而后面的CD4049則對40KHz頻率信號進行調(diào)理,以使超聲波傳感器產(chǎn)生諧振。</p><p>  上圖為超聲波回波接收處理電路,超聲波接受處理部分電路前級采用NE5532構成10000倍放大器,對接收信號進行放大;后級采用LM

15、311比較器對接收信號進行調(diào)整,比較電壓為LM311的3管腳的輸入。</p><p>  接收回路中測得的超聲波信號共有兩個波束,第一個為余波信號,即超聲波接收頭在發(fā)射頭發(fā)射信號(一組40KHz的脈沖)后,馬上就接收到了超聲波信號,并持續(xù)一段時間。另一個波束為有效信號,即經(jīng)過被測物表面反射的回波信號。超聲波測距時,需要測的是開始發(fā)射到接收到信號的時間差,要盡量避免檢測到余波信號,這也是檢測中存在最小測量盲區(qū)的主要

16、原因。</p><p>  單片機控制模組每次發(fā)生若干完整的40KHz的脈沖信號,發(fā)射信號前打開計數(shù)器T0,進行計時,等計時到達一定值后再開啟檢測回波信號,以避免余波信號的干擾。采用外部中斷INT0對回波信號進行檢測,接收到回波信號后馬上讀取計數(shù)器中的數(shù)值,此數(shù)據(jù)即為需要測量的時間差數(shù)據(jù)。</p><p><b>  2.2數(shù)據(jù)顯示模塊</b></p>

17、<p>  顯示電路采用簡單實用的4位共陽LED數(shù)碼管,斷碼用74LS244驅(qū)動,位碼用PNP三極管9012驅(qū)動。由P0口輸出顯示數(shù)據(jù),P2.0~P2.3用來位選。顯示電路如下圖:</p><p><b>  3.系統(tǒng)程序的設計</b></p><p>  超聲波測距器的軟件設計主要由主程序,超聲波發(fā)生子程序,超聲波接收中斷程序及顯示子程序組成,由于C語言程

18、序有利于實現(xiàn)較復雜的算法,匯編語言程序則具有較高的效率并且容易精確計算程序行動的時間,而超聲波測距器的程序既有較復雜的計算(計算距離時),又要求精確計算程序運行時間(超聲波測距時),所以控制程序可采用C語言和匯編語言混合編程。下面對超聲波測距器的算法,主程序,超聲波發(fā)生子程序和超聲波接收中斷程序逐一介紹。</p><p>  3.1 超聲波測距器的算法設計</p><p>  圖3.6示

19、意了超聲波測距的原理,既超聲波發(fā)生器T在某一時刻發(fā)出一個超聲波信號,當這個超聲波遇到被測物體后反射回來,就會被超聲波接收器R接收到。這樣,只要計算出從發(fā)出超聲波信號到接收到返回信號所用的時間,就可算出超聲波發(fā)生器于反射物體的距離。該距離的計算公式如下:</p><p>  d=s/2(v×t)/2</p><p>  其中:d為被測物于測距器的距離;s為聲波的來回路程;v為聲速;

20、t為聲波來回所用的時間。</p><p>  超聲波也是一種聲波,其聲速v于溫度有關。表3.1列出了幾種不同溫度下的超聲波聲速。在使用時,如果溫度變化不大,則可認為聲速基本不變的。如果測距精度要求很高,則應通過溫度補償?shù)姆椒右孕UB曀俅_定后,只要測得超聲波往返的時間,即可求得距離。表3.1不同溫度下超聲波聲速表</p><p><b>  3.2 主程序</b>

21、</p><p>  主程序首先要對系統(tǒng)環(huán)境初始化,設置定時器T0工作模式為16位定時/計數(shù)器模式,置位總中斷允許位EA并對顯示端口P0和P2清0;然后調(diào)用超聲波發(fā)生子程序送出一個超聲波脈沖。為了避免超聲波從發(fā)射器直接傳到接收器引起的直射波,需要延時約0.1ms(這也就是超聲波測距器會有一個最小可測距離的原因)后才可打開外中斷0接收返回的超聲波信號。由于采用的是12MHz的晶振,計數(shù)器每計一個數(shù)就是1us,所以當

22、主程序檢測到接收成功的標志位后,將計數(shù)器T0中的數(shù)(即超聲波來回所用的時間)按式(3—2)計算,即可得被測物體與測距器之間的距離。設計時取20℃時的聲速為344m/s,則有</p><p>  d=(v×t)/2=(172T/10000)cm (3—2)</p><p>  其中:T為計數(shù)器T0的計數(shù)值。</p><p>  測出距離后,結果將以

23、十進制BCD碼方式送往LED顯示約為0.5s,然后再發(fā)超聲波脈沖重復測量過程。圖3.7所示為主程序流程圖。</p><p>  ※※※※※※主程序※※※※※※</p><p>  START: MOV SP, #4FH</p><p>  MOV R0, #40H ;40H~43H為顯示數(shù)據(jù)存放單元(40H為最高位)</p>

24、<p>  MOV R7, #0BH</p><p>  CLEARDISP: MOV @R0, #00H</p><p>  INC R0</p><p>  DJNZ R7, CLEARDISP</p><p>  MOV 20H, #00H</p><p&

25、gt;  MOV TMOD, #21H ;T1為8位自動重裝模式,T0為16位定時器</p><p>  MOV TH0, #00H ;65ms初值</p><p>  MOV TL0, #00H</p><p>  MOV TH1, #0F2H ;40kHz初值</p><p>  MOV

26、 TL1, #0F2H</p><p>  MOV P0, #0FFH</p><p>  MOV P1, #0FFH</p><p>  MOV P2, #0FFH</p><p>  MOV P3, #0FFH</p><p>  MOV R4, #04H

27、 ;超聲波脈沖個數(shù)控制(為賦值的一半)</p><p>  SETB PX0</p><p>  SETB ET0</p><p>  SETB EA</p><p>  SETB TR0 ;開啟測試定時器</p><p>  START1:

28、 LCALL DISPLAY</p><p>  JNB 00H, START1 ;收到反射信號時標志位為1</p><p>  CLR EA</p><p>  LCALL WORK</p><p>  SETB EA</p><p>  CLR 00H<

29、;/p><p>  SETB TR0 ;重新開啟測試定時器</p><p>  MOV R2, #64H ;測量間隙控制(約4ms×100=400ms)</p><p>  LOOP: LCALL DISPLAY</p><p>  DJNZ R2,LOOP</

30、p><p>  SJMP START1</p><p>  3.3 超聲波發(fā)生子程序和超聲波接收中斷程序</p><p>  超聲波發(fā)生子程序的作用是通過P1.0端口發(fā)送兩個左右的超聲波脈沖信號(頻率40KHz的方波),脈沖寬度為12us左右,同時把計數(shù)器T0打開進行時。超聲波發(fā)生子程序較簡單,但要求程序運行時間準確,所以采用匯編語言編程。</p>

31、<p>  ORG 0000H</p><p>  LJMP START</p><p>  ORG 0003H</p><p>  LJMP PINT0</p><p>  ORG 000BH</p><p>  LJMP INTT0</p>

32、;<p>  ORG 0013H</p><p><b>  RETI</b></p><p>  ORG 001BH</p><p>  LJMP INTT1</p><p>  ORG 0023H</p><p><b>  RET

33、I</b></p><p>  ORG 002BH</p><p><b>  RETI</b></p><p>  超聲波測距器主程序利用外中斷0檢測返回超聲波信號,一旦接收到返回超聲波信號(即INT0引腳出現(xiàn)低電平),立即進入超聲波接收中斷程序。進入該中斷后,就立即關閉計時器T0,停止計時,并將測距成功標志字賦值1.

34、</p><p>  ※※※※※※中斷程序※※※※※※</p><p> ?。籘0中斷,65ms中斷一次</p><p>  INTT0: CLR EA</p><p>  CLR TR0</p><p>  MOV TH0,#00H</p><p&

35、gt;  MOV TL0,#00H</p><p>  SETB ET1</p><p>  SETB EA</p><p>  SETB TR0 ;啟動計數(shù)器T0,用以計算超聲來回時間</p><p>  SETB TR1 ;開啟發(fā)超聲波用定時器T1

36、</p><p>  OUT: RETI</p><p> ?。籘1中斷,發(fā)超聲波用</p><p>  INTT1: CPL VOUT</p><p>  DJNZ R4,RETOUT</p><p>  CLR TR1 ;

37、超聲波發(fā)完畢,關T1</p><p>  CLR ET1</p><p>  MOV R4,#04H</p><p>  SETB EX0 ;開啟接收回波中斷</p><p>  RETIOUT: RETI</p><p>  ;外中斷0,收到回波時

38、進入</p><p>  PINT0: CLR TR0 ;關計數(shù)器</p><p>  CLR TR1</p><p>  CLR ET1</p><p>  CLR EA</p><p>  CLR E

39、X0</p><p>  MOV 44H,TL0 ;將計數(shù)值移入處理單元</p><p>  MOV 45H,TH0</p><p>  SETB 00H ;接收成功標志</p><p><b>  RETI</b></p><p&

40、gt;  如果當計時器溢出時還未檢測到超聲波返回信號,則定時器T0溢出中斷將外中斷0關閉,并將測距成功標志字賦值2,以表示本次測距不成功。</p><p><b>  4.調(diào)試及性能分析</b></p><p><b>  4.1 調(diào)試</b></p><p>  超聲波測距器的制作和調(diào)試都較為簡單,其中超聲波發(fā)射和接收采

41、用ø15的超聲波換能器TCT40—10F1(T發(fā)射)和TCT40—10S1(R接收),中心頻率為40KHz,安裝時應保持兩換能器中心軸線平行并相距4~8cm,其余元件無特殊要求。若能將超聲接收電路用金屬殼屏蔽起來,則可提高抗干擾性能。根據(jù)測量范圍要求不同,可適當?shù)卣{(diào)整與接收換能器并接的濾波電容C4的大小,以獲得合適的接收靈敏度和抗干擾能力。</p><p>  硬件電路制作完成并調(diào)整好后,便可將程序編譯

42、好下載到單片機試運行。根據(jù)實際情況,可以修改超聲波子程序每次發(fā)送的脈沖個數(shù)和兩次測量的間隔時間,以適應不同距離的測量需要。</p><p><b>  4.2 性能指示</b></p><p>  根據(jù)文中電路參數(shù)和程序,測距器可測量的范圍為0.07~5.50m。實驗中,對測量范圍為0.07~2.50m的平面物體做了多次測試,測距器的最大誤差不超過1cm,重復性很好。

43、</p><p><b>  5.設計總結</b></p><p>  在本次設計中,我們廣泛借鑒了各種設計的優(yōu)點,充分考慮了整個設計中的各個環(huán)節(jié)。包括產(chǎn)生40KHz的方波,在接收電路中,對所接收方波進行濾波、放大、整形等步驟。但由于條件和技術所限,對于很多以上所分析的在發(fā)射和接收過程中所產(chǎn)生的誤差沒有得到有效的校正。比如溫度誤差、硬件電路誤差等。</p>

44、<p>  在我們?yōu)槠谝粋€學期的設計中,我們用到了以前學到的很多知識,比如電工、單片機、和匯編語言等。這使我們意識到,任何一件產(chǎn)品的產(chǎn)生,都不是單一知識所能實現(xiàn)的。而且在電路的設計和程序的編制過程中,出現(xiàn)了很多意想不到的錯誤,讓我們措手不及,有些甚至是一些非常低級的錯誤,但是這些錯誤也同樣讓我們獲益非淺,它使我們意識到,研究是一個非常嚴肅的過程,來不得半點馬虎。必須有一個嚴謹?shù)膽B(tài)度,加上100%的努力才有可能獲得成功的喜悅

45、。</p><p>  總之,在本課題的設計過程中盡管走了很多的彎路,但是還是學到了不少知識,從中受益匪淺。了解了超聲波傳感器的原理,學會了各種放大電路的分析、設計,也掌握了單片機的開發(fā)過程中所用到的開發(fā)方法和工具。動手能力與自學能力得到了鍛煉與提高,對待事物的態(tài)度也發(fā)生了變化。理論總是離不開實踐的,設計制作過程中,盲目地追尋理論知識根本不足以解決任何問題,一味的死研究課本是不會真正掌握單片機的。只有真正動手去做

46、才能發(fā)現(xiàn)問題,解決問題,提高能力。</p><p><b>  6.附件</b></p><p><b>  6.1控制源程序</b></p><p><b>  單片機匯編源程序</b></p><p><b>  超聲波測距器</b></p>

47、;<p>  采用AT89C51 12MHz晶振</p><p>  采用共陽LED顯示器</p><p>  測試范圍為0.07~4m,堆棧在4FH以上,20H用于標志</p><p>  顯示緩沖單元在40H~43H,內(nèi)存44H~46H用于計算距離</p><p>  VOUT EQU P1.0

48、 ;脈沖輸出端口</p><p>  ※※※※※※中斷入口程序※※※※※※</p><p>  ORG 0000H</p><p>  LJMP START</p><p>  ORG 0003H</p><p>  LJMP PINT0</p>

49、;<p>  ORG 000BH</p><p>  LJMP INTT0</p><p>  ORG 0013H</p><p><b>  RETI</b></p><p>  ORG 001BH</p><p>  LJMP INT

50、T1</p><p>  ORG 0023H</p><p><b>  RETI</b></p><p>  ORG 002BH</p><p><b>  RETI</b></p><p>  ※※※※※※主程序※※※※※※</p>&l

51、t;p>  START: MOV SP, #4FH</p><p>  MOV R0, #40H ;40H~43H為顯示數(shù)據(jù)存放單元(40H為最高位)</p><p>  MOV R7, #0BH</p><p>  CLEARDISP: MOV @R0, #00H</p><p>  I

52、NC R0</p><p>  DJNZ R7, CLEARDISP</p><p>  MOV 20H, #00H</p><p>  MOV TMOD, #21H ;T1為8位自動重裝模式,T0為16位定時器</p><p>  MOV TH0, #00H ;65ms初值</p>

53、<p>  MOV TL0, #00H</p><p>  MOV TH1, #0F2H ;40kHz初值</p><p>  MOV TL1, #0F2H</p><p>  MOV P0, #0FFH</p><p>  MOV P1, #0FFH</p>

54、<p>  MOV P2, #0FFH</p><p>  MOV P3, #0FFH</p><p>  MOV R4, #04H ;超聲波脈沖個數(shù)控制(為賦值的一半)</p><p>  SETB PX0</p><p>  SETB ET0&

55、lt;/p><p>  SETB EA</p><p>  SETB TR0 ;開啟測試定時器</p><p>  START1: LCALL DISPLAY</p><p>  JNB 00H, START1 ;收到反射信號時標志位為1</p>

56、<p>  CLR EA</p><p>  LCALL WORK</p><p>  SETB EA</p><p>  CLR 00H</p><p>  SETB TR0 ;重新開啟測試定時器</p><p>  MOV

57、 R2, #64H ;測量間隙控制(約4ms×100=400ms)</p><p>  LOOP: LCALL DISPLAY</p><p>  DJNZ R2,LOOP</p><p>  SJMP START1</p><p>  ※※※※※※中斷程序※※※※※

58、※</p><p>  ;T0中斷,65ms中斷一次</p><p>  INTT0: CLR EA</p><p>  CLR TR0</p><p>  MOV TH0,#00H</p><p>  MOV TL0,#00H</p>

59、<p>  SETB ET1</p><p>  SETB EA</p><p>  SETB TR0 ;啟動計數(shù)器T0,用以計算超聲來回時間</p><p>  SETB TR1 ;開啟發(fā)超聲波用定時器T1</p><p>  OUT:

60、 RETI</p><p>  ;T1中斷,發(fā)超聲波用</p><p>  INTT1: CPL VOUT</p><p>  DJNZ R4,RETOUT</p><p>  CLR TR1 ;超聲波發(fā)完畢,關T1</p><p>

61、;  CLR ET1</p><p>  MOV R4,#04H</p><p>  SETB EX0 ;開啟接收回波中斷</p><p>  RETIOUT: RETI</p><p>  ;外中斷0,收到回波時進入</p><p>  

62、PINT0: CLR TR0 ;關計數(shù)器</p><p>  CLR TR1</p><p>  CLR ET1</p><p>  CLR EA</p><p>  CLR EX0</p><p&g

63、t;  MOV 44H,TL0 ;將計數(shù)值移入處理單元</p><p>  MOV 45H,TH0</p><p>  SETB 00H ;接收成功標志</p><p><b>  RETI</b></p><p>  ※※※※※※顯示程序※※※※※

64、※</p><p>  ;40H為最高位,43H為最低位,先掃描高位</p><p>  DISPLAY: MOV R1,#40H;G</p><p>  MOV R5,#0E7H;G</p><p>  PLAY: MOV A,R5</p><

65、;p>  MOV P0,#0FEH</p><p>  MOV P2,A</p><p>  MOV @R1</p><p>  MOV DPTR,#TAB</p><p>  MOVC A,@A+DPTR</p><p

66、>  MOV P0,A</p><p>  LCALL DL1MS</p><p>  INC R1</p><p>  MOV A,R5</p><p>  JNB ACC.0,ENDOUT;G</p><p>  

67、RR A</p><p>  MOV R5,A</p><p>  AJMP PLAY</p><p>  ENDOUT: MOV P2,#0FEH</p><p>  MOV P0,#0FEH</p><p>

68、;<b>  RET</b></p><p>  TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,</p><p>  0FEH,88H,0BFH</p><p>  ;共陽段碼表 “0”,“1”,“2”,“3”,“4

69、”,“5”,“6”,“7”,“8”,“9”,</p><p>  “不亮”,“A”,“-”</p><p>  ※※※※※※延時程序※※※※※※</p><p>  DL1MS: MOV R6, #14H</p><p>  DL1: MOV R7, #19H</p>&

70、lt;p>  DL2: DJNZ R7, DL2</p><p>  DJNZ R6, DL1</p><p><b>  RET</b></p><p>  ※※※※※※距離計算程序※※※※※※</p><p>  Work: PUSH A

71、CC</p><p>  PUSH PSW</p><p>  PUSH B</p><p>  MOV PSW, #18h</p><p>  MOV R3, 45H</p><p>  MOV R2, 44H</p

72、><p>  MOV R1, #00D</p><p>  MOV R0, #17D</p><p>  LCALL MUL2BY2</p><p>  MOV R3, #03H</p><p>  MOV R2, #0E8H&

73、lt;/p><p>  LCALL DIV4BY2</p><p>  LCALL DIV4Y2</p><p>  MOV 400H, R4</p><p>  MOV A, 40H</p><p>  JNZ JJ0</p

74、><p>  MOV 40H,#0AH ;最高位為0,不點亮</p><p>  JJ0: MOV A, R0</p><p>  MOV R4, A</p><p>  MOV A, R1</p><p>  MOV

75、 R5, A</p><p>  MOV R3, #00D</p><p>  MOV R2, #100D</p><p>  LCALL DIV4BY2</p><p>  MOV 41H, R4</p><p>  MO

76、V A, 41H</p><p>  JNZ JJ1</p><p>  MOV A, 40H ;次高位為0,先看最高位是否為不亮</p><p>  SUBB A, #0AH</p><p>  JNZ JJ1</p>

77、<p>  MOV 41H, #0AH ;最高位不亮,次高位也不亮</p><p>  JJ1: M0V A, R0</p><p>  MOV R4, A</p><p>  MOV A, R1</p><p>  MOV

78、 R5, A</p><p>  MOV R3, #00D</p><p>  MOV R2, #10D</p><p>  LCALL DIV4BY2</p><p>  MOV 42H, R4</p><p>

79、  MOV A, 42H</p><p>  JNZ JJ2</p><p>  MOV A, 41H ;次次高位為0,先看次高位是否為不亮</p><p>  SUBB A, #0AH</p><p>  JNZ JJ2</

80、p><p>  MOV 42H, #0AH ;次高位不亮,次次高位也不亮</p><p>  JJ2: MOV 43H, R0</p><p>  POP B</p><p>  POP PSW</p><p>  P

81、OP ACC</p><p><b>  RET</b></p><p>  ※※※※※※2字節(jié)無符號數(shù)乘法程序※※※※※※</p><p>  R7R6R5R4≦R3R2×R1R0</p><p>  MUL2BY2: CLR A</p>&

82、lt;p>  MOV R7,A</p><p>  MOV R6,A</p><p>  MOV R5,A</p><p>  MOV R4,A</p><p>  MOV 46H,#10H</p>&l

83、t;p>  MULLOOP1: CLR C</p><p>  MOV A,R4</p><p>  RLC A</p><p>  MOV R4,A</p><p>  MOV A,R5</p>&

84、lt;p>  RLC A</p><p>  MOV R5,A</p><p>  MOV A,R6</p><p>  RLC A</p><p>  MOV R6,A</p><p>  M

85、OV A,R7</p><p>  RLC A</p><p>  MOV R7,A</p><p>  MOV A,R0</p><p>  RLC A</p><p>  MOV

86、 R0,A</p><p>  MOV A,R1</p><p>  RLC A</p><p>  MOV R1,A</p><p>  JNC MULLOOP2</p><p>  MOV

87、A,R4</p><p>  ADD A,R2</p><p>  MOV R4,A</p><p>  MOV A,R5</p><p>  ADDC A,R3</p><p>  MOV R5,A&

88、lt;/p><p>  MOV A,R6</p><p>  ADDC A,#00H</p><p>  MOV R6,A</p><p>  MOV A,R7</p><p>  ADDC A,#00H&l

89、t;/p><p>  MOV R7,A</p><p>  MULLOOP2: DJNZ 46H,MULLOOP1</p><p><b>  RET</b></p><p>  ※※※※※※4字節(jié)/2字節(jié)無符號數(shù)除法程序※※※※※※</p><p>

90、 ??;R7R6R5R4/R3R2=R7R6R5R4(商)…R1R0(余數(shù))</p><p>  DIV4BY2: MOV 46H,#20H</p><p>  MOV R0,#00H</p><p>  MOV R1,#00H</p><p>  DIVLOOP1:

91、 MOV A,R4</p><p>  RLC A</p><p>  MOV R4,A</p><p>  MOV A,R5</p><p>  RLC A </p><p>  MOV

92、 R5,A</p><p>  MOV A,R6</p><p>  RLC A</p><p>  MOV R6,A</p><p>  MOV A,R7</p><p>  RLC A&

93、lt;/p><p>  MOV R7,A</p><p>  MOV A,R0</p><p>  RLC R0</p><p>  MOV R0,A</p><p>  MOV A,R1</p>&

94、lt;p>  RLC A</p><p>  MOV R1,A</p><p>  CLR C</p><p>  MOV A,R0</p><p>  SUBB A,R2</p><p>  MOV

95、 B,A</p><p>  MOV A,R1</p><p>  SUBB A,R3</p><p>  JC DIVLOOP2</p><p>  MOV R0,B</p><p>  MOV

96、 R1,A</p><p>  DIVLOOP2: CPL C</p><p>  DJNZ 46H,DIVLOOP1</p><p>  MOV A,R4</p><p>  RLC A</p><p>  MOV

97、 R4,A</p><p>  MOV A,R5</p><p>  RLC A </p><p>  MOV R5,A</p><p>  MOV A,R6</p><p>  RLC

98、 A</p><p>  MOV R6,A</p><p>  MOV A,R7 </p><p>  RLC A</p><p>  MOV R7,A</p>&

99、lt;p><b>  RET</b></p><p>  END ;程序結束</p><p><b>  6.2電路圖</b></p><p><b>  超聲波發(fā)射電路</b></p><p><

100、b>  超聲波接收電路</b></p><p><b>  六、設計的體會</b></p><p>  通過這次單片機課程設計,我不僅加深了對單片機理論的理解,將理論很好地應用到實際當中去,而且我還學會了如何去培養(yǎng)我們的創(chuàng)新精神,從而不斷地戰(zhàn)勝自己,超越自己。創(chuàng)新可以是在原有的基礎上進行改進,使之功能不斷完善,成為真己的東西。設計結果能夠符合題意,成

溫馨提示

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

評論

0/150

提交評論