<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 用AT89C2051設計超聲波測距儀

          用AT89C2051設計超聲波測距儀

          作者: 時間:2012-03-13 來源:網(wǎng)絡 收藏

          超聲波測距主要應用于倒車雷達、建筑施工工地以及一些工業(yè)現(xiàn)場,例如:液位、井深、管道長度等場合。目前國內(nèi)一般使用專用集成電路設計超聲波測距儀,但是專用集成電路的成本很高,并且沒有顯示,操作使用很不方便。本文介紹一種以AT89C2051或GSM97C2051單片機為核心的低成本、高精度、微型化數(shù)字顯示超聲波測距儀的硬件電路和軟件設計方法。實際使用證明該儀器工作穩(wěn)定,性能良好。

          本文引用地址:http://www.ex-cimer.com/article/171901.htm

          1 超聲波測距原理

          超聲波測距是通過不斷檢測超聲波發(fā)射后遇到障礙物所反射的回波,從而測出發(fā)射和接收回波的時間差t,然后求出距離S=Ct/2,式中的C為超聲波波速。

          由于超聲波也是一種聲波,其聲速C與溫度有關,表1列出了幾種不同溫度下的聲速。在使用時,如果溫度變化不大,則可認為聲速是基本不變的。如果測距精度要求很高,則應通過溫度補償?shù)姆椒右孕U?。聲速確定后,只要測得超聲波往返的時間,即可求得距離。這就是超聲波測距儀的機理。其系統(tǒng)框圖如圖1所示。

          46.jpg

          2 AT89C2051的功能特點

          AT89C2051是一個2k字節(jié)可編程EPROM的高性能微控制器。它與工業(yè)標準MCS-51的指令和引腳兼容,因而是一種功能強大的微控制器,它對很多嵌入式控制應用提供了一個高度靈活有效的解決方案。AT89C2051有以下特點:2k字節(jié)EPROM、128字節(jié)RAM、15根I/O線、2 個16位定時/計數(shù)器、5個向量二級中斷結(jié)構(gòu)、1個全雙向的串行口、并且內(nèi)含精密模擬比較器和片內(nèi)振蕩器,具有4.25V至5.5V的電壓工作范圍和 12MHz/24MHz工作頻率,同時還具有加密陣列的二級程序存儲器加鎖、掉電和時鐘電路等。此外,AT89C2051還支持二種軟件可選的電源節(jié)電方式??臻e時,CPU停止,而讓RAM、定時/計數(shù)器、串行口和中斷系統(tǒng)繼續(xù)工作??傻綦姳4鍾AM的內(nèi)容,但可使振蕩器停振以禁止芯片所有的其它功能直到下一次硬件復位。

          AT89C2051有2個16位計時/計數(shù)器寄存器Timer0t Timer1。作為一個定時器,每個機器周期寄存器增加1,這樣寄存器即可計數(shù)機器周期。因為一個機器周期有12個振蕩器周期,所以計數(shù)率是振蕩器頻率的 1/12。作為一個計數(shù)器,該寄存器在相應的外部輸入腳P3.4/T0和P3.5/T1上出現(xiàn)從1至0的變化時增1。由于需要二個機器周期來辨認一次1到 0的變化,所以最大的計數(shù)率是振蕩器頻率的1/24,可以對外部的輸入端P3.2/INT0和P3.3/INT1編程,便于測量脈沖寬度的門。

          57.jpg

          充分利用AT89C2051的片內(nèi)資源,即可在很少外圍電路的情況下構(gòu)成功能完善的超聲波測距系統(tǒng)。

          3 系統(tǒng)硬件電路設計

          超聲波測距儀的硬件電路如圖2所示。

          58.jpg


          上一頁 1 2 3 4 下一頁

          關鍵詞: 元器件 電子 國外

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();