用AT89C2051設(shè)計(jì)超聲波測距儀
超聲波測距主要應(yīng)用于倒車?yán)走_(dá)、建筑施工工地以及一些工業(yè)現(xiàn)場,例如:液位、井深、管道長度等場合。目前國內(nèi)一般使用專用集成電路設(shè)計(jì)超聲波測距儀,但是專用集成電路的成本很高,并且沒有顯示,操作使用很不方便。本文介紹一種以AT89C2051或GSM97C2051單片機(jī)為核心的低成本、高精度、微型化數(shù)字顯示超聲波測距儀的硬件電路和軟件設(shè)計(jì)方法。實(shí)際使用證明該儀器工作穩(wěn)定,性能良好。
本文引用地址:http://www.ex-cimer.com/article/171901.htm1 超聲波測距原理
超聲波測距是通過不斷檢測超聲波發(fā)射后遇到障礙物所反射的回波,從而測出發(fā)射和接收回波的時(shí)間差t,然后求出距離S=Ct/2,式中的C為超聲波波速。
由于超聲波也是一種聲波,其聲速C與溫度有關(guān),表1列出了幾種不同溫度下的聲速。在使用時(shí),如果溫度變化不大,則可認(rèn)為聲速是基本不變的。如果測距精度要求很高,則應(yīng)通過溫度補(bǔ)償?shù)姆椒右孕U?。聲速確定后,只要測得超聲波往返的時(shí)間,即可求得距離。這就是超聲波測距儀的機(jī)理。其系統(tǒng)框圖如圖1所示。
2 AT89C2051的功能特點(diǎn)
AT89C2051是一個(gè)2k字節(jié)可編程EPROM的高性能微控制器。它與工業(yè)標(biāo)準(zhǔn)MCS-51的指令和引腳兼容,因而是一種功能強(qiáng)大的微控制器,它對(duì)很多嵌入式控制應(yīng)用提供了一個(gè)高度靈活有效的解決方案。AT89C2051有以下特點(diǎn):2k字節(jié)EPROM、128字節(jié)RAM、15根I/O線、2 個(gè)16位定時(shí)/計(jì)數(shù)器、5個(gè)向量二級(jí)中斷結(jié)構(gòu)、1個(gè)全雙向的串行口、并且內(nèi)含精密模擬比較器和片內(nèi)振蕩器,具有4.25V至5.5V的電壓工作范圍和 12MHz/24MHz工作頻率,同時(shí)還具有加密陣列的二級(jí)程序存儲(chǔ)器加鎖、掉電和時(shí)鐘電路等。此外,AT89C2051還支持二種軟件可選的電源節(jié)電方式??臻e時(shí),CPU停止,而讓RAM、定時(shí)/計(jì)數(shù)器、串行口和中斷系統(tǒng)繼續(xù)工作??傻綦姳4鍾AM的內(nèi)容,但可使振蕩器停振以禁止芯片所有的其它功能直到下一次硬件復(fù)位。
AT89C2051有2個(gè)16位計(jì)時(shí)/計(jì)數(shù)器寄存器Timer0t Timer1。作為一個(gè)定時(shí)器,每個(gè)機(jī)器周期寄存器增加1,這樣寄存器即可計(jì)數(shù)機(jī)器周期。因?yàn)橐粋€(gè)機(jī)器周期有12個(gè)振蕩器周期,所以計(jì)數(shù)率是振蕩器頻率的 1/12。作為一個(gè)計(jì)數(shù)器,該寄存器在相應(yīng)的外部輸入腳P3.4/T0和P3.5/T1上出現(xiàn)從1至0的變化時(shí)增1。由于需要二個(gè)機(jī)器周期來辨認(rèn)一次1到 0的變化,所以最大的計(jì)數(shù)率是振蕩器頻率的1/24,可以對(duì)外部的輸入端P3.2/INT0和P3.3/INT1編程,便于測量脈沖寬度的門。
充分利用AT89C2051的片內(nèi)資源,即可在很少外圍電路的情況下構(gòu)成功能完善的超聲波測距系統(tǒng)。
3 系統(tǒng)硬件電路設(shè)計(jì)
超聲波測距儀的硬件電路如圖2所示。
評(píng)論