基于AT89C52單片機的自行車里程與速度計的設計_第1頁
基于AT89C52單片機的自行車里程與速度計的設計_第2頁
基于AT89C52單片機的自行車里程與速度計的設計_第3頁
基于AT89C52單片機的自行車里程與速度計的設計_第4頁
基于AT89C52單片機的自行車里程與速度計的設計_第5頁
已閱讀5頁,還剩19頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

自行車里程與速度計的設計本論文主要闡述一種基于單片機的自行車里程/速度計的設計。主要分為三個部分:硬件設計,軟件設計和模擬仿真。硬件設計以AT89C52單片機為核心,主要包括復位電路、顯示電路、時鐘電路、報警電路的設計。本設計采用霍爾傳感器測量自行車轉速脈沖,經處理后由LED數碼管顯示,最多可超速時發出光、語音報警提示。軟件設計主要是通過單片機編程軟件KeilC設計計算自行車行駛里程和實時速度的程序,以及速度和里程的顯示程序;模擬仿真是利用仿真軟件Proteus對所設計的硬件電路和程序進行測試。本論文對設計當中所需元件作了詳細介紹,對設計中存在的問題進行了說明,而后對硬件和軟件部分的設計和實現作了認真的分析,并在此基礎上進行了控制仿真。本設計具有結構簡單,成本低廉,顯示清晰,穩定可靠等優點。關鍵詞: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課題背景、發展及意義 11.2系統設計概述 11.3任務分析與實現 12自行車里程速度計的設計方法與原理 32.1硬件方案設計 32.2軟件方案設計 52.3仿真軟件 63自行車里程速度計的硬件設計 73.1概述 73.2單片機的選型 73.2.1AT89C52單片機總體結構 73.2.2AT89C52中斷系統介紹 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單片機外圍電路的設計 153.5.1時鐘電路與復位電路 153.5.3報警電路的設計 163.6總體電路原理圖 174自行車里程/速度計的軟件設計與仿真 194.1自行車里程/速度計的主程序設計 194.2中斷子程序的設計 204.3顯示子程序的設計 214.4利用Proteus軟件進行系統仿真 22總結 25參考文獻 26附錄1自行車周長值 27致謝 291.1課題背景、發展及意義隨著居民生活水平的不斷提高,自行車不再僅僅是普通的運輸、代步的工具,其輔助功能也變得越來越重要。因此,人們希望自行車的娛樂、休閑、鍛煉的功能越來越多,能帶給大家更多的健康和快樂。在這個背景下,自行車里程表與速度表作為自行車的一大輔助工具迅速發展起來。科學、美觀、合理設計自行車里程表與速度表有一定的實用價值,它能合理計算出速度及里程數,讓人們清楚的知道當前的速度、里程等,使運動者運動適量,達到健康運動與代步的最佳效果。由于單片機具有體積小、功能強、性價比高等特點,把單片機應用于里程/速度表的控制中,可完成對里程/速度的計算和控制的要求。采用單片機控制不僅具有控制方便、簡單和靈活性大等優點,1.2系統設計概述本次里程/速度計的設計以AT89C52單片機為主要控件,利用霍爾元件傳感器檢測自行車輪圈的轉數,通過計算和轉換,由LED數碼管以KM、M/S顯示里程、速度。里程只顯示當次行駛的路程。速度大于40KM/h時報警提示。本里程/速度計的設計具有結構簡單,價格低廉,實時顯示,穩定可靠等特點。并且還可以擴充,加入E2PROM存儲器芯片,則可以實現全部行駛里程的顯示。1.3任務分析與實現本設計的任務是:以通用的MCS-51單片機為處理核心,用傳感器將車輪的轉數轉換為電脈沖,送入單片機。里程及速度的測量,是通過MCS-51的定時器測出總脈沖數和每轉一圈所用的時間,再經過單片機的計算得出,其結果通過LED數碼管顯示出來。本設計的總體思路是:

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

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

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

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

溫馨提示

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

評論

0/150

提交評論