出租車計(jì)價(jià)器系統(tǒng)的研究與設(shè)計(jì)_第1頁
出租車計(jì)價(jià)器系統(tǒng)的研究與設(shè)計(jì)_第2頁
出租車計(jì)價(jià)器系統(tǒng)的研究與設(shè)計(jì)_第3頁
出租車計(jì)價(jià)器系統(tǒng)的研究與設(shè)計(jì)_第4頁
出租車計(jì)價(jià)器系統(tǒng)的研究與設(shè)計(jì)_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

/學(xué)士學(xué)位論文(設(shè)計(jì))題目:礦井低壓電網(wǎng)過流愛惜中的相序檢測姓名:張婷婷學(xué)號(hào)014009110168專業(yè):電子信息工程指導(dǎo)老師:文鳳春職稱副教授中國·武漢二○○一一年二月目錄TOC\o"1-2"\h\z\u1概述 11.1出租車計(jì)價(jià)器概述 11.2單片機(jī)的概述 12總體設(shè)計(jì)方案的論證和比較 32.1總體設(shè)計(jì)方案的論證和比較 32.2里程計(jì)算設(shè)計(jì)方案論證和比較 42.3設(shè)計(jì)總框圖 43硬件設(shè)計(jì) 63.1硬件設(shè)計(jì)概述 63.2AT89S51介紹 73.3里程計(jì)算設(shè)計(jì) 83.4顯示原理 113.5AT24C02掉電存儲(chǔ)單元的設(shè)計(jì) 143.6按鍵單元的設(shè)計(jì) 154系統(tǒng)的軟件設(shè)計(jì) 194.1模塊介紹 194.2主程序模塊 194.3定時(shí)中斷服務(wù)程序 214.4里程計(jì)數(shù)中斷服務(wù)程序 234.5中途等待中斷服務(wù)程序 234.6顯示子程序服務(wù)程序 234.7鍵盤服務(wù)程序 255系統(tǒng)調(diào)試和測試結(jié)果分析 265.1運(yùn)用的儀器儀表 265.2系統(tǒng)調(diào)試 266結(jié)論 29致謝 30參考文獻(xiàn) 31出租車計(jì)價(jià)器系統(tǒng)的探討和設(shè)計(jì)摘要本文介紹了一種以AT89C51單片機(jī)為核心的多功能出租車計(jì)價(jià)器。該計(jì)價(jià)器具有單程,來回,白天,夜間,等待等多種模式的計(jì)價(jià)方式。有顯示功能,發(fā)票打印功能,防作弊措施。文中在整體方案選擇上對(duì)兩個(gè)方案進(jìn)行了對(duì)比,并闡述了硬件配置及性能特點(diǎn),分為計(jì)量模塊、顯示模塊、打印模塊、防作弊模塊;軟件設(shè)計(jì)接受匯編語言編寫,系統(tǒng)程序固化在單片機(jī)內(nèi)部的EEPROM存儲(chǔ)器中,程序包括主程序和若干子程序。主程序的功能是開機(jī)后負(fù)責(zé)管理和調(diào)用子程序,子程序共有4個(gè),分別是鍵盤掃描子程序、計(jì)量子程序、讀日歷時(shí)鐘子程序及顯示子程序。在對(duì)各芯片在出租車計(jì)價(jià)器中所起的作用進(jìn)行分析基礎(chǔ)上對(duì)總體設(shè)計(jì)方案進(jìn)行了分析。關(guān)鍵詞單片機(jī),多功能,出租車計(jì)價(jià)器

Abstract

Inthispaper,ataximeterbasedonaprocessorAT89C51isreported.Thistaximeterhavemanyfunctionssuchassingle,backandforth,wait,dayandnightcost.Andithasdisplayfunction,typeinvoicefunction,stepforavoidingpracticefraud.Inthispaper,afulldescriptionofhardwaredisposal,characterize,planofsoftwareisdescribedindetail.Inthispaper,twoprogramsareenumerated,hardwareincludemetricmodule,displaymodule,printmodule,avoidingpracticefraudmodule;planofsoftwareadoptassembler,everyproceduresolidifysinEEPROMinprocessorAT89C51.itincludesmainprocedureandseveralfilialprocedures,thefunctionofmainprocedureistakingchargeofmanagingandtransferringfilialproceduresthatincludeskeyboardscan,metricpeocedure,calendarclockprocedureanddisplayprocedure.Basedonanalyzingfunctionofeveryprocessorintaximetertotalplanisanalysed.KeywordsAT89C51,multifunctional,Taximeter1概述1.1出租車計(jì)價(jià)器概述汽車計(jì)價(jià)器是乘客和司機(jī)雙方的交易準(zhǔn)則,它是出租車行業(yè)發(fā)展的重要標(biāo)記,是出租車中最重要的工具。它關(guān)系著交易雙方的利益。具有良好性能的計(jì)價(jià)器無論是對(duì)廣袤出租車司機(jī)摯友還是乘客來說都是很必要的。因此,汽車計(jì)價(jià)器的探討也是特殊有一個(gè)應(yīng)用價(jià)值的。我國在70年頭起先出現(xiàn)出租車,但那時(shí)的計(jì)費(fèi)系統(tǒng)大都是國外進(jìn)口不但不夠精確,價(jià)格還特殊昂貴。隨著改革開放日益深化,出租車行業(yè)的發(fā)展勢(shì)頭已特殊突出,國內(nèi)各機(jī)械廠家紛紛推出國產(chǎn)計(jì)價(jià)器。出租車計(jì)價(jià)器的功能從剛起先的只顯示路程(須要司機(jī)自己定價(jià),計(jì)算后四舍五入),到能夠自主計(jì)費(fèi),以及現(xiàn)在的能夠打一發(fā)票和語音提示、按時(shí)間自主變動(dòng)單價(jià)等功能。隨著城市旅游業(yè)的發(fā)展,出租車行業(yè)已成為城市的窗口,象征著一個(gè)城市的文明程度。本次設(shè)計(jì)的目的在于現(xiàn)在各大中城市出租車行業(yè)都已普及自動(dòng)計(jì)價(jià)器,所以計(jì)價(jià)器技術(shù)的發(fā)展已成定局。而部分小城市尚未普及,但隨著城市建設(shè)日益加快,象征著城市面貌的出租車行業(yè)也將加速發(fā)展,計(jì)價(jià)器的普及也是毫無疑問的,所以將來汽車計(jì)價(jià)器的市場還是特殊有潛力的。1.2單片機(jī)的概述計(jì)算機(jī)系統(tǒng)已明顯地朝巨型化、單片化、網(wǎng)絡(luò)化三個(gè)方向發(fā)展。巨型化發(fā)展的目的在于不斷提高計(jì)算機(jī)的運(yùn)算速度和處理實(shí)力,以解決困難系統(tǒng)計(jì)算和高速數(shù)據(jù)處理,比如系統(tǒng)仿真和模擬、實(shí)時(shí)運(yùn)算和處理。單片化是把計(jì)算機(jī)系統(tǒng)盡可能集成在一塊半導(dǎo)體芯片上,其目的在于計(jì)算機(jī)微型化和提高系統(tǒng)的牢靠性,這種單片計(jì)算簡稱單片機(jī)。單片機(jī)的內(nèi)部硬件結(jié)構(gòu)和指令系統(tǒng)主要是針對(duì)自動(dòng)限制應(yīng)用而設(shè)計(jì)的所以單片機(jī)又稱微限制器MCU(MicroControllerUnit)。用它可以很簡潔地將計(jì)算機(jī)嵌入到各種儀器和現(xiàn)場限制設(shè)備中,因此單片機(jī)又叫做嵌入式微限制器(EmbeddedMCU)。單片機(jī)自20世紀(jì)70年頭問世以來,以其顯明的特點(diǎn)得到迅猛發(fā)展,已廣泛應(yīng)用于家用電器、智能玩具、智能儀器儀表、工業(yè)限制、航空航天等領(lǐng)域,經(jīng)過30多年的發(fā)展,性能不斷提高,品種不斷豐富,已經(jīng)形成自動(dòng)限制的一支中堅(jiān)力氣。據(jù)統(tǒng)計(jì),我國的單片機(jī)年容量已達(dá)1~3億片,且每年以大約16%的速度增長,但相對(duì)于國際市場我國的占有率還不到1%。這說明單片機(jī)應(yīng)用在我國有著廣袤的前景。對(duì)于從事自動(dòng)限制的技術(shù)人員來講,駕馭單片機(jī)原理及其應(yīng)用已經(jīng)成為必不行少的學(xué)習(xí)任務(wù)。單片機(jī)的應(yīng)用特殊廣泛,在工業(yè)限制領(lǐng)域、家電產(chǎn)品、智能化儀器儀表、計(jì)算機(jī)外部設(shè)備,特殊是機(jī)電一體化產(chǎn)品中,都有重要的用途。其主要的用途可以分為以下方面。顯示:通過單片機(jī)限制發(fā)光二極管或是液晶,顯示特定的圖形和字符。機(jī)電限制:用單片機(jī)限制機(jī)電產(chǎn)品做定時(shí)或定向的動(dòng)作。檢測:通過單片機(jī)和傳感器的聯(lián)合運(yùn)用,用來檢測產(chǎn)品或者工況的意外發(fā)生。通信:通過RS-232串行通信或者是USB通信,傳輸數(shù)據(jù)和信號(hào)??茖W(xué)計(jì)算:用來實(shí)現(xiàn)簡潔的算法。那么單片機(jī)是不是解決上述應(yīng)用的唯一選擇呢?淡然不是!目前,在自動(dòng)限制中,一般有三種選擇,分別是嵌入式微機(jī)、DSP和單片機(jī)。單片機(jī)最明顯的優(yōu)點(diǎn)是價(jià)格便宜,從幾元人民幣到幾十元人民幣。這是因?yàn)檫@類芯片的生產(chǎn)量很大,技術(shù)也很成熟。其次,單片機(jī)的體積也遠(yuǎn)小于其他兩種方案。單片機(jī)本身一般用40引腳封裝,當(dāng)然功能多一些的單片機(jī)也有引腳比較多的,如68引腳,功能少的只有10多個(gè)或20多個(gè)引腳,有的甚至只有8只引腳。當(dāng)然,單片機(jī)無論在速度還是容量方面都小于其他兩種方案,但是在實(shí)際工作中并不是任何須要計(jì)算機(jī)的場合都要求計(jì)算機(jī)有很高的性能。例如,限制電冰箱的限制器就不須要運(yùn)用嵌入式系統(tǒng),用一片51就可以輕松實(shí)現(xiàn)。所以應(yīng)用的關(guān)鍵是看能否夠用,是否有很好的性能價(jià)格比。51系列的單片機(jī)已經(jīng)面世十多年,照舊沒有被淘汰,還在不斷發(fā)展中,這就說明是他有廣袤的應(yīng)用前景。2總體設(shè)計(jì)方案的論證和比較2.1總體設(shè)計(jì)方案的論證和比較方案一:接受數(shù)字電路限制。其原理方框圖如圖2.1所示。接受傳感器件,輸出脈沖信號(hào),經(jīng)過放大整形作為移位寄存器的脈沖,實(shí)現(xiàn)計(jì)價(jià),但是考慮到這種電路過于簡潔,性能不夠穩(wěn)定,而且不能調(diào)整單價(jià),也不能依據(jù)天氣調(diào)整計(jì)費(fèi)標(biāo)準(zhǔn),電路不夠好用。其原理方框圖如圖2.1所示。圖2.1數(shù)字電路方案方案二:接受單片機(jī)限制。利用單片機(jī)豐富的IO端口,及其限制的靈敏性,實(shí)現(xiàn)基本的里程計(jì)價(jià)功能和價(jià)格調(diào)整、時(shí)鐘顯示功能。其原理方框圖如圖2.2所示。圖2.2總體設(shè)計(jì)思路框圖接受模擬電路和數(shù)字電路設(shè)計(jì)的計(jì)價(jià)器整體電路的規(guī)模較大,用到的器件多,造成故障率高,難調(diào)試,對(duì)于模式的切換須要用到機(jī)械開關(guān),機(jī)械開關(guān)時(shí)間久了會(huì)造成接觸不良,功能不易實(shí)現(xiàn)。通過比較以上兩種方案,單片機(jī)有較大的活動(dòng)空間,利用單片機(jī)豐富的IO端口,及其限制的靈敏性,不但能實(shí)現(xiàn)基本的里程計(jì)價(jià)功能和價(jià)格調(diào)整、時(shí)鐘顯示功能,而且能在很大的程度上擴(kuò)展功能,還可以便利的對(duì)系統(tǒng)進(jìn)行升級(jí)。為此我們接受了單片機(jī)進(jìn)行設(shè)計(jì),相對(duì)來說功能強(qiáng)大,用較少的硬件和適當(dāng)?shù)能浖嗷f(xié)作可以很簡潔的實(shí)現(xiàn)設(shè)計(jì)要求。2.2里程計(jì)算設(shè)計(jì)方案論證和比較方案一:接受霍爾線性器件,將轉(zhuǎn)速轉(zhuǎn)變?yōu)殡妷盒盘?hào)供應(yīng)應(yīng)單片機(jī),從而達(dá)到計(jì)算里程的目的。方案二:接受霍爾開關(guān)器件中的霍爾傳感器A44E,按汽車車輪轉(zhuǎn)速的凹凸,每轉(zhuǎn)發(fā)出相應(yīng)數(shù)目的脈沖信號(hào)。通過比較以上兩種設(shè)計(jì)方案,方案一雖然運(yùn)行牢靠,但體積大,精度低,且由于測量值是模擬量,必需經(jīng)過A/D轉(zhuǎn)換后讀入計(jì)算機(jī),針對(duì)于出租車計(jì)價(jià)器而言較為煩瑣,不適用。因此我們接受方案二。2.3設(shè)計(jì)總框圖本次設(shè)計(jì)我們利用單片機(jī)AT89S51芯片作為設(shè)計(jì)的核心,利用霍爾傳感器測距,實(shí)現(xiàn)對(duì)出租車計(jì)價(jià)統(tǒng)計(jì),接受AT24C02實(shí)現(xiàn)在系統(tǒng)掉電的時(shí)候保存單價(jià)和系統(tǒng)時(shí)間等信息,顯示接受6位LED數(shù)碼管,分屏顯示單價(jià)、路程、總金額以剛好間??傮w設(shè)計(jì)框圖如圖2.3所示。圖2.3總體設(shè)計(jì)框圖3硬件設(shè)計(jì)3.1硬件設(shè)計(jì)概述AT89S51是一款特殊適合單片機(jī)初學(xué)者學(xué)習(xí)的機(jī)型,它完全兼容傳統(tǒng)的8051,8031的指令系統(tǒng)和引腳,而且是當(dāng)今較為流行的,綜合考慮,本次設(shè)計(jì)的核心接受AT89S51型單片機(jī)。在里程測速方面,霍爾元件體積小,重量輕,壽命長,安裝便利,功耗小,因此我們接受霍爾傳感器A44E;在顯示方面,因?yàn)榻邮躄CD液晶段碼顯示,在距離屏幕1米之外就無法看清數(shù)據(jù),所以本次設(shè)計(jì)接受6位LED發(fā)光二級(jí)管;在其他方面,我們運(yùn)用到了AT24C02掉電存儲(chǔ)單元以及四個(gè)限制按鍵。其總體設(shè)計(jì)電路圖如3.1所示圖3.1設(shè)計(jì)總體電路圖3.2AT89S51介紹AT89S51是美國ATMEL公司生產(chǎn)的低功耗,高性能CMOS8位單片機(jī),片內(nèi)含4kBytesISP(In-systemprogrammable)的可反復(fù)擦寫1000次的Flash只讀程序存儲(chǔ)器,器件接受ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中心處理器和ISPFlash存儲(chǔ)單元,功能強(qiáng)大的AT89S51可為許多嵌入式限制應(yīng)用系統(tǒng)供應(yīng)高性價(jià)比的解決方案。

3.2.1AT89S51的引腳功能說明AT89S51有40個(gè)引腳,和MCS—51系列單片機(jī)引腳完全兼容。如圖3.2所示。其各自引腳功能如下:Vcc:電源電壓。GND:地。P0口:P0口是一組8位漏極開路型雙向I/O接口,也即地址/數(shù)據(jù)總線復(fù)用口。當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線分時(shí)轉(zhuǎn)換地址和數(shù)據(jù)總線復(fù)用,在訪問期間激活內(nèi)部上拉電阻。在FLASH編程時(shí),P0口接受指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié)。P1口:P1口是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O接口,P1的輸出緩沖級(jí)可驅(qū)動(dòng)4個(gè)TTL邏輯門電路。FLASH編程和程序校驗(yàn)時(shí),P1接收低8位地址。P2口:P2口是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級(jí)可驅(qū)動(dòng)4個(gè)TTL邏輯門電路。在訪問外部程序存儲(chǔ)器或16位地址的外部數(shù)據(jù)存儲(chǔ)器時(shí)P2口送高8位地址數(shù)據(jù)。FLASH編程或校驗(yàn)時(shí),P2亦接收高位地址和其他限制信號(hào)。P3口:P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O接口。P3口輸出緩沖級(jí)可驅(qū)動(dòng)4個(gè)TTL邏輯門電路。RST:復(fù)位輸入。ALE/:當(dāng)訪問外部數(shù)據(jù)時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。對(duì)FLASH存儲(chǔ)器編程時(shí),該引腳還用于輸入編程脈沖()。EA/VPP:外部訪問允許。:程序儲(chǔ)存允許。輸出是外部程序存儲(chǔ)器的度選通信號(hào)。XTAL2:振蕩器反相放大器的輸出端。XTAL1:振蕩器反相放大及內(nèi)部是鐘發(fā)生器的輸入端。圖3.2AT89S51的引腳結(jié)構(gòu)3.3里程計(jì)算設(shè)計(jì)本次設(shè)計(jì)里程計(jì)算接受霍爾傳感器A44E,時(shí)下已的到了廣泛的應(yīng)用。3.3.1霍爾傳感器簡介霍爾傳感器是利用霍爾效應(yīng)實(shí)現(xiàn)磁電轉(zhuǎn)換的一種傳感器,它具有靈敏度高,線性度好,穩(wěn)定性高、體積小和耐高溫等特點(diǎn),在機(jī)車限制系統(tǒng)中占有特殊重要的地位。對(duì)測速裝置的要求是辨別實(shí)力強(qiáng)、高精度和盡可能短的檢測時(shí)間?;魻柶骷哂性S多優(yōu)點(diǎn),它們的結(jié)構(gòu)堅(jiān)實(shí),體積小,重量輕,壽命長,安裝便利,功耗小,頻率高(可達(dá)1MHZ),耐振動(dòng),不怕灰塵、油污、水汽及鹽霧等的污染或腐蝕。依據(jù)霍爾器件的功能可將它們分為:霍爾線性器件和霍爾開關(guān)器件。前者輸出模擬量,后者輸出數(shù)字量。霍爾線性器件的精度高、線性度好;霍爾開關(guān)器件無觸點(diǎn)、無磨損、輸出波形清晰、無抖動(dòng)、無回跳、位置重復(fù)精度高(可達(dá)μm級(jí))。取用了各種補(bǔ)償和愛惜措施的霍爾器件的工作溫度范圍寬,可達(dá)-55℃~150℃。3.3.3里程計(jì)算、計(jì)價(jià)單元的設(shè)計(jì)里程計(jì)算是通過安裝在車輪上的霍爾傳感器A44E檢測到的信號(hào),送到單片機(jī),經(jīng)處理計(jì)算,送給顯示單元的。其原理如圖3.3所示。圖3.3傳感器測距示意圖由于A44E屬于開關(guān)型的霍爾器件,其工作電壓范圍比較寬(4.5~18V),其輸出的信號(hào)符合TTL電平標(biāo)準(zhǔn),可以干脆接到單片機(jī)的IO端口上,而且其最高檢測頻率可達(dá)到1MHZ。集成開關(guān)型霍爾傳感器原理如圖3.4所示。圖3.4集成開關(guān)型霍耳傳感器原理圖A44E集成霍耳開關(guān)由穩(wěn)壓器A、霍耳電勢(shì)發(fā)生器(即硅霍耳片)B、差分放大器C、施密特觸發(fā)器D和OC門輸出E五個(gè)基本部分組成。在輸入端輸入電壓CCV,經(jīng)穩(wěn)壓器穩(wěn)壓后加在霍耳電勢(shì)發(fā)生器的兩端,依據(jù)霍耳效應(yīng)原理,當(dāng)霍耳片處在磁場中時(shí),在垂直于磁場的方向通以電流,則和這二者相垂直的方向上將會(huì)產(chǎn)生霍耳電勢(shì)差HV輸出,該HV信號(hào)經(jīng)放大器放大后送至施密特觸發(fā)器整形,使其成為方波輸送到OC門輸出。當(dāng)施加的磁場達(dá)到工作點(diǎn).(即OPB)時(shí),觸發(fā)器輸出高電壓(相對(duì)于地電位)使三極管導(dǎo)通,此時(shí)OC門輸出端輸出低電壓,通常稱這種狀態(tài)為“開”。當(dāng)施加的磁場達(dá)到釋放點(diǎn)(即rPB)時(shí),觸發(fā)器輸出低電壓,三極管截止,使OC門輸出高電壓,這種狀態(tài)為“關(guān)”。這樣兩次電壓變換,使霍耳開關(guān)完成了一次開關(guān)動(dòng)作。其集成霍耳開關(guān)外形及接線如圖3.5所示。圖3.5集成霍耳開關(guān)外形及接線我們選擇了P3.2口作為信號(hào)的輸入端,內(nèi)部接受外部中斷0(這樣可以削減程序設(shè)計(jì)的麻煩),車輪每轉(zhuǎn)一圈(我們?cè)O(shè)車輪的周長是1米),霍爾開關(guān)就檢測并輸出信號(hào),引起單片機(jī)的中斷,對(duì)脈沖計(jì)數(shù),當(dāng)計(jì)數(shù)達(dá)到1000次時(shí),也就是1公里,單片機(jī)就限制將金額自動(dòng)的加增加,其計(jì)算公式:當(dāng)前單價(jià)×公里數(shù)=金額。3.4顯示原理由于設(shè)計(jì)要求有單價(jià)(2位)、路程(2位)、總金額(3位)顯示輸出,加上我們另外擴(kuò)展了時(shí)鐘顯示(包含時(shí)分秒的顯示),接受LCD液晶段碼顯示,在距離屏幕1米之外就無法看清數(shù)據(jù),不能滿意要求,而且在白天其對(duì)比度也不能夠滿意要求,因此我們接受6位LED數(shù)碼管顯示方式。3.4.1LED顯示工作原理LED(LightEmitlingDiode)是發(fā)光二極管的縮寫。LED顯示器是由發(fā)光二極管顯示字段的單片機(jī)輸出設(shè)備。單片機(jī)應(yīng)用系常接受7段LED數(shù)碼管作為顯示器,這種顯示器具有耗電低、配置靈敏、線路簡潔、安裝便利、耐振動(dòng)、價(jià)格低廉且壽命長等優(yōu)點(diǎn)。因此應(yīng)用廣泛。LED數(shù)碼管顯示器可以文衛(wèi)共陰極和共陽極兩種結(jié)構(gòu)。共陰極結(jié)構(gòu):假如全部的發(fā)光二極管的陰極接在一起,稱為共陰極結(jié)構(gòu),如圖3.6所示。共陽極結(jié)構(gòu):假如全部的發(fā)光二極管的陽極接在一起,稱為共陽極結(jié)構(gòu),如圖3.7所示。圖3.6共陰極結(jié)構(gòu)圖3.7共陽極結(jié)構(gòu)在單片機(jī)應(yīng)用系統(tǒng)中,顯示器顯示常用兩種方法:靜態(tài)顯示和動(dòng)態(tài)掃描顯示。所謂靜態(tài)顯示,就是每一個(gè)顯示器都要占用單獨(dú)的具有鎖存功能的I/O接口用于筆劃段字形代碼。這樣單片機(jī)只要把要顯示的字形代碼發(fā)送到接口電路,就不用管它了,直到要顯示新的數(shù)據(jù)時(shí),再發(fā)送新的字形碼,因此,運(yùn)用這種方法單片機(jī)中CPU的開銷小、編程簡潔,便于監(jiān)視和限制但是占用接口線多,硬件電路困難,成本高。而所謂的動(dòng)態(tài)顯示就是利用單片機(jī)依次輸出每一位數(shù)碼管的段選碼和對(duì)應(yīng)于該位數(shù)碼管的位選限制信號(hào),一位一位輪番點(diǎn)亮各段數(shù)碼管。本設(shè)計(jì)接受共陽極動(dòng)態(tài)顯示方式。3.4.2數(shù)碼管的分屏顯示數(shù)碼管的分屏顯示,如圖所示:圖3.8時(shí)鐘顯示(圖中顯示為12點(diǎn)00分46秒)圖3.9總金額和單價(jià)顯示(圖中顯示為總金額55.2元,每公里4.6元)圖3.10路程和單價(jià)顯示(圖中顯示為總路程12公里,當(dāng)前單價(jià)4.6元) 圖3.11單價(jià)調(diào)整顯示(圖中顯示為右起白天單價(jià)4.6元/晚上7.8/中途等待1.2元)數(shù)據(jù)的分屏的顯示是通過按鍵S1來實(shí)現(xiàn)切換的,如圖3.12所示。圖3.12S1切換顯示屏在出租車不走的時(shí)候,按下S1,可以實(shí)現(xiàn)數(shù)據(jù)的分屏顯示,車在行走的時(shí)候只有總金額和單價(jià)顯示屏在顯示,當(dāng)?shù)竭_(dá)目的地的時(shí)候,客戶要求查看總的里程的時(shí)候,就可以按下S1切換到里程和單價(jià)顯示屏,供客戶查詢。3.4.374HC164顯示驅(qū)動(dòng)74HC164是8位邊沿觸發(fā)式移位寄存器,串行輸入數(shù)據(jù),然后并行輸出。數(shù)據(jù)通過兩個(gè)輸入端(DSA或DSB)之一串行輸入,任一輸入端可以用作高電平使能端,限制另一輸入端的數(shù)據(jù)輸入。從單片機(jī)串口輸出的信號(hào)先送到左邊的移位寄存器(74HC164),由于移位脈沖的作用,使數(shù)據(jù)向右移,達(dá)到顯示的目的。移位寄存器74HC164還兼作數(shù)碼管的驅(qū)動(dòng),插頭1(header1)接電源,插頭2(header2)接數(shù)據(jù)和脈沖輸出端。電路中的三個(gè)整流管D1—D3的作用是降低數(shù)碼管的工作電壓,增加其運(yùn)用壽命。顯示器原理圖如圖3.13所示:3.13顯示器原理圖3.5AT24C02掉電存儲(chǔ)單元的設(shè)計(jì)AT24C02芯片引腳配置如圖3.14所示。AT24C02芯片引腳配置說明如表3.1所示。A2—A0地址引腳SDA、SCLI2C總線接口WP寫愛惜引腳,WP接VSS時(shí),禁止寫入高位地址,WP接VDD時(shí),允許寫入任何地址GND接地端VCC電源端表3.1AT24C02芯片引腳說明掉電存儲(chǔ)單元的作用是在電源斷開的時(shí)候,存儲(chǔ)當(dāng)前設(shè)定的單價(jià)信息。AT24C02是ATMEL公司的2KB字節(jié)的電可擦除存儲(chǔ)芯片,接受兩線串行的總線和單片機(jī)通訊,電壓最低可以到2.5V,額定電流為1mA,靜態(tài)電流10Ua(5.5V),芯片內(nèi)的資料可以在斷電的狀況下保存40年以上,而且采圖3.14引腳圖用8腳的DIP封裝,運(yùn)用便利。其電路如圖3.15所示。圖3.15掉電存儲(chǔ)電路原理圖圖中R8、R10是上拉電阻,其作用是削減AT24C02的靜態(tài)功耗,由于AT24C02的數(shù)據(jù)線和地址線是復(fù)用的,接受串口的方式傳送數(shù)據(jù),所以只用兩根線SCL(移位脈沖)和SDA(數(shù)據(jù)/地址)和單片機(jī)傳送數(shù)據(jù)。每當(dāng)設(shè)定一次單價(jià),系統(tǒng)就自動(dòng)調(diào)用存儲(chǔ)程序,將單價(jià)信息保存在芯片內(nèi)。當(dāng)系統(tǒng)重新上電的時(shí)候,自動(dòng)調(diào)用讀存儲(chǔ)器程序,將存儲(chǔ)器內(nèi)的單價(jià)等信息,讀到緩存單元中,供主程序運(yùn)用。3.6按鍵單元的設(shè)計(jì)在單片機(jī)應(yīng)用系統(tǒng)中,常用鍵盤作為輸入設(shè)備,通過它將數(shù)據(jù)、內(nèi)存地址、叮囑及指令等輸入到系統(tǒng)中,來實(shí)現(xiàn)簡潔的人機(jī)通信。按鍵開關(guān)的去除抖動(dòng)功能目前, AT89S51單片機(jī)應(yīng)用系統(tǒng)上的按鍵常接受機(jī)械觸點(diǎn)式按鍵,它在斷開、閉合時(shí)輸入電壓波形如圖3.16所示.可以看出機(jī)械觸點(diǎn)在閉合及斷開瞬間均有抖動(dòng)過程,時(shí)間長短和開關(guān)的機(jī)械特性有關(guān),一般為5~10ms。由于抖動(dòng),會(huì)造成被查詢的開關(guān)狀態(tài)無法精確讀出。例如,一次按鍵產(chǎn)生的正確開關(guān)狀態(tài),由于鍵的抖動(dòng),CPU多次采集原委電平信號(hào),會(huì)被誤認(rèn)為按鍵被多次按下,就會(huì)多次進(jìn)行鍵輸入操作,這是不允許的。為了保證CPU對(duì)鍵的一次閉合僅在按鍵穩(wěn)定時(shí)作一次鍵輸入處理,必需消退產(chǎn)生的前沿(后沿)抖動(dòng)影響。通常消退抖動(dòng)影響的方法有硬件、軟件兩種。當(dāng)按鍵較少時(shí),可接受硬件方法消退抖動(dòng)。如圖3.16所示圖3.16按鍵過程獨(dú)立式鍵盤的接口電路獨(dú)立式鍵盤的接口電路:在單片機(jī)應(yīng)用系統(tǒng)中,有時(shí)只須要幾個(gè)簡潔的按鍵向系統(tǒng)輸入信息。這時(shí),可將每個(gè)按鍵干脆接在一根I/O接口線上,這種連接方式的鍵盤稱為獨(dú)立式鍵盤。如圖3.17所示。每個(gè)獨(dú)立按鍵單獨(dú)占有一根I/O接口線,每根I/O接口線的工作狀態(tài)不會(huì)影響到其他I/O接口線。這種按鍵接口電路配置靈敏,硬件結(jié)構(gòu)簡潔,但每個(gè)按鍵必需占用一根I/O線,I/O接口線奢侈較大。故只在按鍵數(shù)量不多時(shí)接受這種按鍵電路。在此電路中,按鍵輸入都接受低電平有效。上拉電阻保證了按鍵斷開時(shí),I/O接口線有確定的高電平。當(dāng)I/O接口內(nèi)部有上拉電阻時(shí),外電路可以不配置上拉電阻。圖3.17獨(dú)立式鍵盤電路3.6.3按鍵單元的設(shè)計(jì)電路共接受了四個(gè)按鍵,S1、S2、S3、S4,其功能分別是:S1分屏顯示切換按鍵,S2功能設(shè)定按鍵,S3.+./白天晚上切換按鍵,S4.-./中途等待開關(guān)。其電路連接如圖3.18所示。圖3.18按鍵連接圖3.6.4按鍵的功能(1)S1按鍵的功能在出租車不走的時(shí)候,按下S1,可以實(shí)現(xiàn)數(shù)據(jù)的分屏顯示,車在行走的時(shí)候只有總金額和單價(jià)顯示屏在顯示,當(dāng)?shù)竭_(dá)目的地的時(shí)候,客戶要求查看總的里程的時(shí)候,就可以按下S1切換到里程和單價(jià)顯示屏,供客戶查詢。(2)S2按鍵的功能在按下S1按鍵之后,若接著按下S2鍵則進(jìn)行單價(jià)調(diào)整(默認(rèn)為調(diào)整白天單價(jià)),當(dāng)接著按下S1時(shí),則進(jìn)行晚上單價(jià)調(diào),再次按下S1可進(jìn)行中途等待單價(jià)調(diào)整。當(dāng)單價(jià)調(diào)整結(jié)束后,可以通過過按下S2按鍵進(jìn)行時(shí)間調(diào)整,默認(rèn)為調(diào)整時(shí),接著按下S1可進(jìn)行調(diào)整分,分調(diào)整后再接下S1可進(jìn)行秒調(diào)整。當(dāng)時(shí)調(diào)整完成后,若接著按下S2則又可進(jìn)行單價(jià)調(diào)整。(3)S3按鍵的功能在顯示金額及單價(jià)時(shí),若按下S3鍵則顯示路程和單價(jià),再次按下S3則可返回顯示金額及單價(jià)。(4)S4按鍵的功能在按下S1按鍵之后,若接著按下S4按鍵,則進(jìn)行設(shè)定默認(rèn)晚上單價(jià),并啟動(dòng)計(jì)價(jià)器,若沒有按下S4則可設(shè)定默認(rèn)單價(jià)(白天),并啟動(dòng)計(jì)價(jià)器。當(dāng)設(shè)定默認(rèn)晚上單價(jià)結(jié)束后,再次接下S4按鍵則可設(shè)定默認(rèn)中途等待單價(jià),并啟動(dòng)計(jì)價(jià)器。當(dāng)設(shè)定默認(rèn)中途等待單價(jià)后,若還按一次S4,則返回系統(tǒng)時(shí)間的顯示。

4系統(tǒng)的軟件設(shè)計(jì)4.1模塊介紹本系統(tǒng)的軟件設(shè)計(jì)主要可分為主程序模塊、定時(shí)計(jì)數(shù)中斷程序、里程計(jì)數(shù)中斷服務(wù)程序、中途等待中斷服務(wù)程序、顯示子程序服務(wù)程序、鍵盤服務(wù)程序六大模塊。下面對(duì)各部分模塊作介紹。4.2主程序模塊在主程序模塊中,須要完成對(duì)各接口芯片的初始化、出租車起價(jià)和單價(jià)的初始化、中斷向量的設(shè)計(jì)以及開中斷、循環(huán)等待等工作。另外,在主程序模塊中還須要設(shè)置啟動(dòng)/清除標(biāo)記寄存器、里程寄存器和價(jià)格寄存器,并對(duì)它們進(jìn)行初始化。然后,主程序?qū)⒁罁?jù)各標(biāo)記寄存器的內(nèi)容,分別完成啟動(dòng)、清除、計(jì)程和計(jì)價(jià)等不同的操作。當(dāng)按下S1時(shí),就啟動(dòng)計(jì)價(jià),將依據(jù)里程寄存器中的內(nèi)容計(jì)算和推斷出行駛里程是否已超過起價(jià)公里數(shù)。若已超過,則依據(jù)里程值、每公里的單價(jià)數(shù)和起價(jià)數(shù)來計(jì)算出當(dāng)前的累計(jì)價(jià)格,并將結(jié)果存于價(jià)格寄存器中,然后將時(shí)間和當(dāng)前累計(jì)價(jià)格送顯示電路顯示出來。當(dāng)?shù)竭_(dá)目的地的時(shí)候,由于霍爾開關(guān)沒有送來脈沖信號(hào),就停止計(jì)價(jià),顯示當(dāng)前所應(yīng)當(dāng)付的金額和對(duì)應(yīng)的單價(jià),到下次啟動(dòng)計(jì)價(jià)時(shí),系統(tǒng)自動(dòng)對(duì)顯示清零,并重新進(jìn)行初始化過程。主程序流程圖如圖4.1所示。圖4.1主程序流程圖主程序:ORG0000HAJMPMAINORG0003HAJMPTOORG000BHAJMPTOTIMEORG001BHAJMPTOSTARTORG0030HMAIN:MOVSP,#70HMOVTMOD,#11HMOVTH0,#3CHMOVTL0,#0B0HMOVTH1,#3CHMOVTL1,#0B0HMOV22H,#0AHSETBEASETBTR0SETBEX0SETBIT0SETBET0SETBET1MOVR7,#34MOVR0,#69H……4.3定時(shí)中斷服務(wù)程序在定時(shí)中斷服務(wù)程序中,每100ms產(chǎn)生一次中斷,當(dāng)產(chǎn)生10次中斷的時(shí)候,也就到了一秒,送數(shù)據(jù)到相應(yīng)的顯示緩沖單元,并調(diào)用顯示子程序?qū)崟r(shí)顯示。定時(shí)中斷服務(wù)程序流程圖如圖4.2所示。圖4.2定時(shí)中斷服務(wù)程序流程圖程序:PUSHPSWPUSHACCMOVTH0,#3CHMOVTL0,#0B0HINCMS100MOVA,MS100CJNEA,#10,RETURNMOVMS100,#0MOVA,SECADDA,#1DAAMOVSEC,ACJNEA,#60H,RETURNMOVSEC,#0……4.4里程計(jì)數(shù)中斷服務(wù)程序每當(dāng)霍爾傳感器輸出一個(gè)低電平信號(hào)就使單片機(jī)中斷一次,當(dāng)里程計(jì)數(shù)器對(duì)里程脈沖計(jì)滿1000次時(shí),就有程序?qū)?dāng)前總額送入里程計(jì)數(shù)中斷服務(wù)程序中。在該程序中,須要完成當(dāng)前行駛里程數(shù)和總額的累加操作,并將結(jié)果存入里程和總額寄存器中。4.5中途等待中斷服務(wù)程序當(dāng)在計(jì)數(shù)狀態(tài)下霍爾開關(guān)沒有輸出信號(hào),片內(nèi)的T1定時(shí)器便被啟動(dòng),每當(dāng)計(jì)時(shí)到達(dá)10分鐘,就對(duì)當(dāng)前金額加上中途等待的單價(jià),以后每特殊鐘都自動(dòng)加上中途等待的單價(jià)。當(dāng)中途等待結(jié)束的時(shí)候,也就自動(dòng)切換到正常的計(jì)價(jià)。4.6顯示子程序服務(wù)程序由于是分屏顯示數(shù)據(jù),所以就要用到4個(gè)顯示子程序,分別是:時(shí)分秒顯示子程序(HMS_DIS)、金額單價(jià)顯示子程序(CP_DIS)、路程單價(jià)顯示子程序(DP_DIS)、單價(jià)調(diào)整子程序(PA_DIS)。程序:HMS_DIS:PUSHACCPUSHPSWSETBRS1MOVR0,#SEC;時(shí)分秒的拆分(三個(gè)字節(jié))MOVR1,#LEDSLMOVR6,#03H……CP_DIS:PUSHACCPUSHPSWSETBRS1MOVR0,#COUNTH;MOVR1,#LEDCOUNT2MOVA,@R0MOVB,AANLA,#0FHMOV@R1,A……DP_DIS:PUSHACCPUSHPSWSETBRS1MOVR0,#PRICE;單價(jià)的拆分(一個(gè)字節(jié))MOVR1,#LEDDANJIALMOVA,@R0MOVB,A……PA_DIS1:PUSHACCPUSHPSWMOVA,LEDDAY_PL;白天單價(jià)MOVDPTR,#TABMOVCA,@A+DPTRMOVSBUF,AJNBTI,$CLRTIMOVA,LEDDAY_PHMOVDPTR,#TABMOVCA,@A+DPTRCPLACC.4MOVSBUF,AJNBTI,$CLRTIMOVA,LEDNIG_PL;晚上單價(jià)MOVDPTR,#TABMOVCA,@A+DPTRMOVSBUF,AJNBTI,$CLRTIMOVA,LEDNIG_PHMOVDPTR,#TABMOVCA,@A+DPTRCPLACC.4MOVSBUF,AJNBTI,$CLRTIMOVA,LEDW_PLMOVDPTR,#TABMOVCA,@A+DPTRMOVSBUF,AJNBTI,$CLRTIMOVA,LEDW_PHMOVDPTR,#TABMOVCA,@A+DPTRCPLACC.4MOVSBUF,AJNBTI,$CLRTICLRRS1POPPSWPOPACCRETTAB:DB11H,0D7H,32H,92H,0D4H,98H,18H,0D1H,10H,90H,0FFH4.7鍵盤服務(wù)程序鍵盤接受查詢的方式,放在主程序中,當(dāng)沒有按鍵按下的時(shí)候,單片機(jī)循環(huán)主程序,一旦右按鍵按下,便轉(zhuǎn)向相應(yīng)的子程序處理,處理結(jié)束再返回。5系統(tǒng)調(diào)試和測試結(jié)果分析依據(jù)系統(tǒng)設(shè)計(jì)方案,本系統(tǒng)的調(diào)試共分為三大部分:硬件調(diào)試,軟件調(diào)試和軟硬件聯(lián)調(diào)。測試包括里程計(jì)價(jià)測試、掉電存儲(chǔ)測試。5.1運(yùn)用的儀器儀表數(shù)字萬用表DT9203單片機(jī)仿真器WAVE6000燒寫器GF2100雙蹤穩(wěn)壓穩(wěn)流電源DH1718E-5數(shù)字示波器TDS1002在軟件調(diào)試過程中,因?yàn)锳T89S51和MCS—51系列相兼容,所以在調(diào)試WAVE6000調(diào)試過程中,我們接受8751來進(jìn)行調(diào)試。如圖5.1所示:圖5.1WAVE6000設(shè)置圖5.2系統(tǒng)調(diào)試依據(jù)系統(tǒng)設(shè)計(jì)方案,本系統(tǒng)的調(diào)試共分為三大部分:硬件調(diào)試,軟件調(diào)試和軟硬件聯(lián)調(diào)。由于在系統(tǒng)設(shè)計(jì)中接受模塊設(shè)計(jì)法,所以便利對(duì)各電路模塊功能進(jìn)行逐級(jí)測試。5.2.1里程計(jì)價(jià)測試由于試驗(yàn)條件有限,我們接受電動(dòng)機(jī)附帶霍爾元件作為車輪,電機(jī)為3V的直流電機(jī),每分的轉(zhuǎn)速可以達(dá)到幾千轉(zhuǎn),我們?cè)O(shè)定電機(jī)每轉(zhuǎn)一圈為車輪轉(zhuǎn)動(dòng)1米,當(dāng)電機(jī)轉(zhuǎn)動(dòng)達(dá)到1000圈時(shí),就表示已經(jīng)到達(dá)了一公里,系統(tǒng)自動(dòng)將當(dāng)前的單價(jià)加到總金額上。表5.1的測試條件是:設(shè)定白天的單價(jià)是2.5元,起步價(jià)為5元(包含3公里),分別行駛不同里程測得數(shù)據(jù)如下表。公公里41015374959總金額理論7.522.53590120145實(shí)際7.60222.4983590.12119.978145行駛路程理論41015374959實(shí)際41014.8936.9849.0258.023表5.1白天單價(jià)測試表5.2測試條件是:晚上的單價(jià)設(shè)定為3.0元,起步價(jià)為5元(包含3公里),分別行駛不同里程測得數(shù)據(jù)如下表。公公里41015374959總金額理論82641107143173實(shí)際82640.989107143.01173.01行駛路程理論41015374959實(shí)際41014.8936.9849.0258.023表5.2晚上單價(jià)測試表5.3測試條件是:設(shè)定在

溫馨提示

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

評(píng)論

0/150

提交評(píng)論