基于52單片機來控制24C02保存數據,實現實時速度以及總里程
簡易數字里程表作為測量的一大輔助工具也隨著這個需求而面世,其功能也逐漸從單一的里程顯示發展到速度、時間顯示。本設計采用了MCS-51系列單片機設計一種體積小、操作簡單的便攜式自行車的速度里程表,它能自動地顯示當前自行車行駛的里程及速度。 本課題主要任務是利用霍爾元件、單片機等部件設計一個可用1602液晶顯示里程和速度。本文主要介紹了自行車的速度里程表的設計思想、電路原理和元件的選擇等內容,整體上分為硬件部分設計和軟件部分設計。 具體的硬件電路包括STC89C52單片機的外圍電路以及液晶顯示電路等。 軟件設計包括:芯片的初始化程序、定時中斷子程序、顯示子程序等,軟件采用C語言編寫。本文檔主要闡述一種基于霍爾元件的自行車速度里程表的設計。以 STC89C52單片機為核心,A44E 霍爾傳感器測轉數,實現對自行車里程/速度的測量,采用1602LCD顯示自行車的里程數及速度。硬件部分利用霍爾元件將自行車每轉一圈的脈沖數傳入單片機系統,然后單片機系統將信號經過處理送顯示。軟件部分用C語言進行編程,采用模塊化設計思想。該系統硬件電路簡單,子程序具有通用性,完全符合設計要求。
二、方案論證 本設計的任務是:以通用MCS-51單片機為處理核心,用傳感器將車輪的轉數轉換為電脈沖,進行處理后送入單片機。里程及速度的測量,是經過MCS-51的定時/計數器測出單位時間的脈沖數,再經過單片機的計算得出,其結果通過LED顯示器顯示出來。 本系統總體思路如下:假定輪圈的半徑為R,在輪圈上安裝a個永久磁鐵,經綜合分析,本設計中取a=16。當輪子每轉一圈,通過開關型霍爾元件傳感器采集到16個脈沖信號,并從引腳P3.4定時計數器1端輸入,傳感器每獲取一個脈沖信號即對系統提供一次計數中斷。通過定時器0的定時中斷,將每秒采集到的脈沖數 要求達到的各項指標及實現方法如下: 1. 利用霍爾傳感器產生里程數的脈沖信號。 2. 對脈沖信號進行計數。 實現:利用單片機自帶的計數器T1對霍爾傳感器脈沖信號進行計數。 3. 對數據進行處理,要求用LED顯示里程總數和即時速度,并且將里程數存入24c02c中。 實現:利用軟件編程,對數據進行處理得到需要的數值。 最終實現目標:自行車的速度里程表具有里程、速度測試與顯示功能,采用單片機作控制,顯示電路可顯示里程及速度。           圖1 系統框圖 三、方案設計 1.時鐘電路 STC89C51系列是1T的8051單片機,STC89C51系統時鐘兼容傳統8051。系列單片機有兩個時鐘源:內部R/C振蕩時鐘和外部晶體時鐘。 在單片機內有一個高增益反相放大器,反相放大器的輸入端為XTAL,輸出端為XTAL2,由該放大器、晶振和兩個33PF的電容構成的振蕩電路做單片機的時鐘電路,如圖2所示。 
圖2 時鐘電路 2.復位電路 復位電路原理是單片機RST引腳接收到2us以上電平信號,只要保證電容的充放電時間大于2us,即可復位,所以電路中的電容是可改變的,按鍵按下,電容處于一個短路電路中,電容釋放所有的電能,電阻兩端電壓升高系統復位。且 振蕩器穩定后,如果RST引腳上有一個高電平并維持2個機器周期(24個振蕩周 期)以上,則CPU就可以響應并將系統復位。單片機系統的復位方式有:手動按鈕復位和上電復位,如圖3所示。 圖3 復位電路 3.24c02c 24c02c是一個2K位串行EEPROM,內部含有256個8位字節。2C02c持2I2總線傳輸協議。數據傳送是由產生串行時鐘和所有起始停止信號的主器件控制的。主器件和從器件都可以作為發送器和接收器,由主器件控制傳送數據(發送或接收)的模式。元器件圖如圖4所示。 
圖4 24c02c元器件圖 我們對引腳的功能做一個簡單的解釋: VCC,GND:電源、地引腳 A2A1A0:地址引腳 SCLK、SDA:通信地址 WP:寫保護地址 4.顯示模塊 顯示模塊主要由LCD1602,上拉電阻組成,其電路圖如圖5所示。 圖5 液晶顯示模塊圖
1602引腳說明表格如下:
液晶引腳與單片機連接: 第1腳:VSS接地。 第2腳:VDD接5V正電源。 第3腳:VO接3K的電位器調整對比度。 第4腳:RS為寄存器選擇。 第5腳:R/W為讀寫信號線。 第6腳:E端為使能端,當E端由高電平跳變成低電平時,液晶模塊執行命令。第7~14腳:D0~D7為8位雙向數據線接單片機P0口。 第15腳:背光源正極接電源。 第16腳:背光源負極接地。 4. 霍爾傳感器的測量原理 霍爾傳感器是利用霍爾效應制成的一種磁敏傳感器。在置于磁場中的導體或半導體通入電流I,若電流垂直磁場B,則在與磁場和電流都垂直的方向上會出現一個電勢差Uh,這種現象稱為霍爾效應。利用霍爾效應制成的元件稱為霍爾元件。因為它具有結構簡單、頻率響應寬、靈敏度高、測量線性范圍大、抗干擾能力強以及體積小、使用壽命長等一系列特點,因此被廣泛應用于測量、自動控制及信息處理等領域,如圖6所示。 
圖6 霍爾傳感器 1.主程序 通過定時器0中斷定時1s來計算1s內定時計數器1的計數次數,通過對計數值的計算,得到瞬時速度,以及通過速度來刷新里程數,并通過1602顯示出來,其主程序框圖如圖7所示。
圖7 主程序流程圖 2.顯示流程圖 該子程序用LCD動態掃描顯示方式。先將單片機的P2.2口連接使能端口E。接著將單片機的P2.0口連接數據/命令選擇端RS,P0口連接數據端D0~D7,然后將要顯示的數字的值發送給P0口。然后調用延時,接著將P2.2口置0,P2.0口置1,寫指令,將P2.2口置1,P2.0口置1,寫數據,直到要顯示的數字全部顯示在液晶上。顯示流程圖如圖8所示。 
 
 
 
 
圖8 顯示流程圖
3.速度及里程處理流程圖 速度及里程數的確定,由定時器0產生1S定時在定時期間,定時計數器1讀取中斷次數并計數,定時器0中斷發生,讀取定時計數器的計數值進行計算,對于產生的計數值進行顯示前的計算及處理,其程序框圖如圖9所示。
   
 

圖9 速度和里程處理框圖 4 仿真結果
圖10 仿真結果Ⅰ
圖11 仿真結果Ⅱ 測試速度結果與理論值(單位:km/h) 表1 測試結果與理論值 誤差分析:定時誤差,定時器0定時并不是準確的定時一秒,而是少于一秒,導致采集的脈沖數少于準確的脈沖數,其次計算誤差也是存在。 基本滿足設計項目要求,在速度小于200km/h的時候,測量誤差相對較小。 五、設計體會 通過本次設計,使我對單片機知識和理解更一步加深了,掌握了簡易數字里程表的設計,組裝和調試方法。并且使我更加熟練的應用仿真軟件,讓我學到了如何運用軟件測試電路的可行性,并且對電路的調試改進都有一個很大的提高。 這個過程中我遇到了很多困難,比如如何運用仿真軟件畫圖,如何組織一些比較專業的語言,以及上網查閱資料。雖說費勁,但是樂趣也不少。通過這次設計,我們了解到平時知識的積累真的很重要,在遇到困難時一定要向認真思考,查閱相關資料,不可盲目退縮,努力后就一定會有收獲。 這次設計收獲頗豐,不僅是對自己個人能力的提高,也讓我認識到了自己的局限,通過這次的設計為以后的學習奠定了一個更好的基礎。 參考文獻 - 李朝青. 單片機原理及接口技術. 北京航空航天大學出版社, 1994
- 張毅剛, 劉杰. MCS-51單片機原理及應用. 哈爾濱工業大學出版社,2004
- 樓然苗, 李光飛. 51系列單片機設計實例. 北京航空航天大學出版社, 2006
- 松井邦彥, 梁瑞林. 傳感器應用技術141例. 科學出版社, 2006
- 張洪潤, 張亞凡. 傳感器技術與應用教程. 清華大學出版社, 2005
- 劉燦軍. 實用傳感器. 國防工業出版社, 2004
- 何希才. 傳感器及其應用. 國防工業出版社, 2001
- 刁文興. 自行車電子里程表的初步設計. 南京工業職業技術學院學報, 2004
- 安宗權. 電動電子車速里程表分頻電路設計. 自動化與儀器儀表, 2001
- 閻煥忠, 王長濤, 馬斌. 單片機控制里程轉速表的設計. 沈陽建筑工程學院學報(自然科學版),2002
- 謝自美. 電子線路設計.實驗.測試[M].武漢:華中科技大學出版社,2000
附錄Ⅰ 總電路圖 
附錄Ⅱ 元器件清單
以上內容的Word格式文檔51黑附件下載:
綜合課設報告.docx
(387.81 KB, 下載次數: 30)
2018-4-9 12:59 上傳
點擊文件名下載附件
|