基于AT89C52單片機的自行車?yán)锍膛c速度計的設(shè)計_第1頁
基于AT89C52單片機的自行車?yán)锍膛c速度計的設(shè)計_第2頁
基于AT89C52單片機的自行車?yán)锍膛c速度計的設(shè)計_第3頁
基于AT89C52單片機的自行車?yán)锍膛c速度計的設(shè)計_第4頁
基于AT89C52單片機的自行車?yán)锍膛c速度計的設(shè)計_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

自行車?yán)锍膛c速度計的設(shè)計本論文主要闡述一種基于單片機的自行車?yán)锍?速度計的設(shè)計。主要分為三個部分:硬件設(shè)計,軟件設(shè)計和模擬仿真。硬件設(shè)計以AT89C52單片機為核心,主要包括復(fù)位電路、顯示電路、時鐘電路、報警電路的設(shè)計。本設(shè)計采用霍爾傳感器測量自行車轉(zhuǎn)速脈沖,經(jīng)處理后由LED數(shù)碼管顯示,最多可超速時發(fā)出光、語音報警提示。軟件設(shè)計主要是通過單片機編程軟件KeilC設(shè)計計算自行車行駛里程和實時速度的程序,以及速度和里程的顯示程序;模擬仿真是利用仿真軟件Proteus對所設(shè)計的硬件電路和程序進行測試。本論文對設(shè)計當(dāng)中所需元件作了詳細(xì)介紹,對設(shè)計中存在的問題進行了說明,而后對硬件和軟件部分的設(shè)計和實現(xiàn)作了認(rèn)真的分析,并在此基礎(chǔ)上進行了控制仿真。本設(shè)計具有結(jié)構(gòu)簡單,成本低廉,顯示清晰,穩(wěn)定可靠等優(yōu)點。關(guān)鍵詞:AT89C52單片機;LED;霍爾傳感器THEDESIGNOFODOMETERANDVELOCITYGAUGEThispapermainlytellsthedesignofodometerandvelocitygaugeonbicyclesbasedonMCU.Therearethreepartinthethesis:hardwaredesign,softwaredesignandsimulation.ThehardwaredesignusewiththecoreofAT89C52ascontroler,includesthedesignsofResetcircuit,displaycircuit,clockcircuitandalarmcircuit.whichhallsensorisusuedtomeasurethepulseofrotatingspeedofthewheel,whichisdisplayedbyLEDafterprocessing,beingabletodisplayfourfigures.Thealarmcircuitcangivealightorsoundalarmwhenthereisanoverspeedornoperimeterinput.Thesoftwaredesignmostlyincludesthedesignofprogramoncaculatingthemileageandreal-timespeedofthebicyclewithKeilCasThesimulationisfinishedbytestingthedesignedhardwarecircuitandprogramwiththesimulationsoftwareProteus.Thispaperintroducesthedemandedcomponentsofthedesignindetails,explainingtheexistingproblemsinthedesign,andseriouslyanalyzesthedesignofbothhardwareandsoftware,thentakesthesimulationhereonthebasis.Thisdesigncanguaranteetheprecisionmeasurementprecisionandownshighreal-timeperformanceonthebasisofthesystemresourcesavingandtheprocessofprogramming.ithasasimplestrcture,thatislowcost,cleardisplay,stableandreliable.AT89C52;LED;hallsensor目錄TOC\o"1-3"\h\z摘要 IAbstract II1緒論 11.1課題背景、發(fā)展及意義 11.2系統(tǒng)設(shè)計概述 11.3任務(wù)分析與實現(xiàn) 12自行車?yán)锍趟俣扔嫷脑O(shè)計方法與原理 32.1硬件方案設(shè)計 32.2軟件方案設(shè)計 52.3仿真軟件 63自行車?yán)锍趟俣扔嫷挠布O(shè)計 73.1概述 73.2單片機的選型 73.2.1AT89C52單片機總體結(jié)構(gòu) 73.2.2AT89C52中斷系統(tǒng)介紹 93.2.3AT89C52與其他單片機的比較 103.3霍爾傳感器的選型 113.3.1霍爾傳感器A44E 123.3.2A44E的測試特性 123.3.3A44E芯片的引腳及功能 133.3.4A44E的磁輸入檢測 133.4LED顯示器 133.4.1LED的顯示方法 143.5單片機外圍電路的設(shè)計 153.5.1時鐘電路與復(fù)位電路 153.5.3報警電路的設(shè)計 163.6總體電路原理圖 174自行車?yán)锍?速度計的軟件設(shè)計與仿真 194.1自行車?yán)锍?速度計的主程序設(shè)計 194.2中斷子程序的設(shè)計 204.3顯示子程序的設(shè)計 214.4利用Proteus軟件進行系統(tǒng)仿真 22總結(jié) 25參考文獻 26附錄1自行車周長值 27致謝 291.1課題背景、發(fā)展及意義隨著居民生活水平的不斷提高,自行車不再僅僅是普通的運輸、代步的工具,其輔助功能也變得越來越重要。因此,人們希望自行車的娛樂、休閑、鍛煉的功能越來越多,能帶給大家更多的健康和快樂。在這個背景下,自行車?yán)锍瘫砼c速度表作為自行車的一大輔助工具迅速發(fā)展起來??茖W(xué)、美觀、合理設(shè)計自行車?yán)锍瘫砼c速度表有一定的實用價值,它能合理計算出速度及里程數(shù),讓人們清楚的知道當(dāng)前的速度、里程等,使運動者運動適量,達到健康運動與代步的最佳效果。由于單片機具有體積小、功能強、性價比高等特點,把單片機應(yīng)用于里程/速度表的控制中,可完成對里程/速度的計算和控制的要求。采用單片機控制不僅具有控制方便、簡單和靈活性大等優(yōu)點,1.2系統(tǒng)設(shè)計概述本次里程/速度計的設(shè)計以AT89C52單片機為主要控件,利用霍爾元件傳感器檢測自行車輪圈的轉(zhuǎn)數(shù),通過計算和轉(zhuǎn)換,由LED數(shù)碼管以KM、M/S顯示里程、速度。里程只顯示當(dāng)次行駛的路程。速度大于40KM/h時報警提示。本里程/速度計的設(shè)計具有結(jié)構(gòu)簡單,價格低廉,實時顯示,穩(wěn)定可靠等特點。并且還可以擴充,加入E2PROM存儲器芯片,則可以實現(xiàn)全部行駛里程的顯示。1.3任務(wù)分析與實現(xiàn)本設(shè)計的任務(wù)是:以通用的MCS-51單片機為處理核心,用傳感器將車輪的轉(zhuǎn)數(shù)轉(zhuǎn)換為電脈沖,送入單片機。里程及速度的測量,是通過MCS-51的定時器測出總脈沖數(shù)和每轉(zhuǎn)一圈所用的時間,再經(jīng)過單片機的計算得出,其結(jié)果通過LED數(shù)碼管顯示出來。本設(shè)計的總體思路是:

2.1硬件方案設(shè)計測速,首先要解決的是采樣和時間的問題。使用單片機進行測速,可以使用簡單的脈沖計數(shù),只要輪軸每旋轉(zhuǎn)一圈,產(chǎn)生一個或固定的多個脈沖,將脈沖送入單片機進行計算,即可獲得轉(zhuǎn)速信息。常用的測速元件有霍爾傳感器、光電傳感器和光電編碼器光電傳感器對光特別敏感,當(dāng)白天行駛時,外界光源將導(dǎo)致光敏電阻發(fā)出錯誤信號,而且光敏電阻對環(huán)境的要求相當(dāng)高,如果光敏電阻或發(fā)光二極管被泥沙或灰塵所覆蓋,光敏電阻就不能再進行準(zhǔn)確測量;而編碼器必須安裝在車軸上,安裝比較復(fù)雜;霍爾傳感器或干簧管不但不受天氣的影響,即使被泥沙或灰塵所覆蓋也不會有影響,而且安裝方便。所以本設(shè)計采用霍爾元件對里程與速度進行測量,既簡單易行,又經(jīng)濟適用。使用霍爾傳感器獲得脈沖信號,其機械結(jié)構(gòu)也可以做得較為簡單,只要在轉(zhuǎn)軸的齒輪盤上粘上一粒磁鋼,霍爾元件固定在前叉上,當(dāng)車輪轉(zhuǎn)動時霍爾元件靠近磁鋼,就有信號輸出。如果在齒輪盤上粘上多粒磁鋼,就可以實現(xiàn)車輪轉(zhuǎn)動一周,獲得多個脈沖輸出。在年磁鋼時要注意,霍爾傳感器對磁感方向敏感,粘之前可以先手動接近一下傳感器,如果沒有信號輸出,可以換一個方向試試。這種傳感器不怕灰塵、油污,在工業(yè)現(xiàn)場應(yīng)用廣泛。時間可以由單片機的定時功能確定。圖2-1單片機內(nèi)部結(jié)構(gòu)示意圖1)中央處理器(CPU)中央處理器是單片機的最核心部件,主要完成運算和控制功能。2)內(nèi)部存儲器內(nèi)部存儲器包括內(nèi)部數(shù)據(jù)存儲器(內(nèi)部RAM)和內(nèi)部程序存儲器(ROM),存儲器是由大量的寄存器所組成,其中每一個寄存器就稱為一個存儲單元。3)定時/計數(shù)器單片機的定時器和計數(shù)器是同一結(jié)構(gòu),只是計數(shù)器記錄的是單片機外部發(fā)生的事件,由單片機外部電路提供計數(shù)信號;而定時器是由單片機內(nèi)部提供的一個非常穩(wěn)定的計數(shù)信號。4)中斷系統(tǒng)中斷系統(tǒng)在計算機中起著十分重要的作用,是現(xiàn)代計算機系統(tǒng)中廣泛采用的一種實時在技術(shù),能對突發(fā)事件進行及時處理,從而大大提高系統(tǒng)的實時性能。5)串行I/O接口串行I/O接口的數(shù)據(jù)各位按順序傳輸,其特點是需要一對傳輸線,成本低,但速度慢,效率低,適合靜態(tài)顯示。6)并行I/O接口并行I/O接口的數(shù)據(jù)所有位同時傳輸。其特點是傳輸速度快,效率高;但傳輸多少位就需要多少根傳輸線,因此傳送成本高,適合動態(tài)顯示。單片機由于將CPU、內(nèi)存和一些必要的接口集成在一個芯片上,并且面向控制功能將結(jié)構(gòu)作了一定的變化,所以它具有一般芯片不具有的特點:1)體積小、重量輕;2)電源單一、功耗低;3)功能強、價格低;4)全部集成在一塊芯片上,布線短、合理;5)數(shù)據(jù)大部分在單片機內(nèi)部傳送,運行速度快、抗干擾能力強、可靠性高。目前,單片機被廣泛的應(yīng)用于測控系統(tǒng)、工業(yè)自動化、智能儀表、集成智能傳感器、機電一體化產(chǎn)品、家用電器領(lǐng)域、辦公自動化領(lǐng)域、汽車電子與航空航天電子系統(tǒng)以及單片機的多機系統(tǒng)領(lǐng)域。顯示主要用LED顯示器。LED顯示器是由發(fā)光二極管顯示字段的顯示器件,也可稱為數(shù)碼管。顯示器常作為單片機系統(tǒng)中最簡單的輸出設(shè)備,用以顯示單片機系統(tǒng)的運行結(jié)果與運行狀態(tài)等。常用的顯示器主要有LED數(shù)碼顯示器、LCD液晶顯示器和CRT顯示器。由于它具有顯示清晰、亮度高、使用電壓低、壽命長的特點,因此使用非常廣泛。單片機系統(tǒng)中通常使用8段LED數(shù)碼顯示器,其外形及引腳如圖2-2所示。圖2-2LED數(shù)碼顯示器由圖可見8段LED顯示器由8個發(fā)光二極管組成。其中7個長條形的發(fā)光二極管排列成“日”字形,另一個圓點形的發(fā)光二極管在顯示器的右下角作為顯示小數(shù)點用,通過不同的組合可用來顯示不同的數(shù)字,包括A~F等英文字母和小數(shù)點“.”等字樣。LED顯示器有兩種不同的形式:一種是8個發(fā)光二極管的陽極都連在一起的,稱為共陽極LED顯示器,如圖2-3所示;另一種是8個發(fā)光二極管的陰極都連在一起的,稱為共陰極LED顯示器。如圖2-4所示。圖2-3共陰極圖2-4共陽極共陰和共陽結(jié)構(gòu)的LED顯示器各筆劃段名和安排位置是相同的,當(dāng)二極管導(dǎo)通時,相應(yīng)的筆劃段發(fā)亮,由發(fā)亮的筆劃段組合從而顯示各種字符。8個筆劃段dpgfedcba對應(yīng)于1B(8位)的D7、D6、D5、D4、D3、D2、D1、D0,于是用8位二進制碼就可以表示欲顯示字符的字形代碼。2.2軟件方案設(shè)計隨著單片機開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級語言開發(fā),單片機的開發(fā)軟件也在不斷發(fā)展,Keil軟件是目前最流行開發(fā)MCS-51系列單片機的軟件,Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案??梢阅M51系列單片機及派生產(chǎn)品的片內(nèi)部件,支持軟件模擬和用戶系統(tǒng)實時調(diào)試兩種功能。在這個環(huán)境下,可以完成編輯、匯編、編譯、仿真與調(diào)試等整個開發(fā)流程。Keil既可以對匯編語言源程序進行匯編,也可以對C51語言源程序編譯。通過軟件控制單片機的功能是單片機的主要特點和優(yōu)點,程序的設(shè)計要考慮合理性和可行性,遵循模塊化設(shè)計原則,采用自頂向下的設(shè)計方法。模塊化設(shè)計使程序的可讀性好、修改及完善方便。軟件設(shè)計包括主程序、延時子程序、中斷服務(wù)子程序、顯示子程序以及行車過程速度和里程計算子程序等。2.3仿真軟件Proteus嵌入式系統(tǒng)仿真與開發(fā)平臺是目前世界上最先進、最完整的的嵌入式系統(tǒng)設(shè)計與仿真平臺。它是一種可視化的支持多種型號單片機,并且支持與當(dāng)前流行的單片機開發(fā)環(huán)境連接調(diào)試的軟硬件仿真系統(tǒng)。Proteus除了具有和其他EDA工具一樣的原理圖、PCB自動或人工布線及電路仿真功能外,針對微控制系統(tǒng)與外設(shè)的混合電路的電路仿真、軟件仿真、系統(tǒng)協(xié)同仿真也做到了一體化和互動效果,是目前電子設(shè)計愛好者廣泛使用的的電子線路設(shè)計與仿真軟件Protel和Multisim功能的聯(lián)合進一步擴展。是目前唯一能夠?qū)Ω鞣N處理器進行實時仿真、調(diào)試與測試的EAD工具,真正實現(xiàn)了在沒有目標(biāo)原型時就可對系統(tǒng)進行設(shè)計、測試與驗證。Proteus軟件由ISIS和ARES兩個軟件構(gòu)成,其中ISIS是一款便捷的電子系統(tǒng)仿真平臺軟件,ARES是一款高級的布線編輯軟件。Proteus支持許多通用的微控制器,如PIC系列、AVR系列、8051系列等;同時它還支持ARD、PLD及各種外圍芯片的仿真,如基于HD44780芯片的字符LCD、RAM等;具有單步運行、斷點設(shè)置等調(diào)試功能;能與常用編譯器如Keil、IAR、Proton等協(xié)同調(diào)試;有直流電流表/電壓表、交流電壓表/電流表、示波器邏輯分析儀、頻率計等虛擬儀器,為仿真中的測量記錄提供了方便;支持圖形化分析功能,具有頻率特性、傅里葉分析等圖形方式,可將仿真曲線精美地繪制出來。Proteus針對微處理器的仿真方面,不僅可以進行硬件仿真,甚至可以進行軟件仿真,即Proteus可直接在基于原理圖的虛擬原型上編程,并實現(xiàn)軟件代碼級的調(diào)試,同時配合虛擬儀表如示波器、邏輯分析儀等進行測量和檢驗。單從仿真角度來看,Proteus除具有基本仿真功能之外還具有兩個獨特之處:一是對動態(tài)元件的實時仿真,即“人機交互”的仿真;二是虛擬儀表箱的功能,能對電路及各元器件參數(shù)進行實時測量,增加了系統(tǒng)真實性。目前,Proteus已成為流行的單片機系統(tǒng)設(shè)計與仿真平臺,應(yīng)用于各種領(lǐng)域。

3.1概述自行車?yán)锍趟俣扔嫷挠布娐吩O(shè)計部分是基礎(chǔ)部分,它包括信號的采集、數(shù)碼管的顯示、報警提示電路和單片機外圍基本電路的設(shè)計,主要器件是單片機,傳感器和LED數(shù)碼管。單片機是本次設(shè)計的核心部件,它是信號從采集到輸出的橋梁,而且包括計算、定時、信息處理等功能。3.2單片機的選型3.2.1單片機總體結(jié)構(gòu)件,但都是Intel最早的典型產(chǎn)品8051為基礎(chǔ)的,基本的系統(tǒng)結(jié)構(gòu)相同。而這次設(shè)計用到的單片機單片機總體結(jié)構(gòu)3.2.2ES(IE.4)串行口中斷允許位;EA(IE.7)CPU中斷允許位。2,中斷優(yōu)先級控制AT89C52單片機有兩個中斷優(yōu)先級,PS(IP.4)串行口中斷優(yōu)先級設(shè)定位。MCS-51單片機是美國INTE公司于1980年推出的產(chǎn)品,典型產(chǎn)品有8031(內(nèi)部沒有程序存儲器,實際使用方面已經(jīng)被市場淘汰,早已停產(chǎn))、8051(芯片采用HMOS,功耗是630mw是89C51的5倍,實際使用方面已經(jīng)被市場淘汰)和8751(早已停產(chǎn))等通用產(chǎn)品,一直到現(xiàn)在,MCS-51內(nèi)核系列兼容的單片機仍是應(yīng)用的主流產(chǎn)品(比如目前流行的89S51、已經(jīng)停產(chǎn)的89C51等)。其他的公司的51單片機產(chǎn)品都是和MCS-51內(nèi)核兼容的產(chǎn)品而已。同樣的一段程序,在各個單片機廠家的硬件上運行的結(jié)果都是一樣的,如ATMEL的89C51(已經(jīng)停產(chǎn))、89S51,PHILIPS(菲利浦),和WINBOND(華邦)等。ATMEL公司的AT89C52單片機,在原基礎(chǔ)上增強了許多特性,如時鐘,更優(yōu)秀的是由Flash(程序存儲器的內(nèi)容至少可以改寫1000次)存儲器取帶了原來的ROM(一次性寫入)。在市場上,89C51受到了PIC單片機陣營的挑戰(zhàn),89C51最致命的缺陷在于不支持ISP(在線更新程序)功能,必須加上ISP功能等新功能才能更好延續(xù)MCS-51的傳奇。AT89C52就是在這樣的背景下取代89C51的,現(xiàn)在,AT89C52目前已經(jīng)成為了實際應(yīng)用市場上新的寵兒,作為市場占有率第一的Atmel目前公司已經(jīng)停產(chǎn)AT89C51,將用AT89C52代替。AT89C52在工藝上進行了改進,采用0.35新工藝,成本降低,而且將功能提升,增加了競爭力。89SXX可以像下兼容89CXX等51系列芯片。同時,Atmel不再接受89CXX的定單,大家在市場上見到的89C51實際都是Atmel前期生產(chǎn)的巨量庫存而以。AT89C52相對于其他51系列單片機1)新增加很多功能,性能有了較大提升,價格基本不變,甚至比89C51更低!2)ISP在線編程功能,這個功能的優(yōu)勢在于改寫單片機存儲器內(nèi)的程序不需要把芯片從工作環(huán)境中剝離。是一個強大易用的功能。3)具有更高工作頻率,從而具有了更快的計算速度。4)具有雙工UART串行通道。5)內(nèi)部集成看門狗計時器,不再需要像89C51那樣外接看門狗計時器單元電路。6)雙數(shù)據(jù)指示器。7)電源關(guān)閉標(biāo)識。8)全新的加密算法,這使得對于AT89C529)兼容性方面:向下完全兼容51全部字系列產(chǎn)品。比如8051、89C51等等早期MCS-51兼容產(chǎn)品。也就是說所有教科書、網(wǎng)絡(luò)教程上的程序,不論教科書上采用的單片機是8051還是89C51還是MCS-51等等,在AT89C52上一樣可以照常運行,這就是所謂的向下兼容3.3霍爾傳感器的選型3.3.1霍爾傳感器A44E單單片機小磁鐵車輪霍爾傳感器3.4LED顯示器根據(jù)本設(shè)計需要,需要選擇一個四位的顯示器,第一位顯示小數(shù)部分,第二位顯示的是個位,第三位顯示十位,第四位顯示百位。因此,本設(shè)計選擇7SEG-MPX4-CA

4位二極數(shù)碼管顯示器,是共陽極,如圖3-7所示。共陽極數(shù)碼管的公共陽極接+5V,當(dāng)各段陰極上的電平為“0”時,該段點亮,電平為“1”時,該段熄滅。圖3-77SEG-MPX4-CA顯示器3.4.1LED的顯示方法在單片機應(yīng)用系統(tǒng)中使用LED顯示塊構(gòu)成N位LED顯示器。N位LED顯示器有N根位選線和8*N根段選線。根據(jù)顯示方式不同,位選線與段選線的連接方法不同。段選線控制字符選擇,位選線控制顯示位的亮。LED顯示器有兩種顯示方式:動態(tài)顯示驅(qū)動和靜態(tài)顯示驅(qū)動。1)靜態(tài)顯示驅(qū)動:靜態(tài)驅(qū)動也稱直流驅(qū)動。靜態(tài)驅(qū)動是指每個數(shù)碼管的每一個段碼都由一個單片機的I/O埠進行驅(qū)動。靜態(tài)驅(qū)動的優(yōu)點是編程簡單,顯示亮度高,缺點是占用I/O埠多,如驅(qū)動5個數(shù)碼管靜態(tài)顯示則需要5×8=40根I/O埠來驅(qū)動,要知道一個89S51單片機可用的I/O埠才32個呢。故實際應(yīng)用時必須增加驅(qū)動器進行驅(qū)動,增加了硬體電路的復(fù)雜性。2)動態(tài)顯示驅(qū)動:數(shù)碼管動態(tài)顯示介面是單片機中應(yīng)用最為廣泛的一種顯示方式之一,動態(tài)驅(qū)動是將所有數(shù)碼管的8個顯示筆劃"a,b,c,d,e,f,g,dp"的同名端連在一起,另外為每個數(shù)碼管的公共極COM增加位元選通控制電路,位元選通由各自獨立的I/O線控制,當(dāng)單片機輸出字形碼時,所有數(shù)碼管都接收到相同的字形碼,但究竟是那個數(shù)碼管會顯示出字形,取決于單片機對位元選通COM端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制打開,該位元就顯示出字形,沒有選通的數(shù)碼管就不會亮。透過分時輪流控制各個LED數(shù)碼管的COM端,就使各個數(shù)碼管輪流受控顯示,這就是動態(tài)驅(qū)動。在輪流顯示過程中,每位元數(shù)碼管的點亮?xí)r間為1~2ms,由于人的視覺暫留現(xiàn)象及發(fā)光二極體的余輝效應(yīng),盡管實際上各位數(shù)碼管并非同時點亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示資料,不會有閃爍感,動態(tài)顯示的效果和靜態(tài)顯示是一樣的,能夠節(jié)省大量的I/O埠,而且功耗更低。要顯示某字符,首先要把這個字符轉(zhuǎn)換成相應(yīng)的字形碼,然后再通過串行口發(fā)送到芯片。芯片把串行口收到的數(shù)變?yōu)椴⑿休敵黾拥綌?shù)碼管上。共陰極共陽極字形碼表如表3-2所示。表3-2共陰極共陽極字形碼表字型共陽極代碼共陰極代碼字型共陽極代碼共陰極代碼0C0H3FH990H6FH1F9H06HA88H77H2A4H5BHb83H7CH3B0H4FHCC6H39H499H66HdA1H5EH592H6DHE86H79H682H7DHF8EH71H7F8H07H滅FFH00H880H7FH在多位LED顯示時,為了簡化電路,降低成本,將所有位的段選線并聯(lián)在一起,由一個8位I/O口控制。3.5單片機外圍電路的設(shè)計3.5.1時鐘電路與復(fù)位電路時鐘電路是單片機的心臟,它控制著計算機的工作節(jié)奏,可以通過提高時鐘頻率來提高CUP的速度。目前51系列單片機都采用CMOS工藝,允許的最高頻率是隨型號而變化的(器件上表明)。最高頻率達60MHz。89C52單片機的內(nèi)部有一個可控的反向放大器,引腳XTAL1、XTAL2為反向放大器的輸入端和輸出端,在XTAL1、XTAL2上外接晶振(或陶瓷諧振器)和電容便組成振蕩器。如圖3-8AT89C52的時鐘電路框圖與復(fù)位電路圖3-8AT89C52的時鐘電路框圖與復(fù)位電路圖中,電容C1、C2的典型值是30pF±10pF(晶振)或40pF±10pF(陶瓷諧振器)。振蕩器頻率主要取決于晶振(或陶瓷諧振器)的頻率,但必須小于器件所允許的最高頻率。振蕩器的工作受PD(PCON.1)控制,復(fù)位后以后PD=0,振蕩器工作,可由軟件置“1”PD,使振蕩器停止振蕩,從而使整個單片機停止工作,以達到節(jié)電目的。計算機在啟動運行時都需要復(fù)位,使CPU和其他部件都置一個確定的初始狀態(tài),并從這個狀態(tài)開××始工作。AT89C52復(fù)位以后,內(nèi)部寄存器初態(tài)如表3-3所示。表3-3AT89C52復(fù)位以后內(nèi)部寄存器初態(tài)寄存器內(nèi)容寄存器內(nèi)容PC0000HTMOD00HACC00HTCON00HB00HTH000HPSW00HTL000HSP07HTH100HDPTR0000HTL100HP0~P30FFHSCON00HIP(××000000B)SBUF不定IE(0×000000B)PCON(0×××0000B)TL200HRCAP2L00HTH200HRCAP2H00HT2CON00HT2MOD(××××××00B)AT89C52單片機的復(fù)位引腳RST是史密特觸發(fā)輸入腳,內(nèi)部有一個拉低電阻(值為80K~300K)。當(dāng)振蕩器起振以后,在RST引腳上輸入2個機器周期以上的高電平,器件便進入復(fù)位狀態(tài),此時ALE、PSEN、P0、P1、P2、P3輸出高電平,RST上輸入返回低電平以后,便退出復(fù)位狀態(tài)開始工作。利用RST的這個特性便可以設(shè)計復(fù)位電路。在加電的瞬間,電容通過內(nèi)部電阻充電,在RST端出現(xiàn)充電正脈沖,只要正脈沖寬度足夠?qū)?,就能使AT89C52有效復(fù)位。RST在加電時應(yīng)保持高電平時間包括Vcc上升時間和振蕩器起振時間,振蕩器起振時間和頻率有關(guān),若Vcc的上升時間為10ms,振蕩器的頻率取12MHz,則復(fù)位電容C的典型值為1uF。3.5.3報警電路的設(shè)計本次設(shè)計的報警采用蜂鳴報警,報警的控制由單片機的P2.5端口控制,系統(tǒng)初始化數(shù),由軟件清0P2.5口。當(dāng)實時速度超過預(yù)定值時蜂鳴器響,指示燈閃爍,提示應(yīng)該減速,當(dāng)速度減到小于預(yù)定值時,報警停止。本設(shè)計中自行車的周長值是由單片機的P1.2到P1.5輸入的,每個端口代表一個固定的周長值。系統(tǒng)運行時,如果P1.2到P1.5沒有輸入,則報警,指示燈閃爍提示;當(dāng)有一個輸入時,則關(guān)閉閃爍提示。報警電路如圖3-9所示。圖3-9報警電路如3.6總體電路原理圖自行車?yán)锍?速度計采用AT89C52單片機作控制,速度及里程傳感器采用霍爾元件,其電器原理如圖3-11所示。PO口和P2口用于七段LED顯示器的段碼及掃描輸出,在現(xiàn)實里程時,第一位小數(shù)點用12腳P2.4口控制點亮。P1.1口和P1.0口分別用于顯示里程狀態(tài)和速度狀態(tài)。P1.2、P1.3、P1.4和P1.5分別用于設(shè)置輪圈的大小。在程序中設(shè)計為當(dāng)P1.5為0時,則表示自行車輪圈周長為150CM,以此類推,P1.4為192CM,P1.3為200CM,P1.2為210CM。P1.6口的開關(guān)用于確定顯示的方式,當(dāng)開關(guān)閉合時,顯示速度;打開時顯示里程。第12腳外中斷0用于對輪子圈數(shù)的計數(shù)輸入,輪子每轉(zhuǎn)一圈,霍爾傳感器輸出一個低電平脈沖,由于在Proteus中沒有相應(yīng)的A44E霍爾傳感器,因此在本原理圖中用一個按鈕代替A44E霍爾傳感器;13腳輸出用于速度超速時和沒有周長輸入時的報警。其原理圖如3-11所示。其周長值對應(yīng)表見附表1。

4自行車?yán)锍?速度計的軟件設(shè)計與仿真4.1自行車?yán)锍?速度計的主程序設(shè)計在主程序模塊中,需要完成對芯片各接口的初始化、各存儲單元的初始化、中斷向量的設(shè)計以及開中斷、循環(huán)等等待工作。另外,在主程序中還需要設(shè)置啟動/清除標(biāo)志寄存器、里程寄存器、速度寄存器,然后主程序根據(jù)各標(biāo)志寄存器的內(nèi)容,分別完成啟動、清除、計程和計數(shù)等不同的操作。P1.0和P1.1口分別用于顯示里程狀態(tài)和速度狀態(tài)。P1.2、P1.3、P1.4、P1.5口分別用于設(shè)置輪圈的大小,低電平有效。P2.5是用于里程和速度的切換,低電平顯示速度,高電平顯示里程。中斷0用于對輪子圈數(shù)的輸入,輪子每轉(zhuǎn)一圈,霍爾傳感器輸出一個低電平脈沖。將根據(jù)里程寄存器的內(nèi)容計算和判斷行駛里程。T0中斷用于定50ms中斷,當(dāng)輪子轉(zhuǎn)一圈時,記錄中斷的次數(shù)n,用輪子周長除以次數(shù)n與50ms的乘積,就能得出實時速度。其程序流程圖如圖4-1所示。圖4-1主流程圖4.2中斷子程序的設(shè)計定時中斷是為了滿足定時或計數(shù)的需要而設(shè)置的。在單片機內(nèi)部有兩個定時/計數(shù)器,以對其中的計數(shù)結(jié)構(gòu)進行計數(shù)的方法,來實現(xiàn)定時或計數(shù)功能。當(dāng)發(fā)生計數(shù)益出時,即表明

溫馨提示

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

最新文檔

評論

0/150

提交評論