基于單片機的超聲波測距儀設計
2.5 顯示電路
本設計中采用四位一體共陽極數碼管SM410564作為顯示器件。其非公共端接到單片機的P0口上,公共端接到P2口的P2.0~P2.3四個引腳上,以動態掃描的方式進行掃描。由于P2口的驅動能力有限,因此數碼管的公共端沒有直接接到P2口上,而是通過P2口控制四個三極管的導通與關斷來給數碼管供電的。顯示電路如圖11所示。
3 超聲波測距儀的軟件系統設計
超聲波測距的軟件系統主要包括主程序、外部中斷程序、定時中斷程序,以及需要調用的若干個子程序。
3.1 主程序
主程序流程圖如圖12所示,系統初始化后調用超聲波發射子程序送出一個超聲波脈沖,為了避免超聲波從發射器直接傳送到接收器而引起直射波觸發,延時后,方打開外中斷0接收返回的超聲波信號。主程序檢測到成功接收的標志位后,進入計算子程序,獲得被測物體與測距器之間的距離。

3.2 測溫子程序
測距時,單片機與DS18B20通信經過如下三個步驟:對DS18B20復位、復位之后發送ROM指令、發送RAM指令。由于本設計為單點溫度測量,只用到一片DS18B20,所以,發送的ROM指令為跳過ROM指令(0CCH)。測溫子程序流程圖如圖13所示。
3.3 定時中斷程序
定時中斷程序的作用是判斷發射時間、延時時間和接收時間。在不同的時間間斷內,確保系統內的全局變量S作出相應的變化。定時中斷程序的流程如圖14所示。

4 結論
本文設計了一種基于單片機的超聲波測距儀。設計中采用MAX232對電路進行升壓,提高了超聲換能器的輸出能力,從而提高了測距的距離。采用了紅外接收芯片CX20106A,減少了電路之間的相互干擾,提高了接收信號的靈敏度。同時,設計中采用數字溫度傳感器DS18B20為溫度補償電路,提高了測量精度和智能化程度,并在一定程度上降低了系統成本。本超聲波測距儀經試驗運行良好,性能優良、成本低、能有效改善測量技術,適合于機器人檢測、家具安防、汽車倒車等小距離測量。













評論