基于單片機的出租車計價器設計_第1頁
基于單片機的出租車計價器設計_第2頁
基于單片機的出租車計價器設計_第3頁
基于單片機的出租車計價器設計_第4頁
基于單片機的出租車計價器設計_第5頁
已閱讀5頁,還剩49頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

畢業設計(論文)PAGEPAGEI摘要現在各大中城市出租車行業都已普及自動計價器,所以計價器技術的發展已成定局。而部分小城市尚未普及,但隨著城市建設加快,象征著城市面貌的出租車行業也將加速發展,計價器的普及也是毫無疑問的,所以未來汽車計價器的市場還是十分有潛力的。本系統以STC89C54單片機為核心,用電機模擬車輪運轉,A04E霍爾傳感器測電機轉數。文章詳細介紹了出租車計價器的硬件電路和軟件設計。硬件部分利用霍爾元件將電機每轉一圈的脈沖數傳入單片機系統,然后單片機系統將信號經過處理送顯示。軟件部分用C語言進行編程,采用模塊化設計思想。該系統實現了對出租車里程的測量統計,并能將出租車的里程數、候時時間、時距并計總價用LCD實時顯示。關鍵詞:里程,霍爾元件,LCD顯示,時距并計AbstractItisthemajorcitiesinthetaxiindustryhasuniversalautomaticmeternow,andmetertechnologydevelopmentisaforegoneconclusion.Andsomesmallcitiesnotyetuniversal,butwithincreasingspeedupurbanconstruction,asymboloftaxiindustrywillalsoacceleratedevelopment,andthepopularitymeterisnodoubt,therefore,thefutureoftheautomobilemarketvaluationisstillpotential.BySTC89C54askernel,electricmotorimitatingwheelrevolving,usingA04EHallelementtomeasurerevolution,themeasureandstatisticareachieved.Inthisarticle,thehardwarecircuitandsoftwaredesignoftaximeterareintroducedindetail.Aboutthehardware,thepulsenumberistransmittedofonecycleoftheelectricmotorintoSingleChipMicrocomputersystem.ThenthesignalprocessedbySingleChipMicrocomputersystemissenttodisplayscream.Aboutthesoftware,inClanguage,theprogramisdesignedinthemodeofmodules.ThesystemhasrealizedthetaximileagewaitingtimeandtotalpriceoftimeandmileagecountingtogethercanbedisplayedonLCD.Keywords:Mileage,Hallelement,LCD,Timeandmileagecountingtogether目錄第一章緒論 11.1課題背景 11.2課題的主要任務及內容 2第二章出租車計價器系統總體方案設計 42.1任務分析與實現 42.2出租車計價器系統硬件方案設計 42.2.1里程測量傳感器的設計 52.2.2方案的確定 72.3出租車計價器系統軟件方案設計 7第三章出租車計價器系統硬件電路設計 93.1概述 93.2傳感器及其測量系統 93.2.1霍爾傳感器的測量原理 103.2.2集成開關型霍爾傳感器 113.3單片機的原理及應用 123.3.1單片機原理簡介 123.3.2單片機的引腳功能介紹 133.3.3單片機中斷系統介紹 163.3.4單片機定時/計數功能介紹 183.4單片機外圍電路的設計 193.4.1時鐘電路的設計 193.4.2復位電路的設計 203.4.3顯示電路的設計 22第四章出租車計價器系統軟件程序設計 254.1概述 254.2出租車計價器系統總體程序設計 254.3中斷子程序的設計 264.4數據處理子程序的設計 27第五章系統調試與分析 295.1硬件電路的搭建 295.2調試故障及原因分析 295.3調試結果 295.3.1候時顯示 295.3.2里程顯示 305.3.3停車總價顯示 31第六章社會經濟效益分析 32結束語 33致謝 34參考文獻 35附錄Ⅰ出租車計價器系統硬件系統原理圖 37附錄Ⅱ元件清單 38附錄Ⅲ程序清單 39第一章緒論1.1課題背景隨著我國經濟的迅速發展,人民生活水平的顯著提高,城市的交通日趨完善,出租車計價器的應用也越來越廣泛。雖然私家車的擁有量在大幅度地提高,但是出租車還是在我國的交通運輸中承擔著重要的角色,出租車計價器是出租車上必不可少的重要儀器,它是負責出租車營運收費的專用智能化儀表。用戶不僅要求計價器性能穩定、計價準確而且對它的要求也越來越高。近年來,我國出租汽車行業迅猛發展,出租汽車已經成為我國城市公共交通的重要組成部分和現代化城市必備的基礎設施,成為人們工作、生活中不可缺少的交通工具。出租汽車服務行業和出租汽車計價器緊密相關,因為出租汽車必須安裝出租汽車計價器才能投入營運。出租汽車計價器是一種能根據乘客乘坐汽車行駛距離和等候時間的多少進行計價,并直接顯示車費值的計量器具。計價器是出租汽車的經營者和乘坐出租汽車的消費者之間用于公平貿易結算的工具,因而計價器計價準確與否,直接關系到經營者和消費者的經濟利益。依據國家有關法律、法規,出租汽車計價器是列入國家首批強制檢定的工作計量器具之一,也是近年來國家質量技術監督部門強化管理的六類重點計量器具之一。出租車行業在我國是八十年代初興起的一項新興行業,隨著我國國民經濟的高速發展,出租汽車已成為城市公共交通的重要組成部分。多年來國內普遍使用的計價器只具備單一的計量功能。目前全世界的計價器中有90%為臺灣所生產。現今我國生產計價器的企業有上百家,主要是集中在北京,上海,沈陽和廣州等地。現在出租車是城市交通的重要組成部分,行業健康和發展也獲得越來越多的關注。汽車計價器是乘客與司機雙方的交易準則,它是出租車行業發展的重要標志,是出租車中最重要的工具。它關系著交易雙方的利益。具有良好性能的計價器無論是對廣大出租車司機朋友還是乘客來說都是很必要的。而自從單片微型計算機1976年問世以來發展非常迅速,現在已成為微型計算機一個很重要的分支,在現實生活中應用越來越廣泛,已經對人類產生了巨大的影響,尤其是美國Intel公司的MCS—51系列單片機,由于其集成度高、處理功能強、性能價格比高、可靠性高、系統結構簡單,可以靈活的與其他芯片組成眾多的測量電路用于速度、溫度、深度、高度、濕度、光強等方面的測量和研究等特點,在我國現代化生活、生產中已經得到了廣泛的應用,如在工業檢測控制、儀器儀表、電子工業、機電一體化等眾多領域取得了令人矚目的成果。本設計利用MCS—51系列單片機擴展方便、可靠性能高、處理功能強、速度高等特點,實現對出租車里程的測量。1.2課題的主要任務及內容本課題主要任務是利用霍爾元件、單片機等部件設計一個可用LCD實時顯示里程、候時時間和總價的出租車計價器系統。基于此任務,本課題的內容主要分為軟件和硬件兩大部分,在遵循軟硬件相結合的原則下,先熟悉軟件環境,然后進行硬件電路設計,再根據設計的硬件進行軟件編程,進行模塊化設計,并對各模塊進行調試,再焊接電路板,最后軟硬件進行調試。本文主要介紹了出租車計價器系統的設計思想、電路原理、方案論證以及元件的選擇等內容,整體上分為硬件部分設計和軟件部分設計。本文首先扼要介紹了該課題的產生背景、主要任務和內容;接著針對該課題的任務進行方案論證,包括硬件方案和軟件方案的設計;繼而具體介紹了出租車計價器系統的硬件設計,包括傳感器的選擇、單片機的選擇、顯示電路的設計;然后闡述了該出租車計價器系統的軟件設計,包括數據處理子程序的設計、顯示子程序的設計;最后針對仿真過程和硬件搭建過程中遇到的問題進行了具體說明與分析,對本次設計進行了系統的總結,并對其進行了綜合經濟效益分析。本文的核心部分是第3、4、5章。這3章內容具體介紹了硬件設計過程、軟件設計過程和系統仿真過程。具體的硬件電路包括STC89C54單片機的外圍電路以及LCD顯示電路等。在電路板上每一個硬件電路焊接完成后,每一部分單獨調試,在各個部分調試成功后,聯調整個硬件電路,最后做出分析,得出結論。軟件設計包括:芯片的初始化程序、定時中斷采樣子程序、顯示子程序等,軟件采用C語言編寫,軟件設計的思想主要是自頂向下,模塊化設計,各個子模塊逐一設計,再分別進行調試,最后聯調整個程序,判斷是否達到預期的要求,得出結論。仿真是整個設計的重要一環,也是設計能否實現的關鍵。第二章出租車計價器系統總體方案設計2.1任務分析與實現本次畢業設計的題目是:出租車計價器系統設計。其設計的任務是:以通用MCS-51單片機為處理核心,用傳感器將車輪的轉數轉換為電脈沖,進行處理后送入單片機。里程的測量,是經過MCS-51的定時/計數器測出總的脈沖數乘以每圈5米,再經過單片機的計算得出的,其結果通過LCD顯示器顯示出來。本系統總體思路如下:假定輪圈的周長為L,在輪圈上安裝m個永久磁鐵,則測得的里程值最大誤差為L/m。經綜合分析,本設計中取m=1。當輪子每轉一圈,通過開關型霍爾元件傳感器采集到一個脈沖信號,并從引腳P3.3外部中斷1端輸入,傳感器每獲取一個脈沖信號即對系統提供一次計數中斷。每次中斷代表車輪轉動一圈,中斷數n與輪圈的周長L的乘積為里程值。要求達到的各項指標及實現方法如下:(1)利用霍爾傳感器產生里程數的脈沖信號。(2)對脈沖信號進行計數。 實現:利用單片機自帶的計數器T1對霍爾傳感器脈沖信號進行計數。(3)對數據進行處理,要求用LCD顯示里程、候時時間和總價。實現:利用軟件編程,對數據進行處理得到需要的數值。最終實現目標:出租車計價器具有里程、候時時間與總價顯示功能,采用單片機作控制,顯示電路可顯示里程及總價。整個設計過程包括硬件電路的搭建,軟件的編程,系統的調試,調試通過后,固化程序,脫離開發系統運行。2.2出租車計價器系統硬件方案設計自從1971年微型計算機問世以來,隨著大規模集成電路技術的不斷進步,微型機主要向兩個方向發展:一個向高速度,高性能的高檔微型計算機方向發展。一個向穩定可靠,小而廉價的單片機方向發展。所謂的單片機,就是把中央處理器CPU、只讀存儲器ROM、定時/計數器以及I/O接口電路等集成在一塊集成電路芯片上的微型計算機。從組成和功能上看,它具有微型計算機的含義。單片機由于將CPU、內存和一些必要的接口集成到一個芯片上,并且面向控制功能將結構作了一定的優化,所以它有一般芯片不具有的特點:(1)體積小、重量輕;(2)電源單一、功耗低;(3)功能強、價格低;(4)全部集成在一塊芯片上,布線短、合理;(5)數據大部分在單片機內傳送,運行速度快、抗干擾能力強、可靠性高。在本系統中采用STC公司的89C54單片機,它具有功能豐富、性能穩定的特點。2.2.1里程測量傳感器的設計(1)里程傳感器的設計里程測量傳感器的選擇有以下幾種方案:使用光敏電阻對里程進行測量、利用編碼器對車輪的圈數進行測量、利用霍爾傳感器對里程進行測量、利用干簧管型傳感感器測量里程。這幾種方案都是通過出租車車輪轉動產生脈沖數,然后根據脈沖數計算里程。=1\*GB3①霍爾傳感器霍爾傳感器是對磁敏感的傳感元件,常用于信號采集的有A04E、CS3020、CS3040等,這類傳感器是一個3端器件,外形與三極管相似,只要接上電源、地,即可工作,通常是集電極開路(OC門)輸出,工作電壓范圍寬,使用非常方便。A04E的外形如圖2.1所示。1-Vcc2-GND3-OUT圖2.1A04E外形圖使用霍爾傳感器獲得脈沖信號,其機械結構也可以做得較為簡單,只要在轉軸的齒輪盤上粘上一粒磁鋼,霍爾元件固定在前叉上,當車子轉動時霍爾元件靠近磁鋼,就有信號輸出,轉軸旋轉時,就會不斷地產生脈沖信號輸出。如果在齒輪盤上粘上多粒磁鋼,可以實現旋轉一周,獲得多個脈沖輸出。在粘磁鋼時要注意,霍爾傳感器對磁場方向敏感,粘之前可以先手動接近一下傳感器,如果沒有信號輸出,可以換一個方向再試。這種傳感器不怕灰塵、油污,在工業現場應用廣泛。=2\*GB3②光電傳感器光電傳感器是應用非常廣泛的一種器件,有各種各樣的形式,如透射式、反射式等,基本的原理就是當發射管光照射到接收管時,接收管導通,反之關斷。以紅外光電傳感器為例,當有物體擋在紅外光電發光二極管和高靈敏度的光電晶體管之間時,傳感器將會輸出一個低電平,而當沒有物體擋在中間時則輸出為高電平,從而形成一個脈沖。該系統在出租車后輪的軸處保持著與輪子旋轉切面平行的方向延伸附加一個鋁盤,在這個鋁盤的邊沿處挖出若干個圓形過孔,把傳感器的檢測部分放在圓孔的圓心位置。每當鋁盤隨著后輪旋轉的時候,傳感器將向外輸出若干個脈沖。=3\*GB3③光電編碼器光電編碼器的工作原理與光電傳感器一樣,不過它已將光電傳感器、電子電路、碼盤等做成一個整體,只要用連軸器將光電傳感器的軸與轉軸相連,就能獲得多種輸出信號。它廣泛應用于數控機床、回轉臺、伺服傳動、機器人、雷達、軍事目標測定等需要檢測角度的裝置和設備中。2.2.2方案的確定光敏電阻對光特別敏感,當白天行駛時,外界光源將導致光敏電阻發出錯誤信號;光敏電阻對環境的要求相當高,如果光敏或發光二極管被泥沙或灰塵所覆蓋,光敏電阻就不能再進行準確測量;而編碼器必須安裝在車軸上,安裝較為復雜;霍爾元件或干簧管不但不受天氣的影響,即使被泥沙或灰塵覆蓋也不會有影響,而且安裝方便。所以本設計采用霍爾元件對里程與速度進行測量,既簡單易行,又經濟適用。本系統的硬件系統框圖如圖2.2所示圖2.2系統原理框圖其中LCD型號為1602,單片機型號為STC89C54,霍爾傳感器型號為A04E,鍵盤有調整起價按鍵、停車按鍵和系統復位按鍵三個按鍵。2.3出租車計價器系統軟件方案設計硬件是基礎,軟件是靈魂。通過軟件控制單片機的功能是單片機的主要特點和優點,程序的設計要考慮合理性和可讀性。程序遵循模塊化設計的原則,采用自頂向下的設計方法。即先考慮整體目標,明確整體任務,然后把整體任務分成一個個子任務,子任務再分成子子任務,這樣逐層細分,同時分析層次間的關系與同一層次各任務間的關系,最后擬訂出各任務的細節。模塊化設計使程序的可讀性好、修改及完善方便。軟件設計包括主程序、行車過程中里程表算子程序、中斷服務子程序、顯示子程序等等。中斷子程序是將傳感器產生的信號接入外部中斷1,利用中斷和定時器對分別對里程進行累加、每轉5周的時間進行測量。數據處理子程序是將進入單片機的脈沖信號與實際要顯示值之間有一定的對應關系,經過軟件編程顯示所需要的值。顯示子程序是將數據處理的結果送顯示器顯示。本系統軟件總體流程圖如圖2.3所示。圖2.3軟件總體流程圖圖中暫停與否通過電機是否暫停來判斷,是否到達目的地通過鍵盤上的停止按鍵控制,按下停止按鍵即為到達目的地。第三章出租車計價器系統硬件電路設計3.1概述出租車計價器系統的硬件電路設計是本次畢業設計的基礎部分,它包括信號的捕獲、放大、整形,單片機的計算處理,LCD的實時顯示和單片機外圍基本電路的設計。而本章的兩大主要器件就是傳感器和單片機了。傳感器在人們研究自然現象、規律以及生產實踐活動中,起著非常重要的作用。特別是在當今,科學技術的發展使人類進入了一個信息時代,在利用信息的過程中,首先要解決的就是獲取準確可靠的信息。傳感器是獲取自然或生產領域中信息的關鍵器件,是現代信息系統和各種設備不可缺少的信息采集工具。磁傳感器是一種將磁學量信號轉變為電信號的器件或裝置。隨著信息產業、工業自動化、醫療儀器等的飛速發展和計算機應用的普及,需要大量的傳感器將被測或被控的非電信號轉換成可與計算機兼容的電信號。作為輸入信號,這就給磁傳感器的快速發展提供了機遇,形成了磁傳感器的產業。其中最具代表的磁傳感器就是霍爾傳感器,在自動檢測系統中,利用霍爾傳感器測轉數是一種最基本的測量工作。自從1971年微型計算機問世以來,隨著大規模集成電路技術的不斷進步,微型機主要向兩個方向發展:一個向高速度,高性能的高檔微型計算機方向發展。一個向穩定可靠,小而廉價的單片機方向發展。所謂的單片機,就是把中央處理器CPU、只讀存儲器ROM、定時/計數器以及I/O接口電路等集成在一塊集成電路芯片上的微型計算機,可見它的功能非常強大。單片機是本次設計的核心部件,它是信號從采集到輸出的橋梁,而且肩負計算、定時、信息處理等功能。下面我們就具體介紹一下硬件電路設計的過程。3.2傳感器及其測量系統本次設計信號的捕獲采用的是霍爾傳感器,霍爾器件是一種磁傳感器。用它們可以檢測磁場及其變化,可在各種與磁場有關的場合中使用。霍爾器件以霍爾效應為其工作基礎。

霍爾器件具有許多優點,它們的結構牢固、體積小、重量輕、壽命長、安裝方便、功耗小、頻率高(可達1MHz)、耐震動、不怕灰塵、油污、水汽及煙霧等的污染或腐蝕。霍爾線性器件的精度高、線性度好;霍爾開關器件無觸點、無磨損、輸出波形清晰、無抖動、無回跳、位置重復精度高。取用了各種補償和保護措施的霍爾器件工作溫度范圍寬,可達-55℃~150℃。按照霍爾器件的功能可將它們分為:霍爾線性器件和霍爾開關器件,前者輸出模擬量,后者輸出數字量。按被檢測對象的性質可將它們的應用分為:直接應用和間接應用。前者是直接檢測出受檢測對象本身的磁場或磁特性,后者是檢測受檢對象上人為設置的磁場,用這個磁場來作被檢測的信息的載體。通過它,將許多非電、非磁的物理量例如力、力矩、壓力、應力、位置、位移、速度、加速度、角度、角速度、轉數、轉速以及工作狀態發生變化的時間等,轉變成電量來進行檢測和控制。3.2.1霍爾傳感器的測量原理霍爾傳感器是利用霍爾效應制成的一種磁敏傳感器。在置于磁場中的導體或半導體通入電流I,若電流垂直磁場B,則在與磁場和電流都垂直的方向上會出現一個電勢差Uh,這種現象稱為霍爾效應。利用霍爾效應制成的元件稱為霍爾元件。因為它具有結構簡單、頻率響應寬、靈敏度高、測量線性范圍大、抗干擾能力強以及體積小、使用壽命長等一系列特點,因此被廣泛應用于測量、自動控制及信息處理等領域。霍爾效應原理圖如圖3.1所示。圖3.1霍爾效應原理圖3.2.2集成開關型霍爾傳感器A04E集成霍爾開關由穩壓器A、霍爾電勢發生器(即硅霍爾片)B、差分放大器C、施密特觸發器D和OC門輸出E五個基本部分組成,如圖3.2(a)所示。(1)、(2)、(3)代表集成霍爾開關的三個引出端點。在電源端加電壓Vcc,經穩壓器穩壓后加在霍爾電勢發生器的兩端,根據霍爾效應原理,當霍爾片處在磁場中時,在垂直于磁場的方向通以電流,則與這二者相垂直的方向上將會產生霍爾電勢差VH輸出,該VH信號經放大器放大后送至施密特觸發器整形,使其成為方波輸送到OC門輸出。當施加的磁場達到工作點時,觸發器輸出高電壓(相對于地電位),使三極管導通,此時OC門輸出端輸出低電壓,通常稱這種狀態為開。當施加的磁場達到釋放點時,觸發器輸出低電壓,三極管截止,使OC門輸出高電壓,這種狀態為關。這樣兩次電壓變換,使霍爾開關完成了一次開關動作。工作點與釋放點的差值一定,此差值稱為磁滯,圖3.2集成開關型霍爾傳感器在此差值內,V0保持不變,因而使開關輸出穩定可靠,這也就是集電成霍爾開關傳感器優良特性之一。傳感器主要特性是它的輸出特性,即輸入磁感應強度B與輸出電壓V0之間的關系。A04E集成霍爾開關是單穩態型,由測量數據作出的輸出特性曲線如圖3.2(b)所示。測量時在1、2兩端加5V直流電壓,在輸出端3與1之間接一個2kW的負載電阻,如圖3.3所示。圖3.3集成霍爾開關接線圖3.3單片機的原理及應用3.3.1單片機原理簡介單片微型計算機是指集成在一個芯片上的微型計算機,也就是把組成微型計算機的各種功能部件,包括CPU(CentralProcessingUnit)、隨機存儲器RAM(RandomAccessMemory)、只讀存儲器ROM(Read-onlyMemory)、基本輸入/輸出(input/output)接口電路。定時器/計數器等部件都制作在一塊集成芯片上,構成一個完整的微型計算機從而實現微型計算機的基本功能。單片機內部結構示意圖如圖3.4所示。單片機實質上是一個芯片。在實際應用中,通常很少將單片機直接和被控對象進行電氣連接,必須外加各種擴展接口電路、外部設備、被控對象等硬件和軟件,才能構成一個單片機應用系統。圖3.4單片機內部結構示意圖(1)中央處理器中央處理器是單片機最核心的部分,主要完成運算和控制功能。(2)內部存儲器內部存儲器包括內部數據存儲器(內部RAM)和內部程序存儲器。存儲器是由大量的寄存器所組成,其中每一個寄存器就稱為一個存儲單元。(3)定時/計數器單片機的定時器和計數器是同一結構,只是計數器記錄的是單片機外部發生的事件,由單片機的外部電路提供計數信號;而定時器是由單片機內部提供一個非常穩定的計數信號。(4)中斷系統中斷系統在計算機中起著十分重要的作用,是現代計算機系統中廣泛采用的一種實時控制技術,能對突發事件進行及時處理,從而大大提高系統的實時性能。(5)串行I/O接口串行I/O口的數據各位按順序傳輸,其特點是需要一對傳輸線,成本低;但速度慢,效率低,適合靜態顯示。(6)并行I/O接口并行I/O接口的數據所有位同時傳送。其特點是傳輸速度快,效率高;但傳送多少位就需要多少根傳輸線,因此傳送成本高,適合動態顯示。3.3.2單片機的引腳功能介紹STC89C54是STC公司生產的低電壓,高性能CMOS8位單片機,片內含8kbytes的可反復擦寫的只讀程序存儲器(EPROM)和256字節的隨機存取數據存儲器(RAM),器件采用STC公司的高密度、非易失性存儲技術生產,與標準MCS-51指令系統及8052產品引腳兼容,片內置通用8位中央處理器(CPU)和Flash存儲單元,功能強大,STC89C54單片機適合于許多較為復雜控制場合應用。圖3.5STC89C54引腳圖STC89C54提供以下標準功能:8k字節Flash閃速存儲器,256字節內部RAM,32個I/O口線,3個16位定時/計數器,一個全雙工串行通信口,片內具有振蕩器及時鐘電路。同時,STC89C54可降至0Hz的靜態邏輯操作,并支持兩種軟件可選的節電工作模式。空閑方式停止CPU的工作,但允許RAM,定時/計數器,串行通信口及中斷系統繼續工作。掉電方式保存RAM中的內容,但振蕩器停止工作并禁止其它所有部件工作直到下一個硬件復位。STC89C54管腳圖如圖3.5所示。STC89C54的主要管腳功能如下:P0.0~P0.7:P0口是一組8位漏極開路型雙向I/O口,也是地址/數據總線復用口。作為輸出口用時,每位能吸收電流的方式驅動8個TTL邏輯門電路,對端口P0寫“1”時,可作為高阻抗輸入端用。在訪問外部數據存儲器或程序存儲器時,這組口線分時轉換地址(低8位)和數據總線復用,在訪問期間激活內部上拉電阻。P1.0~P1.7:P1是一個帶內部上拉電阻的8位雙向I/O口,P1的輸出緩沖極可驅動(吸收或輸出電流)4個TTL邏輯門電路。對端口寫“1”,通過內部的上拉電阻把端口拉到高電平,此時可作輸入口。P2.0~P2.7:P2是一個帶內部上拉電阻的8位雙向I/O口,P2的輸出緩沖極可驅動(吸收或輸出電流)4個TTL邏輯門電路。對端口P2寫“1”,通過內部的上拉電阻把端口拉到高電平,此時可作輸入口。P3.0~P3.7:P3是一個帶內部上拉電阻的8位雙向I/O口,P3的輸出緩沖極可驅動(吸收或輸出電流)4個TTL邏輯門電路。對端口P3寫“1”,通過內部的上拉電阻把端口拉到高電平,此時可作輸入口。ALE:地址鎖存控制信號。在系統擴展時,ALE用于控制把P0口輸出的低8位地址鎖存起來,以實現低位地址和數據的隔離。此外,由于ALE是以晶振1/6的固定頻率輸出的正脈沖,因此,可作為外部時鐘或外部定時脈沖使用。:外部程序存儲器讀選通信號。在讀外部ROM時,有效(低電平),以實現外部ROM單元的讀操作。:訪問程序存儲控制信號。當信號為低電平時,對ROM的讀操作限定在外部程序存儲器;當信號為高電平時,對ROM的讀操作是從內部程序存儲器開始,并可延至外部程序存儲器。RST:復位信號。當輸入的復位信號延續兩個機器周期以上的高電平時即為有效,用以完成單片機的復位初始化操作。XTALl和XTAL2:外接晶體引線端。當使用芯片內部時鐘時,此二引線端用于外接石英晶體和微調電容;當使用外部時鐘時,用于接外部時鐘脈沖信號。VSS:地線。VCC:+5V電源。以上是MCS-51單片機芯片40條引腳的定義及簡單功能說明。由于工藝及標準化等原因,芯片的引腳數目是有限制的。例如,MCS-51系列把芯片引腳數目限定為40條,但單片機為實現其功能所需要的信號數目卻遠遠超過此數,因此就出現了需要與可能的矛盾。如何解決這個矛盾?“兼職”是唯一可行的辦法,即給一些信號引腳賦以雙重功能。如果把前述的信號定義為引腳第一功能的話,則根據需要再定義的信號就是它的第二功能。下面介紹一些信號引腳的第二功能。P3口線的第二功能。P3的8條口線都定義有第二功能,如表3.1所示表3.1P3口引腳與第二功能引腳第二功能信號名稱P3.0RXD串行數據接收P3.1TXD串行數據發送P3.2外部中斷0申請P3.3外部中斷1申請P3.4T0定時/計數器0的外部輸入P3.5T1定時/計數器1的外部輸入P3.6外部RAM寫選通P3.7外部RAM讀選通(2)EPROM存儲器程序固化所需要的信號。有內部EPROM的單片機芯片(例如8751),為寫入程序需提供專門的編程脈沖和編程電源,這些信號也是由信號引腳以第二功能的形式提供的,即:編程脈沖:30腳(ALE/)編程電壓(25V):31腳(/VPP)(3)備用電源引入。MCS-51單片機的備用電源也是以第二功能的方式由9腳(RST/VPD)引入的。當電源發生故障,電壓降低到下限值時,備用電源經此端向內部RAM提供電壓,以保護內部RAM中的信息不丟失。3.3.3單片機中斷系統介紹在本次設計當中,中斷部分的設計尤為重要,所謂中斷,是當計算機執行正常程序時,系統中出現某些急需處理的事件,CPU暫時中止當前的程序,轉去執行服務程序,以對發生的更緊迫的事件進行處理,待處理結束后,CPU自動返回原來的程序執行。STC89C54系列單片機的系統有5個中斷源,2個優先級,可實現二級中斷服務嵌套。由片內特殊功能寄存器中的中斷允許寄存器IE控制CPU是否響應中斷請求;有中斷優先級寄存器IP安排各優中斷源的優先級;同一優先級內各終端同時提出中斷請求時,由內部的查詢邏輯確定其響應次序。本次設計采用的外部中斷方式包括外部中斷0和外部中斷1,它們的中斷請求信號分別由單片機引腳/P3.2和/P3.3輸入。外部中斷請求有兩種信號方式:電平觸發方式和脈沖觸發方式。電平觸發方式的中斷請求是低電平有效。只要在和引腳上出現有效低電平時,就激活外部中斷方式。脈沖觸發方式的中斷請求則是脈沖的負跳變有效。在這種方式下,在兩個相鄰機器周期內,活引腳電平發生變化,即在第一個機器周期內為高電平,第二個機器周期內為低電平,就激活外部中斷。由此可見,在脈沖方式下,中斷請求信號的高電平和低電平狀態都應至少維持一個機器周期,以使CPU采樣到電平狀態的變化,本次設計所采用的觸發方式為脈沖觸發方式。(1)中斷允許控制CPU對中斷系統所有中斷以及某個中斷源的開放和屏蔽是由中斷允許寄存器IE控制的。IE的狀態可通過程序由軟件設定,某位設定為1,相應的中斷源中斷允許;某位設定為0,相應的中斷源中斷屏蔽。CPU復位時,IE各位為0,禁止所有中斷。IE寄存器各位的定義如下。EX0(IE.0)外部中斷允許位;ET0(IE.1)定時/計數器T0中斷允許位;EX1(IE.2)外部中斷允許位;ET1(IE.3)定時/計數器T1中斷允許位;ES(IE.4)串行口中斷允許位;EA(IE.7)CPU中斷允許位。(2)中斷優先級控制STC89C54單片機有兩個中斷優先級,即可實現二級中斷服務嵌套。每個中斷源的中斷優先級都是由中斷優先級寄存器IP中的相應的狀態來規定的。IP的狀態由軟件設定,某位設定為1,則相應的中斷源為高優先級中斷;某位設定為0.則相應的中斷源為低優先級中斷。單片機復位時,IP各位清0,各中斷源同為低優先級中斷。IP寄存器各位的定義如下。PX0(P.0)外部中斷優先級設定位;PT0(IP.1)定時/計數器T0中斷優先級設定位;PX1(IP.2)外部中斷中斷優先級設定位;PT1(IP.3)定時/計數器T1中斷優先級設定位;PS(IP.4)串行口中斷優先級設定位。3.3.4單片機定時/計數功能介紹STC89C54單片機定時/計數器的工作由兩個特殊功能寄存器控制。TMOD用于設置其工作方式;TCON用于控制其啟動和中斷請求。(1)工作方式寄存器TMOD工作方式寄存器TMOD用于設置定時/計數器的工作方式。GATE:門控位。GATE=0時,只要用軟件使TCON中的TR0或TR1為1,就可以啟動定時/計數器工作;GATE=1時,要用軟件TR0或TR1為1,同時外部中斷引腳或也為高電平時,才能啟動定時/計數器工作。:定時/計數模式選擇位。=0為定時模式;=1為計數模式。M1M2:工作方式設置位。定時/計數器有4種工作方式,由M1M2進行設置。本次設計TMOD為90H,即選通定時/計數器1、定時功能、工作方式1。工作方式16位定時/計數器。(2)控制寄存器TCONTF1(TCON.7)定時/計數器T1溢出中斷請求標志位。定時/計數器T1計數溢出時由硬件自動置TF1為1。CPU響應中斷后TF1由硬件自動清零。T1工作時,CPU可隨時查詢TF的狀態。所以,TF1可用作查詢測試的標志。TF1也可以用軟件置1或清零,同硬件置1或清零的效果一樣。TR1(TCON.6)定時/計數器T1運行控制位。TR1置1時時,定時/計數器T1開始工作;TR1置0時,定時/計數器T1停止工作。TR1由軟件置1或清0。TF0(TCON.5):定時/計數器T0溢出中斷請求標志位。TR0(TCON.4):定時/計數器T0運行控制位。定時/計數器控制寄存器TCON是8位寄存器,地址為88H,可以位尋址。其高4位用于定時/計數器中斷控制,低4位借給外部中斷,用做中斷標志和觸發方式選擇位。本次設計采用定時中斷,對系統的里程進行計數。3.4單片機外圍電路的設計3.4.1時鐘電路的設計時鐘是單片機的心臟,單片機各功能部件的運行都是以時鐘頻率為基準,有條不紊地一拍一拍地工作。因此,時鐘頻率直接影響單片機的速度,時鐘電路的質量也直接影響單片機系統的穩定性。STC89C54片內由一個反相放大器構成振蕩器,可以由它產生時鐘。常用的時鐘電路有兩種方式,一種是內部時鐘方式,另一種為外部時鐘方式。本設計采用前者。單片機內部有一個用于構成振蕩器的高增益反相放大器,該高增益反相放大器的輸入為芯片引腳XTAL1,輸出端為引腳XTAL2。這兩個引腳跨接石英晶體振蕩器和電容,就構成一個穩定的自激振蕩器。單片機內部時鐘方式的振蕩電路如圖3.6所示。圖3.6單片機片內振蕩電路電路中的電容C1和C2常選擇為30pF左右。對外接電容的值雖然沒有嚴格的要求,但電容的大小會影響振蕩器的高低、振蕩器的穩定性、起振的快速性和溫度的穩定性。而外接晶體的振蕩頻率的大小,主要取決于單片機的工作頻率范圍,每一種單片機都有自己的最大工作頻率,外接的晶體振蕩頻率不大于單片機的最大工作頻率即可。此外,如果單片機有串行通信,則應該選擇振蕩頻率除以串行通信頻率可以除盡的晶體。本設計晶振采用12MHz,則計數周期為3.4.2復位電路的設計STC89C54單片機的復位輸入引腳RET為STC89C54提供了初始化的手段。有了它可以使程序從指定處開始執行,即從程序存儲器中的0000H地址單元開始執行程序。在STC89C54的時鐘電路工作后,只要在RET引腳上出現兩個機器周期以上的高電平時,單片機內部則初始復位。只要RET保持高電平,則STC89C54循環復位。只有當RET由高電平變成低電平以后,STC89C54才從0000H地址開始執行程序。本系統的復位電路是采用按鍵復位的電路,如圖3.7所示,是常用復位電路之一。單片機復位通過按動按鈕產生高電平復位稱手動復位。上電時,剛接通電源,電容C相當于瞬間短路,+5V立即加到RET/VPD端,該高電平使STC89C54全機自動復位,這就是上電復位;若運行過程中需要程序從頭執行,只需按動按鈕即可。按下按鈕,則直接把+5V加到了RET/VPD端從而復位稱為手動復位。復位后,P0到P3并行I/O口全為高電平,其它寄存器全部清零,只有SBUF寄存器狀態不確定。圖3.7按鍵復位電路工作原理:上電瞬間,RC電路充電,RST引腳出現高電平,只要RST端保持10ms以上高電平,就能使單片機有效地復位。3.4.3顯示電路的設計本設計中采用LCD1602顯示。在單片機系統中,通常用LCD顯示器來顯示各種數字或符號。由于它具有顯示清晰、亮度高、使用電壓低、壽命長的特點,因此使用非常廣泛。圖3.8為LCD1602硬件接線圖。圖3.8顯示電路圖3.9為LCD1602總線方式。圖3.9LCD1602總線方式表3.2為LCD1602接口信號說明。表3.2LCD1602接口信號說明表3.3為LCD1602基本操作時序。表3.3LCD1602基本操作時序表3.4為LCD1602狀態字說明。表3.4LCD1602狀態字說明表3.5為LCD1602RAM地址映射。表3.5LCD1602RAM地址映射表3.6為LCD1602指令說明。表3.6LCD1602指令說明第四章出租車計價器系統軟件程序設計4.1概述在硬件設計完畢之后,接下來就是設計中最核心和最為主要的軟件部分設計。所謂軟件設計就是把軟件需求變換成軟件的具體設計方案(即模塊結構)的過程。模塊化結構設計即是根據要求和硬件設計的結構,將整個系統的功能分成許多小的功能模塊,再根據這些小的功能模塊進行程序編寫的過程。這樣的設計方法,使得系統的整個功能和各部分的功能趨于明朗化。當系統出現問題,就可以根據功能設置找出問題的根源,從而更快地解決問題。所以說,在整個設計過程中,軟件設計必須與硬件設計緊密地結合在一起。基于霍爾傳感器出租車計價器系統的軟件設計包括上電初始化程序、中斷子程序、里程調用子程序等幾大部分。由于要實現很多功能,所以采用模塊化設計,下面就其主要部分分別加以分析。4.2出租車計價器系統總體程序設計在主程序模塊中,需要完成對各接口芯片的初始化、出租車里程的初始化、中斷向量的設計以及開中斷、循環等待等工作。另外,在主程序模塊中還需要設置啟動/清除標志寄存器、里程寄存器,并對它們進行初始化。然后主程序將根據各標志寄存器的內容,分別完成啟動、清除、計程等不同的操作。P3.7高電平為顯示里程低電平啟動計時器。中斷0用于對輪子圈數的計數輸入,輪子每轉一圈,霍爾傳感器輸出一個低電平脈沖。將根據里程寄存器中的內容計算和判斷出行駛里程數。中斷1用于控制定時器T1的啟/停,當輸入為0時關閉定時器。此控制信號是將輪子圈數的計數經二分頻后形成。其程序流程如圖4.1所示。圖4.1主程序流程圖4.3中斷子程序的設計定時中斷是為滿足定時或計數的需要而設置的。為此在單片機內部有兩個定時/計數器,以對其中的計數結構進行計數的方法,來實現定時或計數功能。當結構發生計數溢出時,即表明定時時間或計數值已滿,這時就以計數溢出信號作為中斷請求,去置位一個溢出標志,作為單片機接受中斷請求的標志。這種中斷請求是在單片機芯片內部發生的,因此無須在芯片上設置引入端。定時/計數器控制寄存器TCON是8位寄存器,地址為88H,可以位尋址。其高4位用于定時/計數器中斷控制,低4位借給外部中斷,用做中斷標志和觸發方式選擇位。本設計采用定時中斷,對系統的里程進行計數。中斷子程序流程圖如圖4.2所示。圖4.2中斷子程序流程圖4.4數據處理子程序的設計(1)里程計算子程序外部中斷1服務程序用于對單片機P3.3口輸入的圈脈沖進行計數,為十六進制計數器。60H為低位,62H為高位。每次計數一次后,對里程數據進行一次存儲操作。當車輪每轉一圈,通過霍爾元件將脈沖數輸入單片機內,通過計數器計出脈沖數,再用乘法子程序算出里程數。里程處理子程序流程圖如圖4.3所示。電機模擬車輪轉動開始電機模擬車輪轉動開始將電機轉數轉換成里程顯示里程值返回(2)總價計算子程序計算里程費用開始計算等時費用計算總價返回計算里程費用開始計算等時費用計算總價返回圖4.4總價處理子程序流程圖第五章系統調試與分析5.1硬件電路的搭建在完成仿真實驗后,就可以按照仿真的電路原理圖搭建硬件電路,將源代碼燒寫到單片機里就完成了本次畢業設計的任務。5.2調試故障及原因分析在本次軟件仿真和硬件搭建過程中大大小小遇到了若干問題,具體故障和解決方法如下:(1)LCD不顯示LCD與主板接觸不良。(2)P0口顯示高阻態正常情況下P0口輸出應為高(紅色)低(藍色)互換,但在實際情況下P0口出現了高阻態(灰色),經翻閱資料查得P0口做I/O口是應接上拉電阻。在加上上拉電阻后,P0口輸出正常。(3)傳感器輸出電壓過小在焊接硬件過程中測量傳感器輸出端高電壓0.2V到0.3V之間,達不到4V以上,經分析在傳感器輸出端叫2K的上拉電阻,傳感器輸出端輸出電壓在正常范圍內變化。(4)單片機不計數在磁鐵來回靠近霍爾傳感器時單片機始終顯示4個0,經檢查傳感器工作正常,指示燈電路工作也正常,在換了一塊單片機后電路正常工作,判定原單片機已被燒毀。5.3調試結果5.3.1候時顯示候時顯示如圖5.1所示,圖中右上部分即為候時時間。圖5.1候時顯示5.3.2里程顯示里程顯示如圖5.2所示,圖中左下部分即為里程值。圖5.2里程顯示5.3.3停車總價顯示停車總價顯示如圖5.3所示,圖中右下部分即為總價。圖5.4停車總價顯示第六章社會經濟效益分析本系統操作簡單,易于實現。硬件部分采用的器件應用較廣泛,且價格低廉,如STC89C54單片機、A04E霍爾傳感器等等。這就意味著所有的器件功能比較強大、穩定。尤其是本次設計的核心元件STC89C54單片機,軟件技術成熟,并具有種類齊全的支持芯片。這類微處理器既可用作控制器又適合于做數據處理,而且成本也甚是低廉。軟件采用模塊化設計,可讀性強,方便二次開發。本次設計電路簡單、低成本,而且能夠滿足出租車司機對計價器的要求,具有廣泛的應用前景。結束語該課題的主要任務是開發一個以MCS-51單片機為核心的出租車計價器系統。本設計主要分為硬件部分和軟件部分,硬件部分著重考慮硬件電路的簡單性,故盡可能簡化硬件電路,節省線路板的空間,達到硬件電路最優化設計。軟件采用C語言編寫,采用模塊化設計思想,程序可讀性強。通過仿真、實驗驗證了系統的可行,能滿足設計要求,達到設計的指標,實現對出租車里程、候時時間和總價的計算功能,并用LCD顯示,里程根據以下公式求得:里程=脈沖總數×車輪周長根據此公式將最終顯示出里程。當車輪轉動,小磁片滑過霍爾元件時,霍爾元件輸出一脈沖,可根據車輪周長計算里程。通過實驗證明本次設計符合設計的要求,能實現對里程、候時時間和總價的顯示,功能性較強,具有一定的實踐意義,將會在許多場合應用。本次畢設使我們將大學四年所學的知識進行了匯總,在收集資料,確定方案的過程中,我學到許多知識,也弄懂了許多以前不是很清楚的問題。在做畢業設計的過程中,是我們所學知識的一次升華,把理論知識運用到了實際當中。也使我們從中得到了鍛煉。致謝在本次畢業設計過程中我獲益匪淺,同時也遇到了許多困難,在看到我的畢業設計題目時,我的感性認識讓我感覺題目挺簡單,但在理性分析和實際操作過程中卻處處碰壁,這都是由于基礎知識不牢造成的,最后在李老師的耐心指導下,我從簡單的編程學起,逐漸對題目有了一定程度的認識和理解,對具體的細節有了清晰的認識,終于明白那句古話“磨刀不誤砍柴工”的深刻含義。以后在做畢業設計的過程中才感到得心應手,我從中學到了許多新知識。在這里我要感謝我的指導老師,是她的耐心教導,和不厭其煩地講解,使我順利地完成了畢業設計。也要感謝我的同學們,在我遇到困難時主動幫我解決,使我很快地攻克了一個又一個難關。同時也要感謝實驗室的老師,是他們不厭其煩的幫助我解決問題,使我能順利完成畢業設計。畢業設計已經結束,但是它卻給我留下了美好的回憶,在做畢業設計的過程中加深了師生的感情和同學之間的友誼,覺得每一天都是那么的充實和愉快。參考文獻彭為.黃科.雷道中.單片機典型系統設計[M].北京:電子工業出版社,2005:156-185賈伯年.傳感器技術[M].南京:東南大學出版社,2000:239-240樓然苗,李光飛.51系列單片機設計實例[M].北京:北京航空航天大學出版社,2006:56-89松井邦彥,梁瑞林.傳感器應用技術141例[M].北京:科學出版社,2006:69-96李朝青.單片機原理及接口技術[M].北京:北京航空航天大學出版社,1994:96-125張洪潤,張亞凡.傳感器技術與應用教程[M].北京:清華大學出版社,2005:89-120張毅剛,劉杰.MCS-51單片機原理及應用[M].哈爾濱:哈爾濱工業大學出版社,2004:12-34黃河,郭紀林.單片機原理及應用[M].大連:大連理工大學出版社,2006:23-45劉燦軍.實用傳感器[M].北京:國防工業出版社,2004:65-78何希才.傳感器及其應用[M].北京:國防工業出版社,2001:23-47陳雪麗.單片機原理及接口技術[M].西安:化學工業出版社,2005:35-56李勛,劉源,李靜東.單片機實用教程[M].北京:北京航空航天大學出版社,2006:23-54趙茂泰.智能儀器原理及應用[M].北京:電子工業出版社,2004:11-12何立民.單片機應用文集[M].北京:航空航天大學出版社,2000:45-68曹衛芳,陶安利.基于MCS-51系列單片機的通用控制模塊的研究[J].青島:山東科技大學學報(自然科學版),2005:12-18李建民.顯示接口芯片8155的應用[J].武漢:’湖北大學成人教育學院學報(自然科學版),2001:37-39曹建榮,姚慶梅,張枚.模數轉換芯片的接口電路設計[J].青島:青島大學學報(自然科學版),2002:20-24王志慧.單片機控制的設計與實現:[碩士學位論文][J].呼和浩特:內蒙古大學學報,2002:66-79宋雨潭.智能化儀器儀表的應用[J].黑龍江稅專學報(自然科學版),2002:87-89王正洪,周振環.微機接口與應用[M].北京:中國石化出版社,2000:120-125WQYang.DMSpink,et.Animage-reconstuctionalgorithmbasedonLandweber’siterationmethodforelectrical-capacitancetomography[M].LA:Meas.Sci.Technol.,1999,10:1065-1069附錄Ⅰ出租車計價器系統硬件系統原理圖附錄Ⅱ元件清單序號名稱型號數量1單片機STC89C541個2LCD16021個3開關1個4電容1000F/50V1個22F/25V1個30pF/16V2個5霍爾元件A04E1個6小電機1個7圓柱形磁鐵1個8電阻2KΩ1個330Ω3個10KΩ2個1KΩ1個9導線若干10電路板1塊115V電源FST-S10-5V1個1212V電源FST-S10-12V1個附錄Ⅲ程序清單#include<reg52.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedintvoidwrite_2sg(ucharad,uchardat);sbitrs=P2^1;//1602液晶的片選sbitlcdwr=P2^2;//1602液晶的讀寫sbitlcden=P2^0;//1602液晶的使能sbitkey2=P2^5; //功能鍵實現白天/夜晚/空調單價的切換,按1次,進入白天單價;按2次,進入夜晚單價;按3次,進入空調單價;sbitkey3=P2^4; //停車計費sbitkey1=P2^3; //里程清零按鍵 sbitexter=P3^3;//外部中斷,接霍爾元件uintinter,aa,bb,ttt,temp,temp1,fen,miao;uintzongjine,licheng,dengdai; //總金額里程等待uintkey2num,qiehuantemp,wait_time;uchardanjia,qibu; //單價起步價停車計算時間變量ucharf_sh=0,f_g=0,m_sh=0,m_g=0;ucharwaiting=0;ucharcodetable1[]="D00yuan00:00"; //顯示單價,等車時間ucharcodetable2[]="00KM000yuan"; //顯示最后公里數,總價voiddelay(uintz)//延時函數{ uintx,y; for(x=z;x>0;x--) for(y=110;y>0;y--);}voidwrite_date(uchardate)//液晶寫數據程序{ rs=1; lcdwr=0; lcden=0; P0=date; delay(5); lcden=1; delay(5); lcden=0; }voidwrite_com(ucharcom)//液晶寫命令程序{ rs=0; lcdwr=0; lcden=0; P0=com; delay(5); lcden=1; delay(5); lcden=0; } voidwrite_2km(ucharad,uintdat)//修改第二行公里十位及個位的程序{ ucharsh,g,xs; sh=dat/1000%10; g=dat/100%10; xs=dat/10%10; write_com(0x80+0x40+ad); write_date(0x30+sh); write_date(0x30+g); write_date('.'); write_date(0x30+xs);}voidinit()//初始化液晶和定時器{ ucharnum; lcden=0; write_com(0x38); write_com(0x0c); write_com(0x06); write_com(0x01); write_com(0x80); for(num=0;num<14;num++) { write_date(table1[num]);//寫入單價及候車時間 delay(5); } write_com(0x80+0x40); delay(5); write_2km(1,licheng); write_com(0x80+0x40+5);//M write_date('K'); write_date('M'); write_2sg(9,zongjine); write_com(0x80+0x40+12);//yuan write_date('y'); write_date('u'); write_date('a'); write_date('n');}voidwrite_1sg(ucharad,uchardat)//修改第一行單價十位及個位的程序{ ucharsh,g; sh=dat/10; g=dat%10; write_com(0x80+ad); write_date(0x30+sh); write_date(0x30+g);}voidwrite_2sg(ucharad,uchardat)//顯示第二行總價百位十位及個位的程序{ ucharbai,sh,g; bai=dat/100;sh=dat%100/10; g=dat%100%10; write_com(0x80+0x40+ad); if(bai>0)write_date(0x30+bai); elsewrite_date(''); write_date(0x30+sh); write_date(0x30+g);} voidwrite_sfm(ucharadd,uchardate)//顯示分秒的程序{ ucharshi,ge; shi=date/10; ge=date%10; write_com(0x80+add); write_date(0x30+shi); write_date(0x30+ge);}voidcpuinit() //cpu程序初始化{ qibu=0;zongjine=0;licheng=0;wait_time=0; f_sh=0; f_g=0; m_sh=0; m_g=0;key2num=0; temp=0; temp1=0; inter=0; waiting=0;inter=0;EX1=1;//開外部中斷1IT1=1;//觸發方式下降沿TMOD=0x11;TH0=0xee; //5msTL0=00; //5msET0=1;//開定時器T0中斷TR0=1;//開定時器T0 }voiddisplay_gz()//顯示總公里,顯示總價{ if((key3==0)&(EA==1)) //停車鍵 { EA=0; while(key1==1);//清零鍵cpuinit();init(); }}voidqiehuan()//單價顯示切換{ if(key2==0){ delay(2); {if(key2==0){key2n

溫馨提示

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

評論

0/150

提交評論