【正文】
i 距離計算程序( =計數(shù)值 *17/1000cm) * 。******************************************* DL1MS: PUSH 06H PUSH 07H MOV R6,14H DL1:MOV R7,19H DL2:DJNZ R7,DL2 DJNZ R6,DL1 POP 07H POP P6H RET 。******************************************* 。G RR A MOV R5,A AJMP PLAY ENDOUT:MOV P2,0FFH MOV P0,0FFH RET TAB:DB 18H,7BH,2CH,29H,48H,89H,88H,38H,08H,09H,0FFH 。G MOV R5,7FH 。***************************************** 。***************************************** 。管計數(shù)器 CLR EA CLR EX0 MOV 44H,TL0 MOV 45H,TH0 MOV TH0,00H MOV TL0,00H JNB ,$ SETB 00H 。開啟接收回波中斷 RETOUTI: RETI 。超聲波發(fā)送完畢 MOV R4,04H LCALL DELAY_25 。啟動計數(shù)器 T0,用以計數(shù) INTT11: CPL VOUT 。************************************* T1中斷,發(fā)超聲波用 。************************************* 。測量間隔控制(約 4*100=400ms) LOOP: LCALL DISPLAY DJNZ R2,LOOP CLR 00H SETB ET0 MOV TH0,00H MOV TL0,00H SETB TR1 。收到反射信號時標志位為 1 CLR EA LCALL WORK 。超聲波脈沖個數(shù)控制(為賦值的一半) SETB PX0 SETB ET1 SETB EA SETB TR1 。T1為 T0的 16位定時器 MOV TH0,00H 。************************************** START: MOV SP,4FH MOV R0,40H 。************************************** 。* 中斷入口程序 * 。 參考文獻 : 單片機原理及應(yīng)用技術(shù) 高等教育出版社 李全利 單片機 C語言程序設(shè)計教程與實例 北京大學(xué)出版社 張秀國 數(shù)字電子技術(shù)基礎(chǔ) 人民郵電出版社 周良全 模擬電子技術(shù)基礎(chǔ) 高等教育出版社 胡宴如 智能儀器原理與應(yīng)用 西安電子科技大學(xué)出 版社 曹建平 MCS51系列單片機使用接口技術(shù) 北京航空航天大學(xué)出版社 李華 參考網(wǎng)站 附錄 2 程序 IC:AT89C51 OSCCAL:XT (12M) SPEAK: EQU 。 在啟動發(fā)射電路的同時啟動單片機內(nèi)部的定時器 T0,利用定時器的計數(shù)功能記錄超聲波發(fā)射的時間和收到反射波的時間。 基于 51 單片機超聲波測距儀 第 16 頁 共 25 頁 超聲波 測距的算法設(shè)計原理為超聲波發(fā)生器 T 在某一時刻發(fā)出一個超聲波信號,當(dāng)這個超聲波遇到被測物體后反射回來,就被超聲波接收器 R 所接收到。如果當(dāng)計時器溢出時還未檢測到超聲波返回信號,則定時器 T0溢出中斷將外中斷 0關(guān)閉,并將測距成功標志字賦值 2以表示此次測距不成功。主超聲波測距儀主程序利用外中斷 0 檢測返 回超聲波信號,一旦接收到返回超聲波信號(即 INT0 引腳出現(xiàn)低電平),立即進入中斷程序。 超聲波測距儀的軟件設(shè)計主要由主程序、超聲波發(fā)生子程序、超聲波接收中斷程序及顯示子程序組成。實驗證明用 CX20216A接收超聲波 (無信號時輸出高電平 ),具有很好的靈敏度和較強的抗干擾能力。 超聲波檢測接收電路 主要是由 集成電路 CX20216A組成,它是一款紅外線檢波接收的專用芯片,常用于電視機紅外遙控接收器。當(dāng)它的兩極外加脈沖信號,其頻率等于壓電晶片的固有振蕩頻率時,壓電晶片會發(fā)生 共振,并帶動共振板振動產(chǎn)生超聲波,這時它就是一個超聲波發(fā)生器;反之,如果兩電極問未外加電壓,當(dāng)共振板接收到超聲波時,將壓迫壓電晶片作振動,將機械能轉(zhuǎn)換為電信號,這時它就成為超聲波接收換能器。壓電式超聲波換能器是利用壓電晶體的諧振來工作的。輸出端采兩個反向器并聯(lián),用以提高驅(qū)動能力。顯示電路采用簡單實用的 4位共陽 LED數(shù)碼管,段碼用 74LS244驅(qū)動,位碼用 PNP三極管 8550驅(qū)動。采用 12MHz 高精度的晶振,以獲得較穩(wěn)定時鐘頻率,減小測量誤差。 超聲波測距儀 硬 件電路的設(shè)計主要包括單片機系統(tǒng)及顯示電路、超聲波發(fā)射電路和超聲 基于 51 單片機超聲波測距儀 第 15 頁 共 25 頁 波檢測接收電路三部分。實用的測距方法有兩種,一種是在被測距離的兩端,一端發(fā)射,另一端接收的直接波方式,適用于身高計;一種是發(fā)射波被物體反射回來后接收的反射波方式,適用于測距儀。 軟件設(shè)計:超聲波測距儀軟件控制著系統(tǒng)的工作。 由于超聲回波信號十分微弱并含有噪聲, S/N 較小,所以接收電路設(shè)置了兩級高Q值的濾波放大電驢。檢波電路拾取回波中的正半波,以便后級電路放大,整形電路把回波信號整理為單片機系統(tǒng)能夠接收的信號并向單片機申請中斷以停止計時。接收電路設(shè)計的好壞直接影響超聲波在空氣中傳播時間的測量。其中,脈沖變壓器對脈沖電壓變換值的大小直接影響測距 范圍,應(yīng)盡量提供脈沖變壓器副邊電壓幅值。發(fā)射電路主要任務(wù)是提高脈沖電壓的幅值,它主要由脈沖變壓器和開關(guān)管構(gòu)成。脈沖產(chǎn)生電路的主要任務(wù)是產(chǎn)生 40khz脈沖電壓。整個裝置的中心控制和信號處理單元為單片機 AT89c51,超聲波傳感器采用 TR40(40KHZ)收發(fā)超聲傳感器。所以,為提高壓電轉(zhuǎn)換效率,提高超聲測距精度和范圍,應(yīng)盡量提高超聲波傳感器外加脈沖電壓的幅值。當(dāng)壓電材料不受外力時,其應(yīng)變 S 與外加電場強度 E 的關(guān)系為 :S=dE,其中 d 為應(yīng)變電場常數(shù)。超聲波測距徜徉壓電材料傳感器,例如 TR40壓電超聲傳感器。由于超聲回波隨距離的增加而變得十分微弱,所以在設(shè)計超聲接收電路時,要設(shè)計較大倍數(shù)和較好濾波特性的放大電路,使回波易于檢測。但是。 設(shè)在距離超聲接收器 x處有被測物,超聲波皮率越高,器衰減越快。整個過程,超聲波會有很大的衰減。當(dāng)需要精確確定超聲波傳播速度是,必須考慮溫度的影響。因此,超聲波的傳播速度收氣體的密度、溫度計氣體分子成分的影響。在此基礎(chǔ)上,開發(fā)了以 AT89C51 單片機為核心,采用 40KHZ 壓電超聲波傳感器,應(yīng)用廣泛的超聲測距儀。這些因素使超聲波測距的精度和范圍受到影響。從原理上講,超聲波測距有脈沖回波法、共振法和頻差法。實驗表明,注意以上三方面的因素能夠提高超聲波測距的精度。 本章將要分析溫度對超聲波聲速 的影響,超聲波回撥檢測對超聲波傳播時間的影響,超聲波傳感器所加脈沖電壓對測試精度的影響。若能將超聲波接收電路用金屬屏蔽起來,則可提高抗干擾能力。 定時中斷服務(wù)子程序完成三方向超聲波的輪流發(fā)射,外部中斷服務(wù)子程序主要完成時間值讀取、距離計算、結(jié)果的輸出等工作。超聲波測距儀主程序利用外部中斷 0檢測返回超聲波信號,一旦接收到返回超聲波信號 (INT0 引腳出現(xiàn)低電平 ),立即進入中斷程序。 為了增強系統(tǒng)的可靠性,應(yīng)在軟硬件上采用一些特殊措施。該系統(tǒng)的主程序處于鍵控循環(huán)工作方式,當(dāng)按下測量建時,主程序開始調(diào)用發(fā)射子程序、插敘接收子程序、定時子程序,并把測量結(jié)果用顯示子程序在數(shù)碼管上顯示出來。 系統(tǒng)軟件設(shè)計 本設(shè)計就是以 AT89C51 單片機為核心。發(fā)射探測方式的接收 /發(fā)射器有單獨使用與共用兩種方式。反之,接收不到超聲波(無電壓信號)時,則中間有被測物體。 直接探測方式的接收 /發(fā)射器要相互配置。對于透明的或其它物體都可以探測。紅外線傳感器在探測物體時需要有像人和動物那樣與周圍有一定的溫度差這個條件。如圖所示: 1 2 3 4 5 6ABCD654321DCBAT i t l eN u m be r R e v i s i o nS i z eBD a t e : 1 8 A pr 2 0 10 S he e t o f F i l e : F : \王昭 \ c ha o s h e n g . d db D r a w n B y:112233445566778899101011111212131314147 4L S 0 4U37 4L S 0 4K3T X ( f )*R 1 61KR 1 71KCC 1 6+5P 1. 0 基于 51 單片機超聲波測距儀 第 11 頁 共 25 頁 超聲波接收電路 的設(shè)計 超聲波接收電路主要由 CX20216A和超聲波換能器構(gòu)成, CX20216A是一款紅外的專用芯片,考慮到紅外遙控常用的載波頻率為 38KHZ 與測距的超聲波頻率 40KHZ 較為接近,故利用它制作超聲波檢測接收電路,如圖所示 1 2 3 4 5 6ABCD654321DCBAT i t l eN u m be r R e v i s i o nS i z eBD a t e : 1 8 A pr 2 0 10 S he e t o f F i l e : F : \王昭 \ c ha o s h e n g . d db D r a w n B y:12