基于單片機(jī)的出租車計(jì)費(fèi)器的畢業(yè)設(shè)計(jì)論文_第1頁(yè)
基于單片機(jī)的出租車計(jì)費(fèi)器的畢業(yè)設(shè)計(jì)論文_第2頁(yè)
基于單片機(jī)的出租車計(jì)費(fèi)器的畢業(yè)設(shè)計(jì)論文_第3頁(yè)
基于單片機(jī)的出租車計(jì)費(fèi)器的畢業(yè)設(shè)計(jì)論文_第4頁(yè)
基于單片機(jī)的出租車計(jì)費(fèi)器的畢業(yè)設(shè)計(jì)論文_第5頁(yè)
已閱讀5頁(yè),還剩24頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、基于單片機(jī)出租車計(jì)費(fèi)器的設(shè)計(jì) 目 錄摘 要2abstract31 課程設(shè)計(jì)任務(wù)書(shū)41.1 課程設(shè)計(jì)任務(wù)41.2 課程設(shè)計(jì)方案42硬件電路設(shè)計(jì)62.1 振蕩電路62.2 復(fù)位電路設(shè)計(jì)62.3 鍵盤接口電路72.4 顯示電路72.4.1 1602lcd的基本參數(shù)及引腳功能72.4.2 顯示模塊采用1602液晶顯示接口電路92.5 單片機(jī)各引腳功能說(shuō)明93 軟件設(shè)計(jì)113.1 單片機(jī)資源使用113.2 單片機(jī)軟件模塊設(shè)計(jì)123.2.1 中斷子函數(shù)123.2.2 判鍵子函數(shù)123.2.3 顯示子程序133.3 總程序流程框圖14總結(jié)15參考文獻(xiàn)16致謝17附錄1 元件件清單18附錄2 原理圖19附錄3

2、 程序清單20摘 要 本設(shè)計(jì)的是一個(gè)基于單片機(jī)stc89c52的出租車自動(dòng)計(jì)費(fèi)設(shè)計(jì),附有復(fù)位電路,時(shí)鐘電路,鍵盤電路等。復(fù)位電路是單片機(jī)的初始化操作,除了正常的初始化外,為擺脫困境,通過(guò)復(fù)位電路可以重新開(kāi)始。時(shí)鐘電路采用12mhz的晶振,作為系統(tǒng)的時(shí)鐘源,具有較高的準(zhǔn)確性。在上電時(shí)字符型液晶1602顯示最初的起步價(jià),里程收費(fèi),等待時(shí)間收費(fèi)三種收費(fèi),通過(guò)按鍵可以調(diào)整起步價(jià),里程收費(fèi),等待時(shí)間收費(fèi)。通過(guò)按鍵模擬出租車的運(yùn)行,暫停,停止。在1602液晶上可以顯示運(yùn)行的時(shí)間,運(yùn)行時(shí)暫停的時(shí)間,通過(guò)計(jì)算可以得出總共的費(fèi)用和總的路程。在這里主要是以stc89c52單片機(jī)為核心控制器,p1口接1602液晶顯

3、示模塊。關(guān)鍵字 stc89c52;1602液晶;出租車計(jì)費(fèi)器abstractthe design is based on a monolithic integrated circuit stc89c52 taxi billing design, with reset circuit, clocking circuit, keyboard circuit. reset circuit is initialized, besides the normal operation of the initial dilemma, as a foreigner, through the reset circ

4、uit can start again. 12mhz adopts the clock circuit, as a system of crystal oscillator, higher clock source.the characters in the crystal that the initial 1602, charges, fees mileage waiting time, three buttons can be adjusted by charging fees, just waiting time, mileage. through the simulation of t

5、he taxi, buttons, stop. suspension in the liquid crystal display can run 1602, operation time, when suspension can be obtained by the computation of the total cost.here is mainly for the core controller, stc89c52 scm p0 mouth after 1602 lcd module, p1 mouth after the keys, through the keystroke.keyw

6、ord: stc89c52;1602 lcd;taxi devices1 課程設(shè)計(jì)任務(wù)書(shū)1.1 課程設(shè)計(jì)任務(wù) 基于單片機(jī)出租車模擬計(jì)價(jià)器,采用at24c02存儲(chǔ)芯片+lcd1602液晶顯示等設(shè)計(jì)而成。用24c02來(lái)存儲(chǔ)單價(jià),通過(guò)按鍵來(lái)模擬增加里程,模擬出租車向前開(kāi)。通過(guò)液晶顯示器顯示當(dāng)前的行駛狀態(tài)、行駛公里、行駛時(shí)間時(shí)間(時(shí)、分、秒)、費(fèi)用、單價(jià)、等信息??梢栽O(shè)置每公里單價(jià),以及夜間單價(jià)和白天單價(jià)的不同模式,設(shè)置后掉電無(wú)需重新設(shè)置,設(shè)置有等待/繼續(xù)計(jì)時(shí)模式。計(jì)費(fèi)分行走的里程*單價(jià)+等待的時(shí)間*價(jià)格。1.2 課程設(shè)計(jì)方案方案一:采用數(shù)字電子技術(shù),利用555定時(shí)芯片構(gòu)成多諧振蕩器,或采用外圍的晶振

7、電路作為時(shí)鐘脈沖信號(hào),采用計(jì)數(shù)芯片對(duì)脈沖盡心脈沖的計(jì)數(shù)和分頻,最后通過(guò)譯碼電路對(duì)數(shù)據(jù)進(jìn)行譯碼,將譯碼所得的數(shù)據(jù)送給數(shù)碼管顯示,一下是該方案的流程框圖,方案一如圖1.1所示:時(shí)鐘脈沖等待信號(hào)公里脈沖計(jì)費(fèi)脈沖計(jì)時(shí)計(jì)費(fèi)譯碼數(shù)碼管顯示圖1.1方案一 方案二:采用eda技術(shù),根據(jù)層次化設(shè)計(jì)理論,該設(shè)計(jì)問(wèn)題自頂向下可分為分頻模塊,控制模塊 計(jì)量模塊、譯碼和動(dòng)態(tài)掃描顯示模塊,其系統(tǒng)框圖如圖1.2所示:時(shí)鐘信號(hào)等待信號(hào)公里脈沖計(jì)費(fèi)/復(fù)位分頻器控制器計(jì)費(fèi)計(jì)時(shí)計(jì)程譯碼顯示圖1.2方案二方案三:采用mcu技術(shù),通過(guò)單片機(jī)作為主控器,利用1602字符液晶作為顯示電路,采用外部晶振作為時(shí)鐘脈沖,通過(guò)按鍵可以方便調(diào)節(jié),一

8、下是方案三的系統(tǒng)流程圖,本方案主要是必須對(duì)于數(shù)字電路比較熟悉,成本又高。方案圖如圖1.3所示:stc89c521602液晶led燈電源電路按鍵電路復(fù)位電路圖1.3方案三方案總結(jié):通過(guò)各個(gè)方案的比較本次采用方案三,不但控制簡(jiǎn)單,而且成本低廉,設(shè)計(jì)電路簡(jiǎn)單。2硬件電路設(shè)計(jì)2.1 振蕩電路 單片機(jī)內(nèi)部有一個(gè)高增益、反相放大器,其輸入端為芯片引腳xtal1,其輸出端為引腳xtal2。通過(guò)這兩個(gè)引腳在芯片外并接石英晶體振蕩器和兩只電容(電容和一般取20pf)。這樣就構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。 振蕩電路脈沖經(jīng)過(guò)二分頻后作為系統(tǒng)的時(shí)鐘信號(hào),再在二分頻的基礎(chǔ)上三分頻產(chǎn)生ale信號(hào),此時(shí)得到的信號(hào)時(shí)機(jī)器周期信號(hào)

9、。振蕩電路如圖2.1所示:圖2.1振蕩電路2.2 復(fù)位電路設(shè)計(jì) 復(fù)位操作有兩種基本形式:一種是上電復(fù)位,另一種是按鍵復(fù)位。按鍵復(fù)位具有上電復(fù)位功能外,若要復(fù)位,只要按圖中的reset鍵,電源vcc經(jīng)電阻r1、r2分壓,在reset端產(chǎn)生一個(gè)復(fù)位高電平。上電復(fù)位電路要求接通電源后,通過(guò)外部電容充電來(lái)實(shí)現(xiàn)單片機(jī)自動(dòng)復(fù)位操作。上電瞬間reset引腳獲得高電平,隨著電容的充電,rerst引腳的高電平將逐漸下降。rerst引腳的高電平只要能保持足夠的時(shí)間(2個(gè)機(jī)器周期),單片機(jī)就可以進(jìn)行復(fù)位操作。按鍵復(fù)位電路圖如圖2.2所示。 圖2.2復(fù)位電路2.3 鍵盤接口電路 (1) 獨(dú)立式鍵盤:獨(dú)立式鍵盤中,每個(gè)

10、按鍵占用一根i/o口線,每個(gè)按鍵電路相對(duì)獨(dú)立。i/o口通過(guò)按鍵與地相連,i/o口有上拉電阻,無(wú)鍵按下時(shí),引腳端為高電平,有鍵按下時(shí),引腳電平被拉低。i/o口內(nèi)部有上拉電阻時(shí),外部可不接上拉電阻。鍵盤接口電路如圖2.3所示: 圖2.3鍵盤接口電路2.4 顯示電路2.4.1 1602lcd的基本參數(shù)及引腳功能1602lcd分為帶背光和不帶背光兩種,基控制器大部分為hd44780,帶背光的比不帶背光的厚,是否帶背光在應(yīng)用中并無(wú)差別,兩者尺寸差別如圖10所示。 圖10 lm016l結(jié)構(gòu)圖lcd1602主要技術(shù)參數(shù):容量:162個(gè)字符芯片工作電壓:4.55.5v工作電流:2.0ma(5.0v)模塊最佳工

11、作電壓:5.0v字符尺寸:2.954.35(wh)mm引腳功能說(shuō)明:1602lcd采用標(biāo)準(zhǔn)的14腳(無(wú)背光)或16腳(帶背光)接口,各引腳接口說(shuō)明如表1所示: 表1引腳接口說(shuō)明表編號(hào)符號(hào)引腳說(shuō)明編號(hào)符號(hào)引腳說(shuō)明1vss電源地9d2數(shù)據(jù)2vdd電源正極10d3數(shù)據(jù)3vl液晶顯示偏壓11d4數(shù)據(jù)4rs數(shù)據(jù)/命令選擇12d5數(shù)據(jù)5r/w讀/寫選擇13d6數(shù)據(jù)6e使能信號(hào)14d7數(shù)據(jù)7d0數(shù)據(jù)15bla背光源正極8d1數(shù)據(jù)16blk背光源負(fù)極第1腳:vss為地電源。第2腳:vdd接5v正電源。第3腳:vl為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地時(shí)對(duì)比度最高,對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生“鬼影”,使用

12、時(shí)可以通過(guò)一個(gè)10k的電位器調(diào)整對(duì)比度。第4腳:rs為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。第5腳:r/w為讀寫信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)rs和r/w共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)rs為低電平r/w為高電平時(shí)可以讀忙信號(hào),當(dāng)rs為高電平r/w為低電平時(shí)可以寫入數(shù)據(jù)。第6腳:e端為使能端,當(dāng)e端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。第714腳:d0d7為8位雙向數(shù)據(jù)線。第15腳:背光源正極。第16腳:背光源負(fù)極。 2.4.2 顯示模塊采用1602液晶顯示接口電路 圖2.4顯示電路 2.5 單片機(jī)各引腳功能說(shuō)明 下面對(duì)stc89c52各

13、引腳的功能進(jìn)行較為詳細(xì)的介紹:1)電源引腳vcc和vss vcc(40腳):電源端為+5v vss(20腳):接地端。 2)時(shí)鐘電路引腳xtal1和xtal2xtal2(18腳):接外部晶體和微調(diào)電容的一端。在單片機(jī)內(nèi)部它是振蕩電路反向放大器的輸出端,振蕩電路的頻率就是晶體固有頻率。若需采用外部時(shí)針電路時(shí),該引腳輸入外時(shí)鐘脈沖。要檢查89c52的振蕩電路是否正常工作,可用示波器查看xtal2端是否有脈沖信號(hào)輸出。xtal1(19腳):接外部晶體和微調(diào)電容的另一端。在片內(nèi),它是振蕩電路反向放大器的輸入端。在采用外部時(shí)鐘時(shí),該引腳必須接地。 3)控制信號(hào)腳 rst ale psen 和ea。 rs

14、t(9腳):rst是復(fù)位信號(hào)輸入端,高電平有效。在此輸入端保持兩個(gè)機(jī)器周期(24個(gè)時(shí)鐘振蕩周期)的高電平時(shí),就可以完成復(fù)位操作。ale/prog(30引腳):地址鎖存允許信號(hào)端。當(dāng)stc89c52上電正常工作后,ale引腳不斷向外輸出正脈沖信號(hào)。此頻率為振蕩器頻率fosc的1/6,當(dāng)cpu訪問(wèn)片外存儲(chǔ)器時(shí),ale輸出信號(hào)作為鎖存低8位地址的控制信號(hào)。在cpu訪問(wèn)片外數(shù)據(jù)存儲(chǔ)時(shí),每取值一次(一個(gè)機(jī)器周期)會(huì)丟失一個(gè)脈沖。平時(shí)不訪問(wèn)片外存儲(chǔ)時(shí),ale端也以1/6的振蕩頻率固定輸出正脈沖,因而ale信號(hào)可以用作對(duì)外輸出時(shí)鐘或定時(shí)信號(hào)。如果你想看一下stc89c52芯片的好壞,可用示波器查看ale端是

15、否有脈沖信號(hào)輸出,如有脈沖信號(hào)輸出,則stc89c52基本上是好的。ale的負(fù)載驅(qū)動(dòng)能力為8個(gè)ls型ttl(低功耗高速ttl)。 psen(29腳);程序存儲(chǔ)允許輸出信號(hào)引腳,在訪問(wèn)片外程序存儲(chǔ)器時(shí),此端定時(shí)輸出負(fù)脈沖作為讀片外存儲(chǔ)器的選通信號(hào)。此引腳接errom的oe端。psen端有效,即允許讀出errom/rom中的指令碼。cpu在從外部errom/rom取指令期間,每個(gè)周期psen兩次有效。不過(guò),在訪問(wèn)片外ram時(shí),要少產(chǎn)生兩次psen負(fù)脈沖信號(hào)。要檢查一個(gè)stc89c52小系統(tǒng)上電后cpu能否正常到errom/rom中讀取指令碼,也可用于示波器看psen端有無(wú)脈沖輸出。如有,說(shuō)明基本上

16、工作正常。ea/vpp(31腳):外部程序存儲(chǔ)器地址允許輸入端/固化編程電壓輸入端。當(dāng)ea引腳接高電平時(shí),cpu只訪問(wèn)片內(nèi)errom/rom并執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。但在pc(程序計(jì)數(shù)器)的值超過(guò)offfh(對(duì)8751/8051為4k)時(shí),將自動(dòng)轉(zhuǎn)向執(zhí)行片外存儲(chǔ)器的程序。當(dāng)出入信號(hào)ea引腳接低電平(接地)時(shí),cpu只訪問(wèn)外部errom/rom并執(zhí)行外部程序存儲(chǔ)器中的指令,而不管是否有片內(nèi)程序存儲(chǔ)器。對(duì)于無(wú)芯片內(nèi)的rom的8031或8032,須外擴(kuò)errom,此時(shí)必須將ea引腳接地。如果使用有片內(nèi)rom的stc89c52,外擴(kuò)errom也是可以的,但也要使ea接地。4)i/o(輸入/輸出端口

17、,p0,p1,p2,p3)p0口:p0口是一個(gè)漏極開(kāi)路的8位準(zhǔn)雙向i/o端口。p1口:8位準(zhǔn)雙向i/o端口。p2口:即可以做地址總線輸出地址高8位,也可以做普通i/o用,(此時(shí)為準(zhǔn)雙向口)。p3口:雙功能口,即可以做普通i/o口用(此時(shí)為準(zhǔn)向口,也可以按每位定義實(shí)現(xiàn)第二功能操作)。見(jiàn)表1。表1 p3口的第二功能表引腳第二功能p3.0rxd (串行輸入口)p3.1txd (串行輸出口)p3.2int0(外部中斷0)p3.3int1(外部中斷1)p3.4t0(定時(shí)器0外部中斷)p3.5t1(定時(shí)器1外部中斷)p3.6wr(外部存儲(chǔ)器寫選通)p3.7rd(外部存儲(chǔ)器讀寫通)3 軟件設(shè)計(jì)3.1 單片機(jī)

18、資源使用在本次設(shè)計(jì)中像電路鍵盤用到了p2口,其中p2.0到p2.5口作為鍵盤的輸入,顯示電路用到了p1和p3口,p1口為液晶的數(shù)據(jù)口。3.2 單片機(jī)軟件模塊設(shè)計(jì)3.2.1 中斷子函數(shù) 對(duì)于中斷程序,只要定時(shí)器計(jì)數(shù)滿就會(huì)產(chǎn)生中斷50ms中斷一次,共計(jì)20次,秒鐘加1,秒鐘計(jì)滿再分鐘加,當(dāng)分鐘加到99時(shí)全部清零。以下是中斷子函數(shù)的流程圖如圖3.1所示:圖3.1中斷子程序流程圖3.2.2 判鍵子函數(shù) 對(duì)于獨(dú)立式鍵盤判鍵,首先看有鍵按下不,如果有鍵按下則延時(shí)一會(huì)兒,在判斷是否真的有鍵按下,如果確實(shí)有鍵按下,在判鍵釋放,最后執(zhí)行鍵功能程序。判鍵子函數(shù)的流程框圖如圖3.2所示: 圖3.2判鍵子程序流程圖3

19、.2.3 顯示子程序 1602液晶是字符型液晶,它的內(nèi)部自帶字符庫(kù),它可以寫兩行的字符,同時(shí)每行可以寫40個(gè)字符,在寫顯示程序的時(shí)候,我們先寫命令,再設(shè)定字符顯示,最后寫數(shù)據(jù),在每寫一次命令或數(shù)據(jù)都需要判斷液晶是否忙。液晶顯示程序流程圖如圖3.3所示: 3.3顯示子程序流程圖3.3 總程序流程框圖整體程序的流程框圖如圖3.4所示:圖3.4整體程序的流程框圖總結(jié)出租車計(jì)費(fèi)器系統(tǒng)的設(shè)計(jì)已經(jīng)全部完成,能按預(yù)期的效果進(jìn)行模擬汽車啟動(dòng),停止,暫停等功能,并能夠通過(guò)lcd顯示車費(fèi)數(shù)目。本款出租車計(jì)價(jià)器包括單價(jià)輸出、單價(jià)調(diào)整、顯示當(dāng)前的系統(tǒng)時(shí)間等功能。另外,多功能出租車計(jì)價(jià)器還具有性能可靠、電路簡(jiǎn)單、成本低

20、、實(shí)用性強(qiáng)等特點(diǎn),加上經(jīng)過(guò)優(yōu)化的程序,使其有很高的智能化水平。幾個(gè)月來(lái),經(jīng)過(guò)自己努力,基本上完成了設(shè)計(jì)要求的內(nèi)容,在系統(tǒng)可行性分析、原理圖設(shè)計(jì)等方面都作了許多實(shí)際工作,取得了一些成績(jī),同時(shí)也遇到了一些問(wèn)題,存在一些不足。經(jīng)過(guò)這幾個(gè)月的學(xué)習(xí)和工作,我覺(jué)得自己不論是在理論知識(shí)方面還是在動(dòng)手能力方面都有了不小的進(jìn)步,自己從中受益匪淺。這次設(shè)計(jì)很好的把以前學(xué)到的理論知識(shí)應(yīng)用于實(shí)踐,使我認(rèn)識(shí)到理論知識(shí)與實(shí)踐之間有一定的差距,只有通過(guò)不斷的努力學(xué)習(xí)和實(shí)踐才能很好的把理論知識(shí)應(yīng)用到實(shí)踐當(dāng)中,也只有通過(guò)不斷的實(shí)踐才能對(duì)理論知識(shí)的理解。通過(guò)這次設(shè)計(jì)不僅學(xué)會(huì)了如何去查找相關(guān)資料,更重要的是通過(guò)查找資料和翻閱書(shū)籍學(xué)

21、到了不少知識(shí),擴(kuò)大了知識(shí)面,提高了知識(shí)水平。經(jīng)過(guò)單元設(shè)計(jì)和系統(tǒng)設(shè)計(jì)鞏固了以前所學(xué)的專業(yè)知識(shí),自己真正認(rèn)識(shí)到理論聯(lián)系實(shí)際的重要性,為以后的學(xué)習(xí)和工作提供了很多有價(jià)值的經(jīng)驗(yàn)。通過(guò)這次設(shè)計(jì)不僅增強(qiáng)了自己的動(dòng)腦能力和動(dòng)手能力,也提高了我思考問(wèn)題、分析問(wèn)題、解決問(wèn)題的能力,更重要的是學(xué)會(huì)用工程化的思想來(lái)解決問(wèn)題。這在以前的學(xué)習(xí)過(guò)程中是不曾學(xué)到的。在短短的三個(gè)月時(shí)間內(nèi)完成設(shè)計(jì)內(nèi)容,在很大程度上得益于老師的幫助。這次設(shè)計(jì)是我認(rèn)真認(rèn)識(shí)到完整、嚴(yán)謹(jǐn)、科學(xué)分析問(wèn)題、解決問(wèn)題的思想是多么的重要,只有擁有了科學(xué)的態(tài)度才能設(shè)計(jì)出有用的產(chǎn)品。另外通過(guò)本次設(shè)計(jì),是我認(rèn)識(shí)到自己理論知識(shí)的應(yīng)用能力有很大的欠缺,需要在以后的學(xué)習(xí)

22、中進(jìn)一步提高。參考文獻(xiàn)1 李廣弟,朱月秀,冷祖祁.單片機(jī)基礎(chǔ)m.第3版.北京航空航天大學(xué)出版社,2007年1月2李華.mcs-51系列單片機(jī)實(shí)用接口技術(shù)m.北京航空航天大學(xué)出版社,19963 馬忠梅,張凱,馬巖,單片機(jī)的c語(yǔ)言應(yīng)用程序設(shè)計(jì),m,北京:北京航空航天大學(xué)出版社,2003.11;4 胡輝,單片機(jī)原理及應(yīng)用設(shè)計(jì)21世紀(jì)高等院校規(guī)劃教材m,水利水電出版社,2005.7;5 劉守義,單片機(jī)應(yīng)用技術(shù)m,西安:西安電子科技大學(xué)出版社,1996.8;致謝 本論文是在何淑珍老師的悉心指導(dǎo)下完成的,何老師的淵博學(xué)識(shí)和豐富經(jīng)驗(yàn)給我留下了深刻的印象。從何老師那里我學(xué)到的不僅是專業(yè)知識(shí)與實(shí)際問(wèn)題科學(xué)解決的

23、方法,更為重要的是勤奮和嚴(yán)謹(jǐn)治學(xué)的精神以及對(duì)學(xué)生的認(rèn)真負(fù)責(zé),老師的諄諄教誨使我受益匪淺,在此向何老師表示衷心的感謝并致以崇高的敬意!感謝家人給予我學(xué)業(yè)上和生活上的支持與照顧。同時(shí)感謝給予我?guī)椭母魑焕蠋?、同學(xué)以及朋友們!附錄1 元件件清單 表5.1元器件清單 名稱規(guī)格數(shù)量備注 電阻 2001個(gè)1k1個(gè)10k5個(gè)1002個(gè) 電容20pf2個(gè)10f2個(gè)極性電容 發(fā)光二極管3個(gè) 按鍵7個(gè)直流電機(jī)1個(gè) 晶振12mhz1個(gè) 芯片stc89c521塊1602液晶1塊內(nèi)帶字符庫(kù)待添加的隱藏文字內(nèi)容1附錄2 原理圖附錄3 程序清單#include /調(diào)用單片機(jī)頭文件#define uchar unsigned

24、 char /無(wú)符號(hào)字符型 宏定義變量范圍0255#define uint unsigned int /無(wú)符號(hào)整型 宏定義變量范圍065535uchar miao,fen = 0,shi;uchar flag_bai_hei; /白天的晚上的標(biāo)志位uchar value;uint bai_3l_price = 60; /白天3千米內(nèi)的單價(jià) 6元uint bai_3w_price = 18; /白天3千米外的單價(jià)/千米 1.8元uint bai_wait_price = 5; /白天等待時(shí)的單價(jià)/分鐘 0.5元uint wan_3l_price = 70; /晚上3千米內(nèi)的單價(jià)/千米 7元uin

25、t wan_3w_price = 22; /晚上3千米外的單價(jià)/千米 2.2元uint wan_wait_price = 10; /晚上等待時(shí)的單價(jià)/分鐘 1元uint distance = 0; /行使的距離uint zong_jia; /總的價(jià)bit flag_300ms = 0;bit flag_1s ;bit flag_time_en = 0;#include lcd1602.h/*1ms延時(shí)函數(shù)*/void delay_1ms(uint q)uint i,j;for(i=0;iq;i+)for(j=0;j= 5) /按鍵松開(kāi)松手檢測(cè)key_value = 0;key_new = 1;

26、/按鍵松開(kāi)后進(jìn)入等待按鍵狀態(tài)else if(key_io & 0x3f) != 0x3f) /按鍵按下key_value +;else key_value =0;if(key_value = 5)/按鍵按下消抖key_value = 0;key_new = 0; /按鍵松開(kāi)后進(jìn)入等待松開(kāi)按鍵狀態(tài)key_can = 20;if(key_new = 0) & (key_old = 1)switch(key_io & 0x3f)case 0x3e: key_can = 1; break; /得到按鍵值 case 0x3d: key_can = 2; break; /得到按鍵值 case 0x3b:

27、key_can = 3; break; /得到按鍵值 case 0x37: key_can = 4; break; /得到按鍵值 case 0x1f: key_can = 5; break; /得到按鍵值 case 0x2f: key_can = 6; break; /得到按鍵值 /write_sfm2(2,0,key_can); /按鍵按下顯示按鍵值 key_old = key_new; #include menu.h/*對(duì)應(yīng)菜單內(nèi)的處理函數(shù)*/void menu_dis()if(menu_1 = 0)if(key_can = 6)distance +;write_sfm4(1,0,distance); if(key_can = 5) /清零 從新計(jì)價(jià)flag_time_en = 0;shi = 0;fen = 0;miao = 0;zong_

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論