正文 基於AT89S52單片機的LCD數字測速儀的設計(1 / 1)

行業科技

作者:陳龍梁 欣鈴

在現代工業測量中,轉速的測量顯得非常重要。本文基於AT89S52單片機,利用OPTC光斷續器和LCDl602液晶顯示屏,對數字測速儀進行設計。

1 硬件結構設計

本係統設計分為主控製模塊、電源電路、LCD顯示模塊、信號輸入模塊、晶振電路、複位電路幾個模塊,係統結構框圖如圖1所示。其中主模塊采用AT89S52單片機,信號輸入主要采用OPTC光斷續器。

(1)AT89$52單片機。AT89S52單片機是一種低功耗、高性能CMOS 8位微控製器,具有8K的係統可編程Flash存儲器。設計采用AT89S52作為係統的控製芯片,它的優點是體積小、抗幹擾能力強、價格低廉、可靠性高、靈活性好、開發較為容易。

(2)OPTC光斷續器。OPTC光斷續器即光電開關。其工作原理是利用被檢測物對光束的遮擋或反射,由同步回路選通電路,從而檢測物體的有無。物體不限於金屬,所有能反射光線的物體均可被檢測。將其輸入電流在發射器上轉換為光信號射出,接收器再根據接收到的光線的強弱或有無對目標物體進行探測。多數選用波光接近可見光的紅外線光波型。

光電開關可分為:對射式光電開關和槽式光電開關。設計采用對射式光電開關,這種光斷續器具有下列特點:體積小、可靠性高,外圍電路少,能與TTL、LSTYL、CMOS器件直接連接,工作電壓範圍大(Vcc=4.5~16V)。

2 硬件工作原理

電路以AT89S52芯片為核心,充分利用單片機的運算及其控製功能,並采用主控模塊、信號輸入模塊、電源電路、複位電路、晶振電路等各模塊,通過係統化LCD顯示模塊實時顯示所測速度的數值。設計以OPTC光斷續器作為信號源,OPTC光斷續器將發光部分的GaAs紅外光二極管和感光部分的光電二極管以及信號處理電路集成在一塊芯片上。當輪子轉動一周時,OPTC光斷續器則產生一個感應信號,再將產生的感應信號轉換成為數字信號輸入單片機中,再經過數據的運算處理後便得到該輪子的實際速度。

3 程序流程圖

主程序流程圖如圖2所示。設計以AT89S52芯片為核心,充分地利用單片機的運算及其控製功能,選擇設置單片機的定時器1的工作方式,利用中斷優先順序,把LCDl602初始化,從而使LCDl602清屏和設置LCDl602的工作方式。當OPTC光斷續器每接收一個低電平,即輪子每轉一圈所產生的低電平,觸發單片機外部中斷定時器1啟動,從而產生一個外部中斷信號。同時也計算下一次外部中斷到來前的時間間隔,即測量每個周期的時間。該設計采用多倍周期取平均值的方法精確每個周期的時間。根據一個周期的時間與速度的關係將測量到的周期時間轉化成轉速數據。再將采集到的轉速數據通過單片機顯示在LCDl602液晶顯示模塊上。

4 仿真過程

設計完硬件電路之後,用Proteus軟件進行仿真。Proteus不僅具有其它EDA工具軟件的仿真功能,還是目前最流行的仿真單片機及外圍器件的工具。仿真的具體步驟如下:

(1)創建一個新的Proteus仿真工程並保存;(2)查找並放置元件。在Proteus軟件的元件庫裏找出AT89S52、OPTO光斷續器、LCDl602、排阻、電阻、晶振、電容、按鍵等元件,並分別放置在合適的位置;(3)連線和放置網絡。將元件和元件對應的管腳用導線連接,走線麻煩的則放置網絡標簽;(4)用Keil軟件編譯已經寫好的程序並生成一個“HEX”格式的文件。將生成的HEX格式文件導入到Proteus軟件上的AT89S52單片機上;(5)運行仿真。點擊按下F5按鍵,進行仿真。(6)將仿真通過的仿真文件保存。

5 調試結果及故障排除

按照仿真結果和設定方案進行焊接與檢測。但做出成品後發現OPTC的靈敏度不高,不能很好的根據速度的變化而進行變化。由於缺乏經驗,做設計的時候隻按照設計方案,沒有很好地列出可能出現的問題和解決方法。所以當將程序燒人焊接完成的芯片後,進行了一次檢測,發現OPTC光斷續器的靈敏度不高,不能很好的跟隨速度數值變化而跟隨變化。用仿真圖試著將各參數的數值進行適當的變化,最終發現是連接OPTC光斷續器的電阻數值的問題。通過在實物上更換不同電阻數值的電阻(比原電阻數值小),終於在接入1K電阻的時候能夠更好的增大反射電流,提高OPTC光斷續器的靈敏度,從而達到預期的目標。

6 結論

本文設計了一種基於單片機和光電編碼器的測量轉速的LCD數字顯示裝置,該係統結構緊湊、檢測速度快、抗幹擾能力強、工作穩定可靠,達到了設計的目的和要求。