畢業(yè)設計論文-分自行車里程監(jiān)測儀的嵌入式全套設計_第1頁
畢業(yè)設計論文-分自行車里程監(jiān)測儀的嵌入式全套設計_第2頁
畢業(yè)設計論文-分自行車里程監(jiān)測儀的嵌入式全套設計_第3頁
畢業(yè)設計論文-分自行車里程監(jiān)測儀的嵌入式全套設計_第4頁
畢業(yè)設計論文-分自行車里程監(jiān)測儀的嵌入式全套設計_第5頁
已閱讀5頁,還剩42頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、自行車里程監(jiān)測儀的嵌入式設計與實現(xiàn)xx大學2016屆畢業(yè)論文題目:自行車里程監(jiān)測儀的嵌入式設計與實現(xiàn)embedded design and implementation of bicycle mileage monitor姓名:x x x 學號:10214521 學院:不知道 專業(yè):不知道 導師:不知道 時間:2016.4.12 完成時間:2016年4月6日摘 要隨著時代的發(fā)展,我們可以看到,我國的自行車數(shù)量越來越多,其原因就在于,自行車既可以用于娛樂,又可以短途代步,同時也是人們戶外郊游的上佳選擇。因為自行車的方便,簡單易學等特點,如今,基本上所有的人多可以騎自行車了。而人們對于騎車時的一些

2、數(shù)據(jù),例如騎行的速度,騎行的距離等。多還是靠人的長期知識進行粗略的估計,這對科學鍛煉來說是不合適的。所以本設計就旨在設計一款基于c51單片機的自行車里程監(jiān)測儀,實現(xiàn)對自行車車速和里程的監(jiān)測,從而可以讓人們清楚的知道自己現(xiàn)在的騎車狀態(tài),對于鍛煉的人來說,有了這個系統(tǒng),鍛煉可以更加的科學合理。對于普通的游玩騎行的人來說,這個系統(tǒng)也可以幫助人們實時的了解自己的行進距離從而合理的安排出游的時間和目的地。全套設計,加153893706本設計主要實現(xiàn)了:利用c51單片機對自行車的速度和里程進行實時的采集和顯示,同時對騎行速度進行預警提示,設計中包含電路電源設計,程序設計,系統(tǒng)組合,軟件仿真等分部設計。進過

3、前期的學習和設計最終利用stc89c51單片機作為核心控制器件,利用ah3503開關型霍爾傳感器進行數(shù)據(jù)采集,利用lcd1602作為顯示器件,led和蜂鳴器作為提示元素,獨立按鍵作為復位清除按鍵。完成了本次設計。經(jīng)過前期的仿真和后期的實物檢驗可以得知本設計是完整可靠的系統(tǒng)。進過實際的測試可以得知本設計不但具有研究意義,同時具有市場推廣的潛力,如果能進行后續(xù)的功能改進和提升,用于市場推廣是完全可行的。關鍵詞:c51;單片機;ah3503;霍爾元件- i -abstract with the development of the times, we can see, growing number

4、of bicycles in our country, and the reason is, the bicycle can be used for entertainment, and walking a short distance, and is also one of the outdoor picnic is an excellent choice. because the bicycle is convenient, easy to learn and so on, now, basically all the people can ride a bicycle. and some

5、 of the data, for example, when people ride a bike, such as the speed of riding, riding distance, etc. more than a rough estimate of the long-term knowledge of people, which is not suitable for scientific exercise. so this design aims to design a based on c51 microcontroller bicycle mileage monitori

6、ng, monitoring of bicycle speed and mileage, so that people can clearly know her ride now, for people who exercise. with this system, the exercise can be more scientific and reasonable. for ordinary people who play riding, this system can also help people to understand their own travel distance in r

7、eal time and thus reasonable arrangements for travel time and destination.this design mainly realizes the c51 microcontroller on the bicycle speed and mileage of real-time acquisition and display, at the same time, the riding speed warn, design includes power supply circuit design, program design, s

8、ystem composition, software simulation design division.study and design of pre eventually use stc89c51 microcontroller as the core control device, using ah3503 linear hall sensor data collection, using the lcd1602 display the, led and buzzer as the prompt element, independent keys as a reset to remo

9、ve the keys. completed the design. after the physical test and simulation during late prophase can this system design is complete and reliable.the actual test can get chihpen design not only has the significance of the research, also has the potential for market promotion, if we can improve and upgr

10、ade the following function for market promotion is feasible.key words: c51; single chip microcomputer; ah3503; holzer element目 錄第1章 緒 論11.1 設計的目的11.2 國內外研究現(xiàn)狀11.3 設計的任務和內容2第2章 系統(tǒng)的總體設計方案32.1 主要任務以及思路32.2 系統(tǒng)的總體組成32.3 系統(tǒng)的硬件組成42.4 系統(tǒng)的軟件組成5第3章 控制器件選擇63.1 單片機的組成和特點6運算器6控制器6主要寄存器73.2 stc89c51單片機介紹83.2.1 stc

11、89c51單片機特點93.3 stc89c51單片機資源介紹103.4 stc89c51單片機定時器介紹123.5 stc89c51單片機外部中斷介紹12第4章 數(shù)據(jù)采集器選擇144.1 可用傳感器的介紹和對比144.2 霍爾傳感器介紹154.2.1 霍爾傳感器原理154.2.2 霍爾傳感器分類154.3 ah3503集成線性型霍爾傳感器介紹164.4 ah3503霍爾傳感器的檢測原理17第5章 系統(tǒng)電路設計185.1 stc89c51單片機系統(tǒng)電路195.1.1復位電路的設計195.1.2 stc89c51單片機的晶振電路205.2 霍爾傳感器電路215.3 系統(tǒng)電路的設計215.4 液晶顯

12、示電路的設計225.4.1 lcd1602的特點225.4.2 lcd1602的功能參數(shù)表245.4.3 lcd1602引腳介紹255.5 蜂鳴器和led報警電路的設計25第6章 單片機軟件設計276.1 系統(tǒng)軟件設計所使用的編程環(huán)境介紹276.2 主程序模塊設計276.3 定時中斷函數(shù)的設計286.4 計算函數(shù)設計286.5 顯示函數(shù)程序流程296.6 蜂鳴器和led預警流程圖296.7 數(shù)據(jù)采集流程圖306.7 按鍵清除流程圖30第7章 系統(tǒng)仿真327.1 仿真軟件介紹327.2 本次設計的仿真圖設計33主要參考文獻34附 錄 一 設計電路圖35附 錄 二 仿真電路圖35附 錄 三 系統(tǒng)源

13、程序36致 謝45自行車里程監(jiān)測儀的嵌入式設計與實現(xiàn)第1章 緒 論人們總是對和自己相關的物理數(shù)據(jù)有著極高的求知欲望,例如步行數(shù)步行速度等都希望可以實時的了解,因此產(chǎn)生了很多的計步軟件,特別是現(xiàn)在大量出現(xiàn)的的手環(huán)。但是對于人們使用了多年的自行車,目前還沒有很多的產(chǎn)品可以做到實時的顯示騎行者的速度和騎行的總里程,這對現(xiàn)在的社會發(fā)來來說是不相符合的。因此本設計就著眼于此,開發(fā)了一套可以實時監(jiān)測自行車里程和測速的系統(tǒng)。本設計中采用了宏晶科技有限公司生產(chǎn)的stc89c51單片機作為系統(tǒng)的控制器件,利用ah3503開關型霍爾傳感器作為車輪的圈數(shù)采集器件。在單片機采集到車輪的圈數(shù)之后,根據(jù)車輪的直徑計算出實

14、時車速,同時對行駛的總里程進行累加記錄。在得出數(shù)據(jù)之后,通過通用性lcd1602液晶顯示器進行數(shù)據(jù)的顯示。在顯示之后還要對計數(shù)的數(shù)據(jù)進行一個判斷,如果判斷到速度過大了,也就是人的騎行速度過快的時候,就啟動蜂鳴器和led進行提示,避免騎行者在不經(jīng)意間速度過快而導致危險情況的發(fā)生。1.1 設計的目的對于自行車的實時車速和騎行的總里程進行實時的監(jiān)測,這對于人們實時的了解自己相關事務的數(shù)據(jù)是有必要的作用的,很多人在自己騎行的時候,都是靠著以往的經(jīng)驗來進行判斷,比如車速,有時候我們就不能很好的判斷出目前自己的車速是多少,就可能在疲憊的情況下發(fā)生超速的情況。一旦速度過快,作為非機動的一方,在騎行的時候就很

15、危險。同時了解我們的騎行距離也對我們規(guī)劃出行時間和目的地是有重要的作用的。我們可以通過實時的里程數(shù)來確認自己和目的地的距離以及和回去的目的地距離。1.2 國內外研究現(xiàn)狀目前國內外也有一些自行車碼表出現(xiàn),其大概分類有三種:有線方式碼表、無線方式碼表、踏頻檢測方式碼表。有線碼表通過安裝的磁體傳感器獲取人的騎行數(shù)據(jù),然后通過有線的方式傳輸?shù)絾纹瑱C進行顯示;無線碼表在獲取數(shù)據(jù)的時候和有線碼表采用的相同方式,只不過傳輸數(shù)據(jù)采用的是無線發(fā)送的方式進行;踏頻碼表在獲取數(shù)據(jù)的時候則是通過人對自行車踏板的踩踏來實現(xiàn)數(shù)據(jù)的采集,因為目前很多車都是可變速的,所以單獨采集踏頻還不夠,還需要得到洗輪比,這種設計方式顯得

16、復雜,而且效果不是很好。目前國內外生成自行車碼表的主要有:國外品牌德國的西格瑪,日本的貓眼碼表。柏奧boao碼表。國內品牌因為質量和國外有較大差距,所以產(chǎn)量和使用量都不大1.3 設計的任務和內容在本次設計中采用了深圳宏晶科技有限公司生產(chǎn)的stc89c51單片機作為系統(tǒng)控制芯片,利用ah3503開關型霍爾傳感器來獲取車輪的圈數(shù),在單機獲得數(shù)據(jù)進行計算后,利用lcd1602進行實時的顯示,同時在綜合判斷目前的車速后,與設定的預警車速進行比較,如果超過了預定的車速,那就使用蜂鳴器和led進行提醒,直到恢復了正常的騎行速度。設計中使用了stc89c51單片機,ah3503線性傳感器,lcd1602液晶

17、顯示器,蜂鳴器,led燈,電源穩(wěn)壓芯片,獨立按鍵,以及電路必須的基本元器件。設計主要包括了:整個系統(tǒng)的完整設計,電路的設計,仿真電路的設計,程序軟件的設計。這幾個部分是完成本次設計的幾個必須步驟和內容。13第2章 系統(tǒng)的總體設計方案2.1 主要任務以及思路本設計主要任務為:采用宏晶科技生產(chǎn)的stc89c51單片機作為系統(tǒng)的大腦,利用ah3503開關型霍爾傳感器來獲取車輪的圈數(shù),在霍爾傳感器輸出脈沖數(shù)據(jù)之后將數(shù)據(jù)送到單片機的外部中斷口進行數(shù)據(jù)的采集,在單機獲得數(shù)據(jù)進行計算后,利用lcd1602進行實時的顯示,同時在綜合判斷目前的車速后,與設定的預警車速進行比較,如果超過了預定的車速,那就使用蜂鳴

18、器和led進行提醒,直到恢復了正常的騎行速度。本設計的主體思路如下:首先從理論上分析,我們要計算出自行車的速度和行車里程,我們就需要知道車輪的周長,以及在我們的采集時間內,車輪轉過的圈數(shù)。我們可以令車輪的直徑為d,通過圓周率公式:l=*d,就可以計算出車輪的周長。我們再假設轉過的圈數(shù)為n,那么行駛的速度v=s/t就有:v=n*d/t;總的里程就為s+=v*t;經(jīng)過分析后我們可以得知,我們只需要采集到n就可以知道所有的數(shù)據(jù)了,因為車的直徑是已經(jīng)知道的。采集時間也是我們可以控制的。所以只需要使用霍爾傳感器獲得脈沖,然后利用單片機的外部中斷0的下降沿觸發(fā)功能進行計數(shù)就可以達到目的。得到數(shù)據(jù)之后,就只

19、需要計算和顯示了,然后進行預設值比較進行報警和提示就可以了。經(jīng)過上面的理論分析,我們可以把設計總結為這樣幾個部分:1. 使用3503霍爾傳感器獲得脈沖數(shù)據(jù)。2. 單片機利用中斷得到脈沖數(shù)。3. 單片機對數(shù)據(jù)進行計算然后顯示。4. 蜂鳴器和led根據(jù)情況進行提示和閃爍提示。進過這樣幾個部分,我們的主要設計目的就可以得到實現(xiàn),至于對數(shù)據(jù)的清除復位,我們就只需要額外增加一個按鍵就可以實現(xiàn)了。2.2 系統(tǒng)的總體組成在前面的理論分析中已經(jīng)可以看出本設計的總體框圖應該是怎么樣的了。其中應該包括核心的控制器件單片機,脈沖的轉換器件霍爾傳感器,數(shù)據(jù)的清除和復位功能所用到的獨立按鍵,用于速度和里程顯示的lcd1

20、602液晶顯示,作為提示和預警的蜂鳴器和led是本設計的幾大組成部分,但是我們還要考慮到系統(tǒng)的供電問題,所以供電設計也應該是系統(tǒng)整體框架設計的一個部分,經(jīng)過前期的設計和思考,我認為本設計的系統(tǒng)框圖應該如下面所示:數(shù)據(jù)獲取數(shù)據(jù)顯示實時提示電源電路單片機完整系統(tǒng)圖2-1 系統(tǒng)的總體組成框圖2.3 系統(tǒng)的硬件組成設計中使用了大量的電子器件,每個器件的選擇和有機組合而形成本設計功能執(zhí)行的物理元素,只有我們合理的安排和設計好每個元器件,我們才能獲得系統(tǒng)有效和正確工作的前提。進過大量的分析和設計,我認為不系統(tǒng)的硬件組成圖應該如下所示:單片機電源電路霍爾傳感器液晶顯示蜂鳴器和led圖2-2 系統(tǒng)的硬件組成框

21、圖2.4 系統(tǒng)的軟件組成通過和硬件相結合考慮,我們能知道本次設計中的軟件應該有哪些部分:獲得脈沖的外部中斷函數(shù),軟件啟動的初始化函數(shù),按鍵清除函數(shù),數(shù)據(jù)計算函數(shù),定時中斷函數(shù),數(shù)據(jù)顯示函數(shù),報警函數(shù)。很明顯,本系統(tǒng)的軟件組成框圖應該如下所示:系統(tǒng)初始化定時采集函數(shù)外部中斷計數(shù)計算顯示提示和預警圖2-3 系統(tǒng)的軟件組成框圖第3章 控制器件選擇要完成本次設計的任務,我們有很多可以選擇的器件。例如單片機,dsp,fpga,plc等等。但是我們在選擇器件的時候要考慮到器件的成本,開發(fā)難度,可靠性,封裝類型等等方面。進過大量的資料查詢和實際測試,本設計最后采用了單片機作為核心的控制器件。單片機也可以稱單

22、片微控制器,它和片上系統(tǒng)不一樣,單片機不但可以進行運算處理,還可以做邏輯控制,其包括了輸入輸出端,片上cpu有的還有專用的乘法器,獨有的存儲單元和dsp運算單元。它的體積小、質量輕、價格便宜、為學習、應用和開發(fā)提供了便利條件。同時,學習使用單片機是了解計算機原理與結構的最佳選擇。目前單片機的發(fā)展已經(jīng)十分成熟,單片的處理位數(shù)從4位到8位,16和32位都有。單片的運行速度也沖以前的幾m到現(xiàn)在的高端單片機可以運行到上百m。3.1 單片機的組成和特點目前主流單片機主要由以下幾個部分組成:運算器運算器由運算部件算術邏輯單元(arithmetic & logical unit,簡稱alu)、算術累加器和結

23、果寄存器等組成。算術邏輯單元alu的作用是將傳入算術邏輯單元的數(shù)據(jù)根據(jù)需求進行數(shù)據(jù)的運算,這個運算可以是常見的加減乘除算術操作,也可以是單片機里面所有的移位和循環(huán)操作,也可以是數(shù)據(jù)的比較例如大小比較。相等比較等。這個運算器和我們常規(guī)理解的運算器不是一個概念。運算器有兩個功能:(1) 執(zhí)行各種算術運算。(2) 執(zhí)行各種邏輯運算,并進行邏輯測試,如零值測試或兩個值的比較。單片機當中運算器的全部操作都是由單片機的控制器cpu發(fā)出的控制信號來進行指揮的??刂菩盘柨梢允沁\算控制,也可以是判決控制。控制器控制器包括了:指令寄存器、程序計數(shù)器、指令譯碼器、操作控制器和時序發(fā)生器等部分,控制器是單片機當中發(fā)布

24、命令的機構,負責整個單片機系統(tǒng)的所有操作控制,不管是運算還是決策,都是由控制進行的。其主要功能有:(1) 從內存中取出一條指令,并指出下一條指令在內存中的位置。(2) 對指令進行譯碼和測試,并產(chǎn)生相應的操作控制信號,以便于執(zhí)行規(guī)定的動作。(3) 指揮并控制cpu、內存和輸入輸出設備之間數(shù)據(jù)流動的方向。單片機當中有三種總線:控制總線,數(shù)據(jù)總線和地址總線。這三個總線通過內部特有的線路和微處理器相互連接起來,其中,微處理器可以通過三個總線和外部接口相互連接起來,還可以實現(xiàn)微處理對各個算術器和存儲器的信息交流。主要寄存器(1)累加器a單片機當中的累加器是一個高頻使用的寄存器,其主要是負責臨時的數(shù)據(jù)存儲

25、,包括運算前的存儲和運算完成之后的結果都可以保存在這個寄存器當中。(2)數(shù)據(jù)寄存器dr數(shù)據(jù)寄存器器,從名字上就可以知道,此寄存器主要是數(shù)據(jù)暫時存儲的寄存器,但是數(shù)據(jù)寄存器不但有數(shù)據(jù)的緩存功能,還可以是指令的暫時存儲,在翻譯出來的指令在送往處理的時候,可以放在這個寄存器中進行暫時存儲。(3)指令寄存器ir和指令譯碼器id指令包括操作碼和操作數(shù)。單片機要執(zhí)行程序給定的指令。就必須要知道這條指令對應的操作碼,所以單片機中有了指令譯碼器和指令操作寄存器。其中指令翻譯由指令譯碼器進行,在翻譯完成之后就將數(shù)據(jù)交給指令寄存器進行存儲,然后通過數(shù)據(jù)控制總線將操作指令送到相應的執(zhí)行機構當中。這個操作是一條一條進

26、行的。(4)程序計數(shù)器pc單片機運行的程序需要使用一個單獨的計數(shù)器進行存儲,這樣才可以保證單片機的運行有序的進行。在單片機復位的時候就將這個存儲器復位從0開始,逐步進行加一。在每一個指令操作結束之后,這個計數(shù)器就自動加1,然后到指令存儲器中去取對應的下一步操作就可以了,所以程序計數(shù)器保證了單片機的有序運行。(5)地址寄存器ar地址再單片機中是很重要的一個概念,不但是每個存儲器有地址,每個數(shù)據(jù)有地址,甚至每個外部接口都是有對應的地址的,在我們使用匯編進行程序設計的時候,我們就需要查手冊了解每個有效資源的地址,所以在我們進行操作的時候,地址寄存器是很有必要的。通過這個寄存器就可以將需要的地址數(shù)據(jù)發(fā)

27、送到對應的存儲器中。上面提到的數(shù)據(jù)儲存和計數(shù)器還有地址寄存器都是為了給單片機當中很重要的一個器件cpu提供服務的,cpu作為中央控制器,需要各個外設對其進行服務,因為cpu是一個獨立的運算器,本身是不具有和外部資源交互的能力的。下圖就是單片機的內部結構和單片機主要資源:圖3-1 單片機的片上資源框圖3.2 stc89c51單片機介紹stc89c51是一種使用兼容8051核的isp(in system programming)在系統(tǒng)可編程芯片,其可以工作的時鐘頻率在幾mhz到幾十mhz內,其內部的flash存儲器是專用的程序存儲器,大小根據(jù)不同的系列是有所不同的,器件完全兼容標準的mcs-51指

28、令系統(tǒng)及c51引腳結構,芯片內集成了通用8位中央處理器和isp flash存儲單元,具有在系統(tǒng)可編程(isp)特性,在使用專用的單片機程序下載程序通過ttl電平方式就可以將程序下載到單片機中,8051單片機的時鐘周期有12t和6t現(xiàn)在新型的還有1t的。但是時鐘周期并不影響單片機的算術和邏輯兼容性。只是處理器的單周期時間不一樣而已。stc89c51單片機的實物如下圖所示:圖3-2 stc89c51的dip40封裝實物圖3.2.1 stc89c51單片機特點(1)增強型1t 流水線/精簡指令集結構8051 cpu(2)(5v單片機)/ 2.0v-3.8v (3v 單片機(3),相當于普通8051

29、的0420mhz.實際工作頻率可達48mhz.(4)用戶應用程序空間12k / 10k / 8k / 6k / 4k / 2k字節(jié)(5)片上集成512 字節(jié)ram(6)通用i/o 口(27/23個),復位后為:準雙向口/ 弱上拉(普通8051 傳統(tǒng)i/o 口)單片機的通用io口有成四種模式可以選擇分別為:弱上拉,強上拉, 高阻,開漏這些標準輸入輸出口狀態(tài)。每個通用i/o 口驅動能力在單獨使用的時候都可達到20ma,但是對于51系列單片機來說整個芯片的最大輸入輸出電流不應該超過55ma(7)isp(在系統(tǒng)可編程)/iap(在應用可編程),無需專用編程器可通過串口(p3.0/p3.1)直接下載用戶

30、程序,數(shù)秒即可完成一片(8)eeprom功能(9)看門狗(10)內部集成max810 專用復位電路(外部晶體20m 以下時,可省外部復位電路)(11)時鐘源:普通的8051單片機的外部時鐘源可以是使用外部晶振,也可以是外部的時鐘芯片提供(也可以是信號發(fā)生器提供),在外部時鐘信號通過單片的xtal1引腳送入單片機之后,單片機內部的反向放大器可以對信號進行放大整定。從而提供給單片的內部時鐘需求使用。(12)有2個16 位定時器/ 計數(shù)器(13)外部中斷2 路,下降沿中斷或低電平觸發(fā)中斷,power down 模式可由外部中斷低電平觸發(fā)中斷方式喚醒(14)pwm( 4 路)/ p c a(可編程計數(shù)

31、器陣列),也可用來再實現(xiàn)4個定時器或4個外部中斷(上升沿中斷/ 下降沿中斷均可支持)(15)stc89cc516ad具有adc功能。10 位精度adc,共8 路(16)通用異步串行口(uart)(17)spi同步通信口,主模式/ 從模式(18)工作溫度范圍:0 -75/ -40 -+85(19)封裝:pdip-28,sop-28,pdip-20,sop-20,plcc-32,tssop-20(超小封裝,定貨)3.3 stc89c51單片機資源介紹本設計中使用的是stc89c51的dip40封裝,也就是常見的雙列直插式封裝,具體的引腳資源圖如下圖所示: 圖3-3 stc89c51單片機引腳資源圖

32、在上圖中各個引腳的功能如下:vcc:單片機的供電正電壓接口。gnd:單片機的供電地接口。p0口:p0口為雙向漏級開路的8位雙向i/o數(shù)據(jù)口,其中每個引腳可以承受8ttl的門電流。在p0口引腳寫1時,對應的引腳就被被定義為高阻輸入。在常規(guī)的使用過程中p0口應該配合外部的上拉或者下拉電阻進行使用,這樣才能提供正確的ttl電平的邏輯電壓。p1口:除了p0不提供內部的上拉電阻之外,51系列單片機的其余幾個數(shù)據(jù)口都是提供了內部上拉電阻的。在設計的時候,就可以省去外部的上拉或者下來電阻了。同意,p1也是雙向8位數(shù)據(jù)口。p1口緩沖器能接收輸出4ttl門電流。p2口:和p1口一樣。p2口也是內部提供上拉電阻的

33、雙向8位i/o口,p2口可以接收和輸出4個ttl門電流,p2和p1一樣,在程序寫入1的時候,對應的引腳都是進入可檢測狀態(tài),既可以作為輸出電壓,同時也可以被外部的電壓拉低,例如我們常用的按鍵功能就是這一個功能的體現(xiàn)。同時在作為flash檢測的時候,p2和p1稍有不同,一個是作為控制線,一個數(shù)作為數(shù)據(jù)的檢測線。p3口:p3同樣是一組內部提供上拉電阻的,雙向8位數(shù)據(jù)輸入輸出口。其各個引腳同樣可以承受輸入和輸出4個ttl門電流。其普通功能和p2 一樣,在希爾高電平1之后都是可以作為輸出和檢測的。在實際使用中,基礎功能都是一樣的,同時p3不作為flash編程的控制或者數(shù)據(jù)引腳但是p3是編程的指示引腳,在

34、進行flash編程的時候進行l(wèi)ed閃爍提示和校驗。同時p3口還提供了一些特殊的第二功能。stc89c51單片機的p3口一些特殊功能,如下表所示:表3.1 p3口引腳的特殊功能引腳第二功能信號名稱p3.0rxd串行數(shù)據(jù)接收p3.1txd串行數(shù)據(jù)接收p3.2外部中斷0申請p3.3外部中斷1申請p3.4t0定時/計數(shù)器0的外部輸入p3.5t1定時/計數(shù)器1的外部輸入p3.6外部ram寫選通p3.7外部ram讀選通rest:單片機的復位輸入引腳。當振蕩器復位單片機的同時,需要保持rest引腳至少兩個機器周期的高電平時間。ale:地址鎖存允許控制端。當需要訪問單片機外部存儲器時,該引腳用于輸出控制信號,

35、從而控制外部的存儲器。達到選擇和控制的目的。同時,該引腳在未被禁止使用的情況下是在不斷輸出脈沖的,脈沖的頻率根據(jù)外部振蕩器的不同而不同。本身不具有頻率調節(jié)的功能。這個頻率是外部振蕩器頻率的六分之一頻率。是穩(wěn)定跟隨的。psen:外部程序訪問信號端,通俗的解釋就是在我們使用外部的存儲器的時候們在外部存儲器進行數(shù)據(jù)訪問的時候,該引腳就會輸出對應的有效信號。在訪問完畢之后就會停止信號的輸出,值得注意的是,這個信號和常規(guī)的一對一信號不同。該引腳的信號是一次產(chǎn)生雙倍的有用信號,也就是說,如果一次有效訪問,在訪問期間會輸出兩個脈沖信號。ea:外部允許端口。低電平使能。上電為若下拉,所以我們在不需要訪問外部的

36、存儲器的時候需要將這個引腳外接為高電平。不然就會默認進入外部訪問的功能,但是如果沒有外部存儲器,單片機就會進入懸空狀態(tài)。x1:單片機內部放大器的輸入端。x2:單片機內部放大器的輸出端。x1和x2分別為反向放大器的輸入引腳和輸出引腳。該反向放大器可以配置為片內振蕩。外部振蕩,其中使用外部振蕩的時候,石晶振蕩和陶瓷振蕩均可采用。同時如果采用的是外部時鐘信號輸入單片機,例如使用信號源驅動單片機,這個時候,單片機的x1腳就應該接信號,而x2就只需要懸空就行了,因為不需要輸出驅動外部晶體了。3.4 stc89c51單片機定時器介紹stc89c51單片機定時器的工作由兩個特殊功能寄存器控制。tmod寄存器

37、用于設置定時器的工作方式;tcon寄存器用于控制定時器的啟動和中斷請求。通過一定的組合就可以得到我們需要的工作方式了,下面是51系列單片機的4中定時器工作方式介紹:方式0是13位計數(shù)方式,由寄存器tl0的低5位和寄存器th0的全部8位組成。寄存器tl0的低5位溢出時向寄存器th0進位,寄存器th0溢出時,置位寄存器tcon中的tf0標志位,中斷向cpu發(fā)出申請中斷請求。方式1是16位計數(shù)方式,由寄存器tl0作為低8位、寄存器th0作為高8位,組成了16位加1計數(shù)器 。方式2為自動重裝初值的8位計數(shù)方式。 工作方式2特別適合于用作較精確的脈沖信號發(fā)生器,同時要注意這里高低位的數(shù)據(jù)是一樣的。方式3

38、只適用于定時器寄存器t0,定時器t1處于方式3時相當于tr1=0,停止計數(shù)。 工作方式3將寄存器t0分成為兩個獨立的8位計數(shù)器寄存器tl0和寄存器th0 。3.5 stc89c51單片機外部中斷介紹stc89c51單片機擁有兩個外部中斷觸發(fā)引腳,分別為外部中斷0在p3.2引腳,和外部中斷1在p3.3引腳。單片機的外部中斷申請方式有兩種方式可以選擇:電平觸發(fā)方式申請和邊沿觸發(fā)方式申請。選擇電平觸發(fā)方式時,單片機在每個機器周期檢查中斷源口線,檢測到外部中斷接口的引腳電平為低電平時,即置位中斷請求標志,向cpu請求中斷。選擇邊沿觸發(fā)方式時,單片機是利用兩個周期的狀態(tài)來確定申請的,具體來說就是:單片機

39、在一個周期檢測到外部中斷引腳的電平為高電平,下一個機器周期檢測到外部中斷引腳的電平為低電平時,即置位中斷標志,請求中斷。所以這里所說的電平方式為低電平觸發(fā)方式,邊沿觸發(fā)為下降沿觸發(fā)方式。這和很多目前單片機支持的高低電平和下降沿及上升沿觸發(fā)方式是不同的。雖然觸發(fā)方式不是很全面,但是在其所在的應用環(huán)境中是完全夠用的。自行車里程監(jiān)測儀的嵌入式設計與實現(xiàn)第4章 數(shù)據(jù)采集器選擇在很多應用中,我們?yōu)榱双@得自然的物理屬性,例如常見的聲光力熱等信息,我們就會借助對應的傳感器進行數(shù)據(jù)采集和轉換,因為們所用的處理器都是數(shù)字型的,所能處理和識別的信號只能是數(shù)字信號,在本次設計中,為了獲得騎行的速度這一個物理量,我們

40、同樣需要對應的傳感器。進過前期的資料整理,可以知道,為了完成本設計中數(shù)據(jù)的獲取,我們有很多的選擇,例如光電門,增量式編碼器,陀螺儀,霍爾傳感器。下面對這幾種可用的方法進行一個簡單的對比,從而說明本設計采用霍爾傳感器的原因。4.1 可用傳感器的介紹和對比在前面說的幾種傳感器中,光電門和增量式編碼器的基本原理是一樣的。都是在一個對射的光電管中間有阻擋光線的物體出現(xiàn)時,就輸出一個脈沖信號。這種方式速度高,精度一般,但是傳感器容易受到外界的干擾和影響。在灰塵和光線的干擾比較大的時候,傳感器就不能正常的工作。陀螺儀,作為一種比較新的傳感器,采集的是加速度,通過對加速度的換算,就可以解算出實際的角度和距離

41、,這種方式可以區(qū)分正反,同時精度高。但是對單片機的運算速度提出了很高的要求?;魻杺鞲衅魇且环N利用磁場進行數(shù)據(jù)脈沖采集的器件??雇饨绺蓴_比較強,同時使用起來也比較簡單,對單片機的額運算性能也沒有特別的要求。而且安裝方便,靈活。從上面的對比中,我們可以看出使用霍爾傳感器的原因。使用靈活,簡單,便捷。光電編碼器作為一個出現(xiàn)了多年的傳感器,使用范圍很廣泛,在很多需要檢測轉速和開關量的時候都會使用到,但是光電編碼器的價格比較貴,而且在本次設計中使用不是很方便,因為安裝的位置和外接接觸很多,比如灰塵多,會接觸到雨水,還有陽光的強烈干擾等。陀螺儀是種新型的傳感器,在使用的地方一般是一些比較高端的應用場所,例

42、如手機中的陀螺儀可以作為手機的高精度傳感器使用,檢測出手機的狀態(tài),從而可以進行手機控制等游戲的操作?;魻杺鞲衅魇褂玫氖腔魻栃膫鞲衅?,在抗干擾方面比光電編碼器要好,在使用和開發(fā)難度上比陀螺儀要低。對單片機的資源和按照條件的優(yōu)勢是本次設計選用霍爾傳感器的最大兩個原因。4.2 霍爾傳感器介紹霍爾傳感器是利用霍爾效應進行數(shù)據(jù)監(jiān)測的一種傳感器?;魻栃谴烹娦囊环N,霍爾效應是霍爾(a.h.hall,18551938)于1879年在研究金屬的導電機構時發(fā)現(xiàn)的。進過多年的發(fā)展,霍爾傳感器在很多方面都得到了較大的發(fā)展。利用霍爾效應進行數(shù)據(jù)監(jiān)測,抗干擾能力比較好,監(jiān)測的效果也和傳統(tǒng)的監(jiān)測方式不相上下。所

43、以說霍爾傳感器是一種十分合適的傳感器選擇。4.2.1 霍爾傳感器原理磁場中有一個霍爾半導體片,恒定電流i從a到b通過該片。在洛侖茲力的作用下,i的電子流在通過霍爾半導體時向一側偏移,使該片在cd方向上產(chǎn)生電位差,這就是所謂的霍爾電壓?;魻栯妷弘S磁場強度的變化而變化,磁場越強,電壓越高,磁場越弱,電壓越低,霍爾電壓值很小,通常只有幾個毫伏,但經(jīng)集成電路中的放大器放大,就能使該電壓放大到足以輸出較強的信號。若使霍爾集成電路起傳感作用,需要用機械的方法來改變磁感應強度。下圖所示的方法是用一個轉動的葉輪作為控制磁通量的開關,當葉輪葉片處于磁鐵和霍爾集成電路之間的氣隙中時,磁場偏離集成片,霍爾電壓消失。

44、這樣,霍爾集成電路的輸出電壓的變化,就能表示出葉輪驅動軸的某一位置,利用這一工作原理,可將霍爾集成電路片用作用點火正時傳感器?;魻栃獋鞲衅鲗儆诒粍有蛡鞲衅?,它要有外加電源才能工作,這一特點使它能檢測轉速低的運轉情況?;魻栃獋鞲衅?。1-霍爾半導體元件 2-永久磁鐵 3-擋隔磁力線的葉片圖4-1 霍爾傳感器原理圖4.2.2 霍爾傳感器分類霍爾傳感器分為線型霍爾傳感器和開關型霍爾傳感器兩種。(一)開關型霍爾傳感器由穩(wěn)壓器、霍爾元件、差分放大器,斯密特觸發(fā)器和輸出級組成,它輸出數(shù)字量。開關型霍爾傳感器還有一種特殊的形式,稱為鎖鍵型霍爾傳感器。(二)線性型霍爾傳感器由霍爾元件、線性放大器和射極跟隨器

45、組成,它輸出模擬量。線性型霍爾傳感器又可分為開環(huán)式和閉環(huán)式。閉環(huán)式霍爾傳感器又稱零磁通霍爾傳感器。線性型霍爾傳感器主要用于交直流電流和電壓測量。.4.3 ah3503集成線性型霍爾傳感器介紹ah3503系列線性霍爾電路由電壓調整器,霍爾電壓發(fā)生器,線性放大器和射極跟隨器組成,其輸入是磁感應強度,輸出是和輸入量成正比的電壓。如圖4-2所示為直插型ah3503的內部結構圖,其中第一腳為供電電源引腳,ah3503具有寬電壓輸入,最高可以承受直流8v電壓。第二腳為電源地引腳。第三腳為電壓輸出引腳,ah3503的輸出電壓為線性電壓。圖4-2 ah3503的內部結構圖圖4-3 ah3503霍爾傳感器的輸出

46、電壓特性曲線4.4 ah3503霍爾傳感器的檢測原理本設計選用了線性霍爾傳感器,這在單片機的應用中看似是不合理的一種選擇方式。但是我們經(jīng)過實際的分析就可以知道,選用線性霍爾傳感器有著開關型霍爾傳感器無法比擬的優(yōu)勢。首先我們從上面的圖4-3可以看到該傳感器的輸出電壓特性曲線。在磁感應強度在0mt之后輸出電壓都是在3.6v以上。而對于ttl電平的單片機來說,這就是高電壓了。而我們選用的檢測方式是下降沿觸發(fā),在電壓下降到躍遷點的時候,就會檢測到數(shù)據(jù)了。而開關型霍爾傳感器在這種范圍之內就容易發(fā)生誤判。導致數(shù)據(jù)發(fā)生錯誤。我們將ah3503霍爾傳感器的輸出引腳接在單片機的外部中斷引腳。p3.2引腳上,當出

47、現(xiàn)上面提到的情況,發(fā)生下降沿的時候。就會采集到數(shù)據(jù)。我們前面的理論中說的圈數(shù)n就能被測量出來。我們在根據(jù)公式就可以計算出車的騎行距離和實時的速度了。同時,本設計的誤差就來自于檢測空白期,例如我們在計算的時候,又發(fā)生了數(shù)據(jù)的變化。第二種是沒有測到,例如還沒有到達躍遷點。那么就會少測一圈。但是這個誤差在我們的實際騎行中,一圈的誤差對于上公里的距離來說,這個誤差是很小的,可以是忽略不計的誤差。ah3503傳感器檢測原理如圖4-4所示:單片機外部中斷p3.2霍爾傳感器車輪鐵圈圖4-4 ah3503傳感器檢測原理第5章 系統(tǒng)電路設計在本次設計中,我們需要采集數(shù)據(jù),處理數(shù)據(jù),同時顯示和預警。這一切的工作將

48、由三大方面組成,第一是:物理器件、第二是:電路系統(tǒng)、第三:軟件設計。只有這三個方面都選擇正確,設計完整,我們設計的系統(tǒng)才可能正常的按照我們的預想設計進行工作。在前面一章我們介紹了物理器件的選擇。在這一章中,我們將對系統(tǒng)的電路設計進行一個完整的介紹。在系統(tǒng)的電路設計中,我們可以將整個系統(tǒng)規(guī)劃為以下幾個部分:電源電源轉換電路,單片機供電電路,單片機復位電路,單片機晶振電路,lcd1602液晶顯示電路,聲光提示電路,按鍵清除復位電路。下面將各個分電路進行逐個的介紹。5.1 stc89c51單片機系統(tǒng)電路5.1.1復位電路的設計stc89c51單片機的rest引腳為高電平復位使能端,在復位功能的設計中

49、,我們主要考慮兩個點:第一,在單片機上電的時候,單片機應該是可以自己復位的這樣程序才會從地址0點開始進行運行,第二,在單片機的運行過程中,我們應該是可以通過手動的方式對單片機進行復位,因為單片機可能會在運行的過程中因為電源的不穩(wěn)定或者是其他一些原因而出現(xiàn)錯誤,導致單片機無法在正常的狀態(tài)下工作了。因此我們設計了兩種方式對單片機進行復位操作,復位電路的設計如圖5-1所示,其中 s1是手動復位按鍵。上電復位的原理是:在系統(tǒng)上電的瞬間,電容因為不能電壓突變。所以電容的兩端就相當于短路狀態(tài),這個時候rst引腳就為高電平,單片機處于一直在復位的狀態(tài)。經(jīng)過一段時間的電源對電容c3充電后,rst引腳的電壓慢慢

50、下降,電平開是變?yōu)榈碗娖?,這個時候單片機就開始正常的工作;按鍵復位的原理是:當s2被人手動按下之后,電容c3因為電壓不能突變,所以會迅速的放電,這就會使rst引腳電平變?yōu)楦唠娖?,從而實現(xiàn)復位的目的。當s1松開之后,電源通過接地的10k的電阻r2對電容放電放電,rest引腳的電平重新回到低電平,復位過程結束,單片機又開始正常的工作狀態(tài)。具體的設計電路如下所示:圖5-1 stc89c51單片的復位電路 5.1.2 stc89c51單片機的晶振電路單片機的晶振電路,在stc89c51的內部有一個振蕩器的高增益反相放大器,由兩個引腳完成和外部電路的聯(lián)系。引腳19x1和引腳18 x2分別是該反相放大器的

51、輸入端和輸出端,用于和外部的晶體振蕩器相互連接,y1是頻率為11.0592mhz的晶體振蕩器,選擇頻率為11.0592mhz是為了在計算單片機運行周期時更加的方便,y1兩端的瓷片無極電容 c4和c5 接在放大器的外部反饋回路中從而可以構成并聯(lián)振蕩電路。電容c4和c5的電容容量(值的大小)的大小會對振蕩器的頻率以及振蕩器的穩(wěn)定性有一點的影響。同時不同大大小還對晶振的起振的難度和溫飄抑制有一定的影響。如果的是石英晶體,那按照官方的手冊來說推薦的電容值范圍是在30pf士l0pf之間。根據(jù)本次設計中選擇的晶振,我們可以得到本次設計中單片機的機器運行周期時間的計算方式如公式5.1所示: 公式5.1本次設

52、計的單片機復位電路如下圖所示:圖5-2 stc89c51單片機的晶振電路5.2 霍爾傳感器電路本次設計采用的是集成的三腳直插封裝的ah3503線性霍爾傳感器,在設計上去除了不必要的電壓變化和轉換電路,而采用了對集成傳感器進行直接的供電,然后采集的方式。具體的設計電路如下所示: 圖5-3 ah3503霍爾傳感器電路上圖中p1為霍爾傳感器的直插封裝插座。使用了5v直流電源供電。然后將輸出腳直接和單片機的外部中斷0腳p3.2相連接。當霍爾傳感器的輸出電壓發(fā)生下降沿,并且電平進入ttl電平的高低轉換時,單片機就會接受到霍爾傳感器的一次有效的下降沿信號,從而實現(xiàn)單片機對騎行圈數(shù)的采集過程。5.3 系統(tǒng)電

53、路的設計本次設計中所使用的stc89c51單片機的電壓要求為:直流5v電壓。液晶顯示屏lcd1620的要求電壓和霍爾傳感器則是要求3.3v到5.5v直流輸入,所以我們?yōu)榱耸沟迷O計取向簡單和可靠,我們都是用5v直流電源進行供電,在前端的電壓供應中我們使用usb和充電寶或者任何可以提供usb接口的地方相連接。為了系統(tǒng)電源的穩(wěn)定,在電壓接入之后,我們還要采用專用的開光型電源穩(wěn)壓芯片lm7805.這個芯片的穩(wěn)壓為5v直流輸出,滿足我的需求。同時我們還要采用電容對本機系統(tǒng)和外部系統(tǒng)的電壓進行隔離,所以使用了c1和c2兩個電容。一個是穩(wěn)壓隔離,一個是濾波隔離。其中電源開關處使用的是帶開關功能的usb接口,

54、這可以讓我們輕松的控制電壓的接入和斷開。具體的設計電路如下圖所示: 圖5-4 系統(tǒng)的電源電路5.4 液晶顯示電路的設計本次設計中采用了lcd1602液晶顯示器作為顯示器件,lcd1602液晶也叫l(wèi)cd1602字符型液晶,它可以用來顯示數(shù)字、字母、符號等的點陣型液晶顯示模塊。常見的模塊由若干個5x7點陣或者5x11點陣字符位來組成,每個點陣字符位都是一個顯示位用來顯示一個需要顯示的字符,并且每個顯示位之間是有設計間隔的。這在顯示的時候可以起到人的視覺分割的作用。所以這種模塊只適合顯示獨立的字符。不適合顯示畫面。lcd1602模塊的1602表示該模塊可以顯示16x2個字符,即可以顯示兩行,每行16

55、個字符液晶模塊(顯示字符和數(shù)字)。市面上大多的字符液晶都是基于hd44780液晶控制芯片開發(fā)的,即便是不同的控制芯片,在控制原理上也是是完全相同的,因此操作lcd1602液晶顯示模塊的方式也是沒有太大的差別的。5.4.1 lcd1602的特點1.3.3v或5v工作電壓,對比度可調2.內含復位電路3.提供各種控制命令,如:清屏、字符閃爍、光標閃爍、顯示移位等多種功能4.有80字節(jié)顯示數(shù)據(jù)存儲器ddram5.內建有192個5x7點陣的字型的字符發(fā)生器cgrom6.8個可由用戶自定義的5x7的字符發(fā)生器cgram7.微功耗、體積小、顯示內容豐富、超薄輕巧,常用在袖珍式儀表和低功耗應用系統(tǒng)中。5.4.2 lcd1602的功能參數(shù)表表5.1 lcd1602的控制指令表5.4.3 lcd1602引腳介紹lcd1602采用標準的14腳接口,其中:第1腳:gnd為電源地第2腳:vcc接5v電源正極第3腳:v0為液晶顯示器對比度調整端,接正電源時對比度最弱,接地電源時對比度最高(對比度過高時會 產(chǎn)生“鬼影”,使用時可以通過一個10k的電位器調整對比度)。第4

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論