基于AT89C52的超聲波測距儀的設計方案
系統(tǒng)硬件設計
本系統(tǒng)采用AT89C52單片機作為主控制器,使用3位數(shù)碼管作為系統(tǒng)顯示屏,超聲波發(fā)射驅動需要的40 kHz脈沖由單片機P0.0發(fā)出,使用定時器進行計時和控制,超聲波接收使用CX20106A作為接收主控芯片,使用DS18B20作為溫度傳感器進行溫度校正。超聲波測距器的系統(tǒng)原理圖如圖2所示。
圖2 系統(tǒng)設計原理圖
2.1 超聲波的發(fā)射電路設計
超聲波發(fā)送模塊是由超聲波發(fā)射探頭組成的,單片機的P0.0端口直接發(fā)送40 kHz的信號,使用9012三極管做為驅動放大,驅動壓電晶片超聲波換能器產(chǎn)生超聲波,超聲波發(fā)射電路如圖3所示。超聲波發(fā)射子程序的流程是,發(fā)射時首先裝填計時器,并且開始計時,當超聲波發(fā)射完畢時,定時器計時完畢,并且重新裝填等待下次發(fā)射。
圖3 超聲波發(fā)射電路
2.2 超聲波接收電路設計
在接收電路中使用了紅外線接收處理芯片CX20106A,因為它處理的是38 kHz的紅外信號,而40 kHz的超聲波信號和它比較接近,并且CX20106A芯片具有很強的抗干擾能力,這個芯片的外圍電路很簡單而且通過外圍電阻調節(jié)它的中心處理頻率,通過改變外圍電路電容的大小也可以改變接收電路靈敏度和抗干擾能力。
經(jīng)過試驗后發(fā)現(xiàn)用單片機發(fā)40 kHz信號與使用CX20106A的電路搭配更加簡單合理,使得時間的計算更為精確。
該系統(tǒng)的超聲波接收模塊是由超聲波接收探頭和紅外線接收處理芯片CX20106A組成。如圖4所示。超聲波接收子程序的流程是,利用INT0中斷檢測回波信號,若有回波信號(INT0口低電平)就關閉外部中斷,同時停止計時器的計時,將測距成功標志位標記為1(測距成功),同時提取時間值,計算待測距離,保存最終結果后打開外部中斷,等待下次測量。
圖4 超聲波接收電路
評論