AT89C2051單片機超聲波測距系統單片機主控芯片使用51系列AT89C2051單片機,該單片機工作性能穩定,同時也是在單片機課程設計中經常使用到的控制芯片。
發射電路由單片機輸出端直接驅動超聲波發送。
接收電路使用三極管組成的放大電路,該電路簡單,調試工作小較小。
硬件電路的設計主要包括單片機系統及顯示電路、超聲波發射電路和超聲波接收電路三部分。單片機采用AT89C2051。采用12MHz高精度的晶振,以獲得較穩定時鐘頻率,減小測量誤差。單片機用P3.5端口輸出超聲波換能器所需的40kHz的方波信號,P3.6端口監測超聲波接收電路輸出的返回信號。顯示電路采用簡單實用的3位共陽LED數碼管,段碼輸出端口為單片機的P1口,位碼輸出端口分別為單片機的P3.2、P3.1、P3.0口,數碼管位驅運用PNP三極管S9012三極管驅動。
距離顯示:用三位LED數碼管進行顯示(單位是CM)。
測距范圍:35CM到 300CM之間。誤差:1%。
超聲波測距單片機系統主要由:A T 8 9 C 2 0 5 1單片機、晶振、復位電路、電源濾波部份構成。如下圖:
超聲波發射部份由電阻R2及超聲波發送頭T40板成;接收電路由BG1、BG2X組成的兩組三級管放大電路組成;檢波電路、比較整形電路由C7、D1、D2及BG3組成。
40kHz的方波由A T 8 9 C 2 0 5 1單片機的P 3 .5驅動超聲波發射頭發射超聲波,經反射后由超聲波接收頭接收到40kHz的正弦波,由于聲波在空氣中傳播時衰減,所以接收到的波形幅值較低,經接收電路放大,整形,最后輸出一負跳變,輸入單片機的P3腳。
該測距電路的40kHz方波信號由單片機A T 8 9 C 2 0 5 1 的P 3 .5發出。方波的周期為1/40ms,即25us,半周期為12.5us。每隔半周期時間,讓方波輸出腳的電平取反,便可產生40kHz方波。由于單片機系統的晶振為6M晶振,因而單片機的時間分辨率是2us,所以只能產生半周期為12us或14us的方波信號,頻率分別為41.67kHz和38.46kHz。本系統在編程時選用了后者,讓單片機產生約38.46kHz的方波。
本系統采用三位一體L E D 數碼管顯示所測距離值,如圖(見下頁) 。碼管采用動態掃描顯示,段碼輸出端口為單片機的P1口,位碼輸出端口分別為單片機的P3.2、P3.1、P3.0口,數碼管位驅運用PNP三極管S9012三極管驅動。
步驟是先焊接各個模塊,焊接完每個模塊以后,再進行模塊的單獨測試,以確保在整個系統焊接完能正常的工作,原件安裝完畢后,將寫好程序的AT89C2051機裝到測距板上,通電后將測距板的超聲波頭對著墻面往復移動,看數碼管的顯示結果會不會變化,在測量范圍內能否正常顯示。超聲波發送功率較大時,測量距離遠,則相應的下限值(盲區)應設置為高值。試驗板中的聲速沒有進行溫度補償,聲速值為340m/s。