電動自行車速度里程表設計論文之_第1頁
電動自行車速度里程表設計論文之_第2頁
電動自行車速度里程表設計論文之_第3頁
電動自行車速度里程表設計論文之_第4頁
電動自行車速度里程表設計論文之_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、摘要隨著居民生活水平的不斷提高,自行車不再僅僅是普通的運輸、代步的工具,而是成為人們娛樂、休閑、鍛煉的首選。自行車的速度里程表能夠滿足人們最基本的需求,讓人們能清楚地知道當前的速度、里程等物理量。本論文主要闡述一種基于霍爾元件的自行車的速度里程表的設計。以 AT89C52 單片機為核心,A44E 霍爾傳感器測轉數(shù),實現(xiàn)對自行車里程/速度的測量統(tǒng)計,采用24C02 實現(xiàn)在系統(tǒng)掉電的時候保存里程信息,并能將自行車的里程數(shù)與速度用LED實時顯示。文章詳細介紹了自行車的速度里程表的硬件電路和軟件設計。硬件部分利用霍爾元件將自行車每轉一圈的脈沖數(shù)傳入單片機系統(tǒng),然后單片機系統(tǒng)將信號經過處理送顯示。軟件部

2、分用匯編語言進行編程,采用模塊化設計思想。該系統(tǒng)硬件電路簡單,子程序具有通用性,完全符合設計要求。關鍵詞:里程/速度;霍爾元件;單片機;LED顯示29 / 34ABSTRACTWith the developing of peoples life, the bicycle is not only the universal tool of transportation and substitute for walking, but becomes the first choice of entertainment and exercising. The bicycle mileage/spee

3、d can fulfill the basic need of peoples life, so that they can learn the speed and the mileage of the bicycle. In this paper, the bicycle mileage/speed design based on the Hall element is elaborated. By AT89C52 as kernel, using A44E Hall element to measure revolution, the measure and statistic are a

4、chieved. The range information is saved by 24C02 when the power is off, the bicycle speed can be displayed on LED. In this article, the hardware circuit and software design of bicycle mileage/speed instrument are introduced in detail. About the hardware, the pulse number is transmitted of one cycle

5、of the bicycle into Single Chip Microcomputer system. Then the signal processed by Single Chip Microcomputer system is sent to display scream. About the software, in assemble language; the program is designed in the mode of modules. The system has simple hardware, common sub-program, and meets the d

6、emand of design.KEY WORDS: Mileage / speed; Hall element; Single chip microcomputer; LED 目錄1 緒言31.1 課題背景31.2 課題的主要任務與容32 自行車的速度里程表總體方案設計32.1 任務分析與實現(xiàn)32.2 自行車的速度里程表硬件方案設計32.3 自行車的速度里程表軟件方案設計33 自行車的速度里程表硬件電路設計33.1 概述33.2 傳感器與其測量系統(tǒng)33.2.1 霍爾傳感器的測量原理33.2.2 集成開關型霍爾傳感器33.3 單片機的原理與應用33.3.1 單片機原理簡介33.3.2 單片機的

7、引腳功能介紹33.3.3 單片機中斷系統(tǒng)介紹33.3.4 單片機定時/計數(shù)功能介紹33.4 其他器件的介紹33.4.1 存儲器的介紹33.4.2 74LS74芯片的介紹33.4.3 74LS244芯片的介紹33.5 單片機外圍電路的設計33.5.1 時鐘電路的設計33.5.2 復位電路的設計33.5.3 顯示電路的設計33.5.4 報警電路的設計34 自行車的速度里程表軟件程序設計34.1 概述34.2 自行車的速度里程表總體程序設計34.3 中斷子程序的設計34.4 數(shù)據(jù)處理子程序的設計34.5 顯示子程序的設計35 系統(tǒng)調試與分析35.1 系統(tǒng)仿真調試35.2 調試故障與原因分析36 結論

8、與展望36.1結論36.2 展望3致3參考文獻3附錄31 緒言1.1 課題背景自行車被發(fā)明與使用到現(xiàn)在已有兩百多年的歷史,這兩百年間人類在不斷的嘗試與研發(fā)過程中,將玩具式的木馬車轉換到今日各式新穎休閑運動自行車,自行車發(fā)展的目的也從最早的交通代步的工具轉換成休閑娛樂運動的用途。隨著居民生活水平的不斷提高,自行車不再僅僅是普通的運輸、代步的工具,而是成為人們娛樂、休閑、鍛煉的首選。因此,人們希望自行車的功用更強大,能給人們帶來更多的方便。自行車里程速度表作為自行車的一大輔助工具也正是隨著這個要求而迅速發(fā)展的,其功能也逐漸從單一的里程顯示發(fā)展到速度、時間顯示,甚至有的還具有測量騎車人的心跳、顯示騎

9、車人熱量消耗等功能。本設計采用了MCS-51系列單片機設計一種體積小、操作簡單的便攜式自行車的速度里程表,它能自動地顯示當前自行車行走的距離與運行的速度。1.2 課題的主要任務與容本課題主要任務是利用霍爾元件、單片機等部件設計一個可用LED數(shù)碼管實時顯示里程和速度的自行車的速度里程表。本文主要介紹了自行車的速度里程表的設計思想、電路原理、方案論證以與元件的選擇等容,整體上分為硬件部分設計和軟件部分設計。本文首先扼要對該課題的任務進行方案論證,包括硬件方案和軟件方案的設計;繼而具體介紹了自行車的速度里程表的硬件設計,包括傳感器的選擇、單片機的選擇、顯示電路的設計;然后闡述了該自行車的速度里程表的

10、軟件設計,包括數(shù)據(jù)處理子程序的設計、顯示子程序的設計;最后針對仿真過程遇到的問題進行了具體說明與分析,對本次設計進行了系統(tǒng)的總結。具體的硬件電路包括AT89C52單片機的外圍電路以與LED顯示電路等。軟件設計包括:芯片的初始化程序、定時中斷采樣子程序、顯示子程序等,軟件采用匯編語言編寫,軟件設計的思想主要是自頂向下,模塊化設計,各個子模塊逐一設計。2 自行車的速度里程表總體方案設計2.1 任務分析與實現(xiàn)本設計的任務是:以通用MCS-51單片機為處理核心,用傳感器將車輪的轉數(shù)轉換為電脈沖,進行處理后送入單片機。里程與速度的測量,是經過MCS-51的定時/計數(shù)器測出總的脈沖數(shù)和每轉一圈的時間,再經

11、過單片機的計算得出,其結果通過LED顯示器顯示出來。本系統(tǒng)總體思路如下:假定輪圈的周長為L,在輪圈上安裝m個永久磁鐵,則測得的里程值最大誤差為L/m。經綜合分析,本設計中取m=1。當輪子每轉一圈,通過開關型霍爾元件傳感器采集到一個脈沖信號,并從引腳P3.2中斷0端輸入,傳感器每獲取一個脈沖信號即對系統(tǒng)提供一次計數(shù)中斷。每次中斷代表車輪轉動一圈,中斷數(shù)n輪圈的周長為L的乘積為里程值。計數(shù)器T1計算每轉一圈所用的時間t,就可以計算出即時速度v。當里程鍵按下時,里程指示燈亮,LED切換顯示當前里程,與當速度鍵按下時,速度指示燈亮,LED切換顯示當前速度,若自行車超速,系統(tǒng)發(fā)出報警信號,指示燈閃爍。要

12、求達到的各項指標與實現(xiàn)方法如下:1. 利用霍爾傳感器產生里程數(shù)的脈沖信號。2. 對脈沖信號進行計數(shù)。實現(xiàn):利用單片機自帶的計數(shù)器T1對霍爾傳感器脈沖信號進行計數(shù)。3. 對數(shù)據(jù)進行處理,要求用LED顯示里程總數(shù)和即時速度。實現(xiàn):利用軟件編程,對數(shù)據(jù)進行處理得到需要的數(shù)值。最終實現(xiàn)目標:自行車的速度里程表具有里程、速度測試與顯示功能,采用單片機作控制,顯示電路可顯示里程與速度。2.2 自行車的速度里程表硬件方案設計測速,首先要解決是采樣的問題。使用單片機進行測速,可以使用簡單的脈沖計數(shù)法。只要轉軸每旋轉一周,產生一個或固定的多個脈沖,將脈沖送入單片機中進行計算,即可獲得轉速的信息。常用的測速元件有

13、霍爾傳感器、光電傳感器和光電編碼器。里程測量傳感器的選擇也有以下幾種方案:使用光敏電阻對里程進行測量、利用編碼器對車輪的圈數(shù)進行測量、利用霍爾傳感器對里程進行測量、利用干簧管型傳感器測量里程。光敏電阻對光特別敏感,當白天行駛時,外界光源將導致光敏電阻發(fā)出錯誤信號;光敏電阻對環(huán)境的要求相當高,如果光敏或發(fā)光二極管被泥沙或灰塵所覆蓋,光敏電阻就不能再進行準確測量;而編碼器必須安裝在車軸上,安裝較為復雜;霍爾元件或干簧管不但不受天氣的影響,即使被泥沙或灰塵覆蓋也不會有影響,而且安裝方便。所以本設計采用霍爾元件對里程與速度進行測量,既簡單易行,又經濟適用。使用霍爾傳感器獲得脈沖信號,其機械結構也可以做

14、得較為簡單,只要在轉軸的齒輪盤上粘上一粒磁鋼,霍爾元件固定在前叉上,當車子轉動時霍爾元件靠近磁鋼,就有信號輸出,轉軸旋轉時,就會不斷地產生脈沖信號輸出。如果在齒輪盤上粘上多粒磁鋼,可以實現(xiàn)旋轉一周,獲得多個脈沖輸出。在粘磁鋼時要注意,霍爾傳感器對磁場方向敏感,粘之前可以先手動接近一下傳感器,如果沒有信號輸出,可以換一個方向再試。這種傳感器不怕灰塵、油污,在工業(yè)現(xiàn)場應用廣泛?;魻杺鞲衅魇菍Υ琶舾械膫鞲性S糜谛盘柌杉挠蠥44E,該傳感器是一個3端器件,外形與三極管相似,只要接上電源、地,即可工作,工作電壓圍寬,使用非常方便。A44E的外形如圖2.1所示。1-Vcc 2-GND 3-OUT圖

15、2.1 A44E外形圖單片機由于將CPU、存和一些必要的接口集成到一個芯片上,并且面向控制功能將結構作了一定的優(yōu)化,所以它有一般芯片不具有的特點:1. 體積小、重量輕;2. 電源單一、功耗低;3. 功能強、價格低;4. 全部集成在一塊芯片上,布線短、合理;5. 數(shù)據(jù)大部分在單片機傳送,運行速度快、抗干擾能力強、可靠性高。目前,單片機被廣泛的應用于測控系統(tǒng)、工業(yè)自動化、智能儀表、集成智能傳感器、機電一體化產品、家用電器領域、辦公自動化領域、汽車電子與航空航天器電子系統(tǒng)以與單片機的多機系統(tǒng)等領域。在設計中選用的是AT89C52單片機。外部信號霍爾傳感器外部存儲器AT89C52單片機里程顯示速度顯示

16、報警部分圖2.2 系統(tǒng)的原理框圖2.3 自行車的速度里程表軟件方案設計通過軟件控制單片機的功能是單片機的主要特點和優(yōu)點,程序的設計要考慮合理性和可讀性,遵循模塊化設計的原則,采用自頂向下的設計方法。模塊化設計使程序的可讀性好、修改與完善方便。軟件設計包括主程序、行車過程中里程和速度計算子程序、延時子程序、中斷服務子程序、顯示子程序等等。中斷子程序是將傳感器產生的信號接入外部中斷0,將經過74LS74分頻后的信號接入外部中斷1,利用中斷和定時器對分別對里程進行累加、每轉一周的時間進行測量。數(shù)據(jù)處理子程序是將進入單片機的脈沖信號與實際要顯示值之間有一定的對應關系,經過軟件編程顯示所需要的值。顯示子

17、程序是將數(shù)據(jù)處理的結果送顯示器顯示。系統(tǒng)軟件總體流程圖如圖2.3所示。初始化P3.0=1?計算里程顯示里程計算速度顯示速度N開始圖 2.3 軟件總體流程圖3 自行車的速度里程表硬件電路設計3.1 概述自行車的速度里程表的硬件電路設計是基礎部分,它包括信號的捕獲、放大、整形,單片機的計算處理,數(shù)碼管的實時顯示和單片機外圍基本電路的設計,兩大主要器件就是傳感器和單片機。傳感器是獲取自然或生產領域息的關鍵器件,是現(xiàn)代信息系統(tǒng)和各種設備不可缺少的信息采集工具。磁傳感器是一種將磁學量信號轉變?yōu)殡娦盘柕钠骷蜓b置。隨著信息產業(yè)、工業(yè)自動化、醫(yī)療儀器等的飛速發(fā)展和計算機應用的普與,需要大量的傳感器將被測或被

18、控的非電信號轉換成可與計算機兼容的電信號。作為輸入信號,這就給磁傳感器的快速發(fā)展提供了機遇,形成了磁傳感器的產業(yè)。其中最具代表的磁傳感器就是霍爾傳感器,在自動檢測系統(tǒng)中,利用霍爾傳感器測轉數(shù)是一種最基本的測量工作。單片機是本次設計的核心部件,它是信號從采集到輸出的橋梁,而且包括計算、定時、信息處理等功能。3.2 傳感器與其測量系統(tǒng)本次設計信號的捕獲采用的是霍爾傳感器。 霍爾器件具有許多優(yōu)點,它們的結構牢固、體積小、重量輕、壽命長、安裝方便、功耗小、頻率高(可達1MHz)、耐震動、不怕灰塵、油污、水汽與煙霧等的污染或腐蝕。霍爾線性器件的精度高、線性度好;霍爾開關器件無觸點、無磨損、輸出

19、波形清晰、無抖動、無回跳、位置重復精度高。取用各種補償和保護措施的霍爾器件工作溫度圍寬,可達55150。按照霍爾器件的功能可將它們分為:霍爾線性器件和霍爾開關器件,前者輸出模擬量,后者輸出數(shù)字量。按被檢測對象的性質可將它們的應用分為:直接應用和間接應用。前者是直接檢測出受檢測對象本身的磁場或磁特性,后者是檢測受檢對象上人為設置的磁場,用這個磁場來作被檢測的信息的載體。通過它,將許多非電、非磁的物理量例如力、力矩、位置、位移、速度、加速度、角度、角速度、轉數(shù)、轉速以與工作狀態(tài)發(fā)生變化的時間等,轉變成電量來進行檢測和控制。3.2.1 霍爾傳感器的測量原理霍爾傳感器是利用霍爾效應制成的一種磁敏傳感器

20、。在置于磁場中的導體或半導體通入電流I,若電流垂直磁場B,則在與磁場和電流都垂直的方向上會出現(xiàn)一個電勢差Uh,這種現(xiàn)象稱為霍爾效應。利用霍爾效應制成的元件稱為霍爾元件。因為它具有結構簡單、頻率響應寬、靈敏度高、測量線性圍大、抗干擾能力強以與體積小、使用壽命長等一系列特點,因此被廣泛應用于測量、自動控制與信息處理等領域?;魻栃韴D如圖3.1所示。圖3.1 霍爾效應原理圖3.2.2 集成開關型霍爾傳感器A44E集成霍爾開關由穩(wěn)壓器A、霍爾電勢發(fā)生器(即硅霍爾片)B、差分放大器 C、施密特觸發(fā)器D和OC門輸出E五個基本部分組成,如圖3.2(a)所示。(1)、(2)、(3)代表集成霍爾開關的三個引

21、出端點。在電源端加電壓Vcc,經穩(wěn)壓器穩(wěn)壓后加在霍爾電勢發(fā)生器的兩端,根據(jù)霍爾效應原理,當霍爾片處在磁場中時,在垂直于磁場的方向通以電流,則與這二者相垂直的方向上將會產生霍爾電勢差VH輸出,該VH信號經放大器放大后送至施密特觸發(fā)器整形,使其成為方波輸送到OC門輸出。當施加的磁場達到工作點時,觸發(fā)器輸出高電壓(相對于地電位),使三極管導通,此時OC門輸出端輸出低電壓,通常稱這種狀態(tài)為開。當施加的磁場達到釋放點時,觸發(fā)器輸出低電壓,三極管截止,使OC門輸出高電壓,這種狀態(tài)為關。這樣兩次電壓變換,使霍爾開關完成了一次開關動作。工作點與釋放點的差值一定,此差值稱為磁滯,在此差值,V0保持不變,因而使開

22、關輸出穩(wěn)定可靠,這也就是集電成霍爾開關傳感器優(yōu)良特性之一。傳感器主要特性是它的輸出特性,即輸入磁感應強度B與輸出電壓V0之間的關系。A44E集成霍爾開關是單穩(wěn)態(tài)型,由測量數(shù)據(jù)作出的輸出特性曲線如圖 3.2(b)所示。測量時,在1、2兩端加5V直流電壓,在輸出端3與1之間接一個2kW的負載電阻,如圖3.3所示。圖3.2 集成開關型霍爾傳感器圖3.3 集成霍爾開關接線圖3.3單片機的原理與應用3.3.1 單片機原理簡介單片機是指集成在一個芯片上的微型計算機,也就是把組成微型計算機的各種功能部件,包括CPU(Central Processing Unit)、隨機存儲器RAM(Random Acces

23、s Memory)、只讀存儲器ROM(Read-only Memory)、基本輸入/輸出(Input/Output)接口電路。定時器/計數(shù)器等部件都制作在一塊集成芯片上,構成一個完整的微型計算機從而實現(xiàn)微型計算機的基本功能。單片機部結構示意圖如圖3.4所示。定時/計數(shù)器中斷系統(tǒng)CPU存儲器并行I/O口串口I/O口TXDTXDRXDTINTP0-P3圖3.4 單片機部結構示意圖1.中央處理器(CPU)中央處理器是單片機最核心的部分,主要完成運算和控制功能。2.部存儲器部存儲器包括部數(shù)據(jù)存儲器(部RAM)和部程序存儲器。存儲器是由大量的寄存器所組成,其中每一個寄存器就稱為一個存儲單元。3.定時/計

24、數(shù)器單片機的定時器和計數(shù)器是同一結構,只是計數(shù)器記錄的是單片機外部發(fā)生的事件,由單片機的外部電路提供計數(shù)信號;而定時器是由單片機部提供一個非常穩(wěn)定的計數(shù)信號。4.中斷系統(tǒng)中斷系統(tǒng)在計算機中起著十分重要的作用,是現(xiàn)代計算機系統(tǒng)中廣泛采用的一種實時控制技術,能對突發(fā)事件進行與時處理,從而大大提高系統(tǒng)的實時性能。5.串行I/O接口串行I/O口的數(shù)據(jù)各位按順序傳輸,其特點是需要一對傳輸線,成本低;但速度慢,效率低,適合靜態(tài)顯示。6.并行I/O接口并行I/O接口的數(shù)據(jù)所有位同時傳送。其特點是傳輸速度快,效率高;但傳送多少位就需要多少根傳輸線,因此傳送成本高,適合動態(tài)顯示。3.3.2 單片機的引腳功能介紹

25、AT89C52是美國ATMEL公司生產的低電壓,高性能CMOS 8位單片機,片含8K Bytes的可反復擦寫的只讀程序存儲器(EPROM)和256 字節(jié)的隨機存取數(shù)據(jù)存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術生產,與標準MCS-51指令系統(tǒng)與8052產品引腳兼容,片置通用8位中央處理器(CPU)和Flash存儲單元,功能強大,AT89C52單片機適合于許多較為復雜控制場合應用。圖3.5 AT89C52引腳圖AT89C52提供以下標準功能:8K字節(jié)Flash閃速存儲器,256字節(jié)部RAM,32個I/O口線,3個16位定時/計數(shù)器,5個中斷源,一個全雙工串行通信口,片具有振

26、蕩器與時鐘電路。AT89C52管腳圖如圖3.5所示。AT89C52的主要管腳功能如下:P0.0P0.7:P0口是一組8位漏極開路型雙向I/O口,也是地址/數(shù)據(jù)總線復用口。P1.0P1.7:P1是一個帶部上拉電阻的8位雙向I/O口。P2.0P2.7:P2是一個帶部上拉電阻的8位雙向I/O口。 P3.0P3.7:P3是一個帶部上拉電阻的8位雙向I/O口。ALE:地址鎖存控制信號。在系統(tǒng)擴展時,ALE用于控制把P0口輸出的低8位地址鎖存起來,以實現(xiàn)低位地址和數(shù)據(jù)的分時傳送。此外,由于ALE是以晶振16的固定頻率輸出的正脈沖,因此,可作為外部時鐘或外部定時脈沖使用。:外部程序存儲器讀選通信號。在讀外部

27、ROM時,有效(低電平),以實現(xiàn)外部ROM單元的讀操作。:訪問程序存儲控制信號。當信號為低電平時,對ROM的讀操作限定在外部程序存儲器;當信號為高電平時,對ROM的讀操作是從部程序存儲器開始,并可延至外部程序存儲器。RST:復位信號。當輸入的復位信號延續(xù)兩個機器周期以上的高電平時即為有效,用以完成單片機的復位初始化操作。XTALl和XTAL2:外接晶體引線端。當使用芯片部時鐘時,此二引線端用于外接石英晶體和微調電容;當使用外部時鐘時,用于接外部時鐘脈沖信號。VSS:地線。VCC:+5V電源。如果把前述的信號定義為引腳第一功能的話,則根據(jù)需要再定義的信號就是它的第二功能。P3的8條口線都定義有第

28、二功能,如表3.1所示對于有部EPROM的單片機芯片(例如87C51),為寫入程序須提供專門的編程脈沖和編程電源。它們也由引腳以第二功能的形式提供的,即:編程脈沖:30腳()編程電壓(25V):31腳()表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讀選通3.3.3 單片機中斷系統(tǒng)介紹中斷是指當計算機執(zhí)行正常程序時,系統(tǒng)中出現(xiàn)某些急需處理的事件,CPU暫時中止當前的程序,轉去執(zhí)行服務

29、程序,以對發(fā)生的更緊迫的事件進行處理,待處理結束后,CPU自動返回原來的程序執(zhí)行AT89C52系列單片機的系統(tǒng)有5個中斷源,2個優(yōu)先級,可實現(xiàn)二級中斷服務嵌套。由片特殊功能寄存器中的中斷允許寄存器IE控制CPU是否響應中斷請求;由中斷優(yōu)先級寄存器IP安排各優(yōu)中斷源的優(yōu)先級;同一優(yōu)先級各終端同時提出中斷請求時,由部的查詢邏輯確定其響應次序。采用的外部中斷方式包括外部中斷0和外部中斷1,它們的中斷請求信號分別由單片機引腳/P3.2和/P3.3輸入。外部中斷請求有兩種信號方式:電平觸發(fā)方式和脈沖觸發(fā)方式。電平觸發(fā)方式的中斷請低電平有效。只要在和引腳上出現(xiàn)有效低電平時,就激活外部中斷方式。脈沖觸發(fā)方式

30、的中斷請求則是脈沖的負跳變有效。在這種方式下,在兩個相鄰機器周期,和引腳電平發(fā)生變化,即在第一個機器周期為高電平,第二個機器周期為低電平,就激活外部中斷。由此可見,在脈沖方式下,中斷請求信號的高電平和低電平狀態(tài)都應至少維持一個機器周期,以使CPU采樣到電平狀態(tài)的變化,本次設計所采用的觸發(fā)方式為脈沖觸發(fā)方式。1.中斷允許控制CPU對中斷系統(tǒng)所有中斷以與某個中斷源的開放和屏蔽是由中斷允許寄存器IE控制的。IE的狀態(tài)可通過程序由軟件設定,某位設定為1,相應的中斷源中斷允許;某位設定為0,相應的中斷源中斷屏蔽。CPU復位時,IE各位為0,禁止所有中斷。IE寄存器各位的定義如下。EX0(IE.0)外部中

31、斷允許位;ET0(IE.1)定時/計數(shù)器T0中斷允許位;EX1(IE.2)外部中斷允許位;ET1(IE.3)定時/計數(shù)器T1中斷允許位;ES(IE.4)串行口中斷允許位;EA(IE.7)CPU中斷允許位。2.中斷優(yōu)先級控制AT89C52單片機有兩個中斷優(yōu)先級,即可實現(xiàn)二級中斷服務嵌套。每個中斷源的中斷優(yōu)先級都是由中斷優(yōu)先級寄存器IP中的相應的狀態(tài)來規(guī)定的。IP的狀態(tài)由軟件設定,某位設定為1,則相應的中斷源為高優(yōu)先級中斷;某位設定為0.則相應的中斷源為低優(yōu)先級中斷。單片機復位時,IP各位清0,各中斷源同為低優(yōu)先級中斷。IP寄存器各位的定義如下。PX0(IP.0)外部中斷優(yōu)先級設定位;PT0(IP

32、.1)定時/計數(shù)器T0中斷優(yōu)先級設定位;PX1(IP.2)外部中斷中斷優(yōu)先級設定位;PT1(IP.3)定時/計數(shù)器T1中斷優(yōu)先級設定位;PS(IP.4)串行口中斷優(yōu)先級設定位。3.3.4 單片機定時/計數(shù)功能介紹AT89C52單片機定時/計數(shù)器的工作由兩個特殊功能寄存器控制。TMOD用于設置其工作方式;TCON用于控制其啟動和中斷請求。1.工作方式寄存器TMOD工作方式寄存器TMOD用于設置定時/計數(shù)器的工作方式。GATE:門控位。GATE=0時,只要用軟件使TCON中的TR0或TR1為1,就可以啟動定時/計數(shù)器工作;GATE=1時,要用軟件TR0或TR1為1,同時外部中斷引腳或也為高電平時,

33、才能啟動定時/計數(shù)器工作。:定時/計數(shù)模式選擇位。=0為定時模式; =1為計數(shù)模式。M1M2:工作方式設置位。定時/計數(shù)器有4種工作方式,由M1M2進行設置。本次設計TMOD為90H,即選通定時/計數(shù)器1、定時功能、工作方式1。工作方式16位定時/計數(shù)器。2.控制寄存器TCONTF1(TCON.7)定時/計數(shù)器T1溢出中斷請求標志位。定時/計數(shù)器T1計數(shù)溢出時由硬件自動置TF1為1。CPU響應中斷后TF1由硬件自動清零。T1工作時,CPU可隨時查詢TF的狀態(tài)。所以,TF1可用作查詢測試的標志。TF1也可以用軟件置1或清零,同硬件置1或清零的效果一樣。TR1(TCON.6)定時/計數(shù)器T1運行控

34、制位。TR1置1時時,定時/ 計數(shù)器T1開始工作;TR1置0時,定時/計數(shù)器T1停止工作。TR1由軟件置1或清0。TF0(TCON.5):定時/計數(shù)器T0溢出中斷請求標志位。TR0(TCON.4):定時/計數(shù)器T0運行控制位。3.4 其他器件的介紹3.4.1 存儲器的介紹AT24C02是一個2K位串行CMOSE2PROM。部含有256個8 位字節(jié),ATMEL公司的先進CMOS技術實質上減少了器件的功耗。AT24C02有一個16 字節(jié)頁寫緩沖器,該器件通過I2C總線接口進行操作有一個專門的寫保護功能。AT24C02支持I2C總線數(shù)據(jù)傳送協(xié)議。數(shù)據(jù)傳送是由產生串行時鐘和所有起始停止信號的主器件控制

35、的。主器件和從器件都可以作為發(fā)送器或接收器,但由主器件控制傳送數(shù)據(jù)(發(fā)送或接收)的模式,通過器件地址輸入端 A0、A1和A2可以實現(xiàn)將最多8個24C02器件連接到總線上。管腳圖如3.6所示。圖3.6 24C02管腳圖SCL串行時鐘:AT24C02串行時鐘輸入管腳用于產生器件所有數(shù)據(jù)發(fā)送或接收的時鐘。SDA串行數(shù)據(jù)/地址:CAT24WC02雙向串行數(shù)據(jù)/地址管腳用于器件所有數(shù)據(jù)的發(fā)送或接收,是一個開漏輸出管腳可與其它開漏輸出或集電極開路輸出進行線或(wire-OR)。WP寫保護:如果WP管腳連接到Vcc所有的容都被寫保護,只能讀。當WP管腳連接到Vss或懸空,允許器件進行正常的讀/寫操作。本次設

36、計采用的24C02是為了防止掉電時里程數(shù)據(jù)的丟失,由于24C02的數(shù)據(jù)線和地址線是復用的,采用串口的方式傳輸數(shù)據(jù),所以只用兩根線SCL和SDA與單片機傳輸數(shù)據(jù)。在軟件編程時采用程序包來控制24C02發(fā)送或接受數(shù)據(jù)。3.4.2 74LS74芯片的介紹74LS74是D觸發(fā)器的一種,它是一個具有記憶功能的二進制信息存儲器件,是構成多種時序電路的最基本邏輯單元。觸發(fā)器具有兩個穩(wěn)定狀態(tài),即“0”和“1”,在一定的外界信號作用下,可以從一個穩(wěn)定狀態(tài)翻轉到另一個穩(wěn)定狀態(tài)。由于其狀態(tài)的更新發(fā)生在CP脈沖的邊沿故又稱之為上升沿觸發(fā)的邊沿觸發(fā)器,D觸發(fā)器的狀態(tài)只取決于時針到來前D端的狀態(tài)。引腳圖如圖3.7所示。圖

37、3.7 74LS74引腳圖在本題目中74LS74芯片起分頻的作用。當車輪每轉一圈,霍爾傳感器輸出一個低電平脈沖,通過74LS74進行二分頻后,定時器T1的開啟時間為車輪轉1圈的時間,這樣就可以算出自行車的速度。分頻前后對比圖如圖3.8所示。tt00vv霍爾輸出圈脈沖二分頻后的波形圖3.8 分頻前后對比圖由圖可見,二分頻后的波形的高或地電平的時間正好是霍爾傳感器開關的一個周期,霍爾傳感器輸出脈沖到,即P3.2口接收到對圈數(shù)計數(shù)的脈沖。經74LS74二分頻后的信號輸入到,部定時計數(shù)器測得每轉一圈所用的時間,通過計算即可得里程值和即時速度。3.4.3 74LS244芯片的介紹本次設計中的采用驅動數(shù)碼

38、管的芯片為74LS244,74LS244為三態(tài)輸出的八位緩沖器和線驅動器,若單片機輸出口直接接顯示部分電路,則電流太小,會導致顯示部分不能正常工作。所以在單片機輸出口先接入驅動芯片74LS244,增大電流,使LED能夠正常工作。其邏輯圖如圖3.9所示,可以看出74LS244由2組組成、每組由四路輸入、輸出構成。每組有一個控制端高或低電平決定該組數(shù)據(jù)被接通還是斷開。圖3.9 74LS244邏輯圖3.5 單片機外圍電路的設計3.5.1 時鐘電路的設計時鐘是單片機的心臟,單片機各功能部件的運行都是以時鐘頻率為基準,有條不紊地一拍一拍地工作。因此,時鐘頻率直接影響單片機的速度,時鐘電路的質量也直接影響

39、單片機系統(tǒng)的穩(wěn)定性。AT89C52片由一個反相放大器構成振蕩器,可以由它產生時鐘。常用的時鐘電路有兩種方式,一種是部時鐘方式,另一種為外部時鐘方式。本設計采用前者。單片機部有一個用于構成振蕩器的高增益反相放大器,該高增益反相放大器的輸入為芯片引腳XTAL1,輸出端為引腳XTAL2。這兩個引腳跨接石英晶體振蕩器和電容,就構成一個穩(wěn)定的自激振蕩器。單片機部時鐘方式的振蕩電路如圖3.10所示。圖3.10 單片機片振蕩電路電路中的電容C1和C2常選擇為30P左右。對外接電容的值雖然沒有嚴格的要求,但電容的大小會影響振蕩器的高低、振蕩器的穩(wěn)定性、起振的快速性和溫度的穩(wěn)定性。而外接晶體的振蕩頻率的大小,主

40、要取決于單片機的工作頻率圍,每一種單片機都有自己的最大工作頻率,外接的晶體振蕩頻率不大于單片機的最大工作頻率即可。此外,如果單片機有串行通信,則應該選擇振蕩頻率除以串行通信頻率可以除盡的晶體。本設計晶振采用12MHz,則計數(shù)周期為S3.5.2 復位電路的設計AT89C52單片機的復位輸入引腳RET為AT89C52提供了初始化的手段。有了它可以使程序從指定處開始執(zhí)行,即從程序存儲器中的0000H地址單元開始執(zhí)行程序。在89C52的時鐘電路工作后,只要在RET引腳上出現(xiàn)兩個機器周期以上的高電平時,單片機部則初始復位。只要RET保持高電平,則89C52循環(huán)復位。只有當RET由高電平變成低電平以后,8

41、9C52才從0000H地址開始執(zhí)行程序。本系統(tǒng)的復位電路是采用按鍵復位的電路,如圖3.11所示,是常用復位電路之一。單片機復位通過按動按鈕產生高電平復位稱手動復位。上電時,剛接通電源,電容C相當于瞬間短路,+5V立即加到RET/VPD端,該高電平使89C52全機自動復位,這就是上電復位;若運行過程中需要程序從頭執(zhí)行,只需按動按鈕即可。按下按鈕,則直接把+5V加到了RET/VPD端從而復位稱為手動復位。復位后,P0到P3并行I/O口全為高電平,其它寄存器全部清零,只有SBUF寄存器狀態(tài)不確定。圖3.11 按鍵復位電路工作原理:通電瞬間,RC電路充電,RST引腳出現(xiàn)高電平,只要RST端保持10ms

42、以上高電平,就能使單片機有效地復位。3.5.3 顯示電路的設計本設計中采用LED數(shù)碼管顯示。在單片機系統(tǒng)中,通常用LED數(shù)碼顯示器來顯示各種數(shù)字或符號。由于它具有顯示清晰、亮度高、使用電壓低、壽命長的特點,因此使用非常廣泛。八段LED顯示器由8個發(fā)光二極管組成。其中7個發(fā)光二極管構成字型“8”的各個筆畫段,另一個小數(shù)點為dp發(fā)光二極管。LED顯示器有兩種不同的形式:一種是發(fā)光二極管的陽極都連在一起的,稱之為共陽極LED顯示器;另一種是發(fā)光二極管的陰極都連在一起的,稱之為共陰極LED顯示器。如圖3.12所示。本次設計采用共陰極接法。LED顯示方式有動態(tài)顯示和靜態(tài)顯示兩種方式。本系統(tǒng)采用動態(tài)掃描顯

43、示接口電路,動態(tài)顯示接口電路是把所有顯示器的8個筆劃段a-h同名端連在一起,而每一個顯示器的公共極COM各自獨立地受I/O線控制。CPU向字段輸出口送出字型碼時,所有顯示器接收到一樣的字型碼,但究竟是哪個顯示器亮,則取決于COM端。也就是說我們可以采用分時的方法,輪流控制各個顯示器的COM端,使各個顯示器輪流點亮。在輪流點亮掃描過程中,每位顯示器的點亮時間是極為短暫的(約1ms),由于人的視覺暫留現(xiàn)象與發(fā)光二極管的余輝效應,盡管實際上各位顯示器并非同時點亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會有閃爍感。圖3.12 七(八)段LED顯示器本設計P2.0、P2.1、P2.

44、2、P2.3信號一起組成位選通的位選信號,P0.0P0.7信號一起組成段碼選通的段選信號,通過軟件編程,先把所要顯示的數(shù)據(jù)放入存儲單元,然后把數(shù)據(jù)送入段選通對應的地址,再選通某一個LED,逐步完成四個LED的顯示。3.5.4 報警電路的設計本次報警電路采用蜂鳴器報警,當即時速度超過預定值是蜂鳴器響,指示燈閃爍,提示應該減速。報警電路圖如圖3.13所示。圖3.13 報警電路圖4 自行車的速度里程表軟件程序設計4.1 概述在硬件設計完畢之后,接下來就是設計中最核心和最為主要的軟件部分設計。所謂軟件設計就是把軟件需求變換成軟件的具體設計方案(即模塊結構)的過程。模塊化結構設計即是根據(jù)要求和硬件設計的

45、結構,將整個系統(tǒng)的功能分成許多小的功能模塊,再根據(jù)這些小的功能模塊進行程序編寫的過程。這樣的設計方法,使得系統(tǒng)的整個功能和各部分的功能趨于明朗化。當系統(tǒng)出現(xiàn)問題,就可以根據(jù)功能設置找出問題的根源,從而更快地解決問題。所以說,在整個設計過程中,軟件設計必須與硬件設計緊密地結合在一起。基于霍爾傳感器自行車的速度里程表的軟件設計包括上電初始化程序、中斷子程序、速度調用子程序、里程調用子程序、LED顯示子程序、延時子程序等幾大部分。由于要實現(xiàn)很多功能,所以采用模塊化設計,下面就其主要部分分別加以分析。4.2 自行車的速度里程表總體程序設計在主程序模塊中,需要完成對各接口芯片的初始化、自行車里程和速度的

46、初始化、中斷向量的設計以與開中斷、循環(huán)等待等工作。另外,在主程序模塊中還需要設置啟動/清除標志寄存器、里程寄存器、速度寄存器,并對它們進行初始化。然后主程序將根據(jù)各標志寄存器的容,分別完成啟動、清除、計程和計速等不同的操作。P1.0和P1.1口分別用于顯示里程狀態(tài)和速度狀態(tài)。P1.2、P1.3、P1.6和P1.7口分別用于設置輪圈的大小,低電平有效。P3.0是用于里程和速度切換的,低電平為顯示速度,高電平為顯示里程。中斷0用于對輪子圈數(shù)的計數(shù)輸入,輪子每轉一圈,霍爾傳感器輸出一個低電平脈沖。將根據(jù)里程寄存器中的容計算和判斷出行駛里程數(shù)。中斷1用于控制定時器T1的啟/停,當輸入為0時關閉定時器。

47、此控制信號是將輪子圈數(shù)的計數(shù)經二分頻后形成。這樣,每次定時器T1的開啟時間剛好為轉一圈的時間,根據(jù)輪子的周長就可以計算出自行車的速度。其程序流程如圖4.1所示。開始初始化P1.2=1?NP1.3=1?P1.6=1?P1.7=1?出錯提示將車圈周長調入21H開中斷,啟動定時器P3.0=1?調用里程處理子程序調用速度處理子程序NNNYYYYNY圖4.1 主程序流程圖4.3 中斷子程序的設計定時中斷是為滿足定時或計數(shù)的需要而設置的。在單片機部有兩個定時/計數(shù)器,以對其中的計數(shù)結構進行計數(shù)的方法,來實現(xiàn)定時或計數(shù)功能。當結構發(fā)生計數(shù)溢出時,即表明定時時間或計數(shù)值已滿,這時就以計數(shù)溢出信號作為中斷請求,

48、去置位一個溢出標志,作為單片機接受中斷請求的標志。這種中斷請在單片機芯片部發(fā)生的,因此無須在芯片上設置引入端。關中斷開始現(xiàn)場保護開中斷中斷處理關中斷現(xiàn)場恢復開中斷中斷返回定時/計數(shù)器控制寄存器TCON是8位寄存器,地址為88H,可以位尋址。其高4位用于定時/計數(shù)器中斷控制,低4位借給外部中斷,用做中斷標志和觸發(fā)方式選擇位。本設計采用定時中斷,對自行車的里程和速度進行計數(shù)。中斷子程序流程圖如圖4.2所示。圖4.2中斷子程序流程圖4.4 數(shù)據(jù)處理子程序的設計1. 里程計算子程序點亮里程指示燈開始將車圈數(shù)轉換成里程顯示里程值返回外中斷0服務程序用于對單片機P3.2口輸入的圈脈沖進行計數(shù),為十六進制計

49、數(shù)器。60H為低位,62H為高位。每次計數(shù)一次后,對里程數(shù)據(jù)進行一次存儲操作。當車輪每轉一圈,通過霍爾元件將脈沖數(shù)輸入單片機,通過計數(shù)器計出脈沖數(shù),再用乘法子程序算出里程數(shù)。里程處理子程序流程圖如圖4.3所示。圖4.3 里程處理子程序流程圖2.速度計算子程序外中斷1服務程序用于處理輪子轉動一圈后的計時數(shù)據(jù)。當標志位(00H)為1時,計數(shù)溢出,放入最大時間值(為#0FFH);當標志位為0時,將計數(shù)單元(TL1、TH1、6CH、6DH)的值放入68H6BH單元。定時器計出每轉一圈所用的時間,用自行車車輪的周長除以時間就得出自行車的速度。開始開速度指示燈計算速度報警顯示速度NY是否超速?返回圖4.4

50、 速度處理子程序流程圖4.5 顯示子程序的設計采用動態(tài)掃描顯示接口電路,動態(tài)顯示接口電路是把所有顯示器的8個筆劃段a-h同名端連在一起,而每一個顯示器的公共極COM各自獨立地受I/O線控制。CPU向字段輸出口送出字型碼時,所有顯示器接收到一樣的字型碼,但究竟是哪個顯示器亮,則取決于COM端??梢圆捎梅謺r的方法,輪流控制各個顯示器的COM端,使各個顯示器輪流點亮。在輪流點亮掃描過程中,每位顯示器的點亮時間是極為短暫的(約1ms),由于人的視覺暫留現(xiàn)象與發(fā)光二極管的余輝效應,盡管實際上各位顯示器并非同時點亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會有閃爍感。本設計P2.0、P

51、2.1、P2.2、P2.3信號一起組成位選通的位選信號,P0.0P0.7信號一起組成段碼選通的段選信號,通過軟件編程,先把所要顯示的數(shù)據(jù)放入存儲單元,然后把數(shù)據(jù)送入段選通對應的地址,再選通某一個LED,逐步完成四個LED的顯示。開始顯示單元首址取顯示數(shù)據(jù)送段碼到P0口取段碼表首址調用延時送位選到P2口4位顯示結束返回YN修改顯示單元地址求下一位位選碼圖4.5 顯示子程序流程圖5 系統(tǒng)調試與分析5.1 系統(tǒng)仿真調試PROTEUS系統(tǒng)仿真平臺與開發(fā)平臺是由英國Labcenter公司開發(fā)的,是目前世界上最完整的系統(tǒng)設計與仿真平臺之一。PROTEUS可以實現(xiàn)數(shù)字電路、模擬電路與微控制系統(tǒng)與外設的混合電

52、路系統(tǒng)的電路仿真、系統(tǒng)協(xié)同仿真和PCB設計等全部功能。PROTEUS軟件能夠對各種處理器進行實時仿真、調試與測試的EDA工具,真正實現(xiàn)了在沒有目標原形時就可以對系統(tǒng)進行調試與驗證。在構思好電路原理圖和編好程序之后就要對其進行系統(tǒng)仿真,原理圖的具體設計流程如圖5.1所示。當完成原理圖布線后,利用PROTEUS ISIS編輯環(huán)境所提供的電器規(guī)則檢查命令對設計進行檢查,并根據(jù)系統(tǒng)提供的錯誤檢查報告修改原理圖。直到通過電器規(guī)則檢查為止。單片機系統(tǒng)的仿真是PROTEUS VSM的一大特色,同時,本仿真系統(tǒng)將源代碼的編輯和編譯整合到同一設計環(huán)境中,這樣使得用戶可以在設計中直接編輯代碼,并且很容易地查看到用

53、戶對源程序修改后對仿真結果的影響。源代碼通過編譯無誤后,就可以進行仿真,在仿真過程中不斷完善電路和程序的功能最后達到本次設計的目的。5.2 調試故障與原因分析在軟件仿真過程中遇到了一些問題,具體故障和解決方法如下:1、數(shù)碼管不顯示本次設計的電路數(shù)碼管采用共陰極接法,在仿真時錯用共陽極數(shù)碼管,導致數(shù)碼管不顯示。2、P0口顯示高阻態(tài)正常情況下P0口輸出應為高(紅色)低(藍色)互換,但在實際情況下P0口出現(xiàn)了高阻態(tài)(灰色),經翻閱資料查得P0口做I/O口是應接上拉電阻。在加上上拉電阻后,P0口輸出正常。新建設計文檔設置編輯環(huán)境原理圖布線放置元器件電器檢查建立網(wǎng)絡表是否合格?結束Y存盤、報表輸出調整N開始圖5.1 原理圖設計流程圖6 結論與展望6.1結論該課題的主要任務是開發(fā)一個以MCS-51單片機為核心的自行車的速度里程表。本設計主要分為硬件部分和軟件部分,硬件部分著重考慮硬件電路的簡單性,故盡可能簡化硬件電路,節(jié)省線路板的空間,達到硬件電路最優(yōu)化設計。軟件采用匯編語言編寫,采用模塊化設計思想,程序可讀性強。通過仿真、實驗驗證了系統(tǒng)的可行,能滿足設計要求,達到設計的指標,實現(xiàn)

溫馨提示

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

評論

0/150

提交評論