![出租車計費(fèi)器設(shè)計-電子信息工程本科畢業(yè)論文_第1頁](http://file.renrendoc.com/FileRoot1/2019-10/31/05833bb5-fb50-43b3-ae22-d720897a45bf/05833bb5-fb50-43b3-ae22-d720897a45bf1.gif)
![出租車計費(fèi)器設(shè)計-電子信息工程本科畢業(yè)論文_第2頁](http://file.renrendoc.com/FileRoot1/2019-10/31/05833bb5-fb50-43b3-ae22-d720897a45bf/05833bb5-fb50-43b3-ae22-d720897a45bf2.gif)
![出租車計費(fèi)器設(shè)計-電子信息工程本科畢業(yè)論文_第3頁](http://file.renrendoc.com/FileRoot1/2019-10/31/05833bb5-fb50-43b3-ae22-d720897a45bf/05833bb5-fb50-43b3-ae22-d720897a45bf3.gif)
![出租車計費(fèi)器設(shè)計-電子信息工程本科畢業(yè)論文_第4頁](http://file.renrendoc.com/FileRoot1/2019-10/31/05833bb5-fb50-43b3-ae22-d720897a45bf/05833bb5-fb50-43b3-ae22-d720897a45bf4.gif)
![出租車計費(fèi)器設(shè)計-電子信息工程本科畢業(yè)論文_第5頁](http://file.renrendoc.com/FileRoot1/2019-10/31/05833bb5-fb50-43b3-ae22-d720897a45bf/05833bb5-fb50-43b3-ae22-d720897a45bf5.gif)
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
樂山師范學(xué)院畢業(yè)論文(設(shè)計) 本科生畢業(yè)設(shè)計報告系(院) 物理與電子工程學(xué)院 專 業(yè) 電子信息工程 論文題目 出租車計費(fèi)器的設(shè)計 學(xué)生姓名 指導(dǎo)教師 (姓名及職稱)班 級 2012級電信4班 學(xué) 號 完成日期:2016年4月11出租車計費(fèi)器的設(shè)計xxx物理與電子工程學(xué)院 電子信息工程 xxxxx摘要本設(shè)計主要是針對城市出租車運(yùn)營而設(shè)計的一款智能收費(fèi)系統(tǒng)。是以單片機(jī)STC89C52RC為核心,通過光電傳感器來累加車輪旋轉(zhuǎn)的圈數(shù)和算法來計算出行駛的路程,并根據(jù)相應(yīng)的收費(fèi)標(biāo)準(zhǔn)計算出應(yīng)當(dāng)收取的費(fèi)用;以LCD12864液晶顯示屏來顯示路程、單價、行駛的時間和消費(fèi)金額等信息;利用SYN6288語音模塊在一些特定的時候進(jìn)行語音播報提示。本設(shè)計還可以根據(jù)用戶的自身情況對收費(fèi)的標(biāo)準(zhǔn)進(jìn)行調(diào)整。關(guān)鍵詞出租車計費(fèi)器 SYN6288 LCD12864 光電傳感器 01 前言1.1 設(shè)計背景在國民經(jīng)濟(jì)的快速發(fā)展下,城市的交通治安逐漸變得整齊有序,出租車計價器在城市的交通中也得到廣泛的使用。雖然私家車擁有的數(shù)量在逐漸的增長,但是出租車依然是城市交通運(yùn)輸乘客的重要角色。出租車計價器是出租車上統(tǒng)計路程及時間和通過收費(fèi)標(biāo)準(zhǔn)計算消費(fèi)金額的儀表儀器,是出租車上必不可少的部分,它是負(fù)責(zé)計算出租車營運(yùn)收費(fèi)的專用智能儀表。不管是消費(fèi)的乘客還是出租車的司機(jī)都要求計價器在性能方面能夠穩(wěn)定、計價準(zhǔn)確而且在它的功能方面也要求越來越高。有史以來,在城市出租車已經(jīng)成為人們工作、生活中不可缺少的交通工具。出租車計價器是一種能根據(jù)乘客乘坐出租車行駛的路程和收費(fèi)的方式計算出乘客消費(fèi)的金額并直接顯示車費(fèi)值的計量工具。出租車計價器是出租車上結(jié)算消費(fèi)金額的計算工具,所以計價器計價準(zhǔn)確與否,直接關(guān)系到雙方的經(jīng)濟(jì)利益。1.2 設(shè)計目的和意義大力提高城市安全文明的建設(shè)是當(dāng)前城市建設(shè)的主要內(nèi)容之一,隨著人們生活水平的不斷提高,人們對各種工具的功能要求也越來越高。就出租車收費(fèi)器而言,人們對它的功能要求也是逐漸的增加,雖然它的功能在趨于完善,但任然有很多可以改進(jìn)的地方。本次的設(shè)計選用的主要元件是單片機(jī),不僅是為了完成設(shè)計的要求和各功能的實現(xiàn),更是為了檢驗我們對所學(xué)知識的應(yīng)用能力以及我們解決問題的能力。2 任務(wù)的提出與方案論證2.1 設(shè)計要求 1、能對出租車行駛的路程進(jìn)行統(tǒng)計并顯示; 2、能根據(jù)行駛的路程和相應(yīng)的收費(fèi)標(biāo)準(zhǔn)計算出消費(fèi)的金額; 3、具有計時的功能; 4、在一些特定的時候,有語音提醒播報的功能; 5、有按鍵控制的功能。2.2 方案選擇控制芯片的選擇:方案一:采用單片機(jī)控制,利用單片機(jī)控制的靈活性以及豐富的IO端口,不僅能實現(xiàn)基本的計程和價格實現(xiàn),還能實現(xiàn)計時、和語音提醒播報的功能。方案二:采用數(shù)字電路控制,通過傳感器輸出脈沖信號,進(jìn)過放大整形作為位移寄存器的脈沖信號,實現(xiàn)計價,但這種電路能實現(xiàn)的功能比較單一、簡單,已經(jīng)不能滿足現(xiàn)在出租車的使用。在上述兩種方案中,很明顯方案一的適用能力要比方案二強(qiáng),方案一能實現(xiàn)的功能也多余方案二,故選用第一種方案。傳感器的選擇:方案一:霍爾傳感器,霍爾傳感器的測速靈敏度比較高,有使用方便、價格便宜等優(yōu)點(diǎn),很適合汽車測速等應(yīng)用場合。方案二:光電傳感器,光電傳感器工作比較穩(wěn)定,使用方便、價格便宜,很適合用在統(tǒng)計數(shù)量、自動開關(guān)等方面。以上兩種傳感器都是汽車測速原件的很好選擇,由于我對光電傳感器工作原理的了解比較了解,而對霍爾傳感器原件的工作原理不是很了解,所以本次我選擇了光電傳感器。顯示電路的選擇:方案一:采用數(shù)碼管顯示,采用數(shù)碼管顯示它需要幾段才能顯示一個信息,此次設(shè)計的顯示信息量有點(diǎn)偏大,若采用數(shù)碼管顯示電路,則加大了硬件電路的連接。方案二:采用液晶LCD1602顯示,LCD1602只能顯示兩行的信息,適用于信息量顯示不大的場合,而且只能顯示字符不能顯示漢字,所以在此次設(shè)計中不易使用。方案三:采用液晶LCD12864顯示,LCD12864可以顯示四行信息,它不僅能顯示字符,還能顯示漢字。綜合以上三種顯示電路的特點(diǎn)和結(jié)合此次設(shè)計的需求,覺得LCD12864更能適用于本次設(shè)計,故選擇方案三。2.3 總體方案設(shè)計此次設(shè)計的總體方案規(guī)劃如下:在整個控制系統(tǒng)中以單片機(jī)STC89C52RC為核心。光電傳感器在電機(jī)的作用下產(chǎn)生信號脈沖,并將脈沖信號傳送給主控芯片單片機(jī),單片機(jī)通過一系列的計算和處理后將要顯示的信息送給液晶LCD12864顯示出來,將要播報的語音信號發(fā)送給SYN6288語音模塊進(jìn)行播報;此外,單片機(jī)還受按鍵的控制,其目的是方便人們對整個系統(tǒng)進(jìn)行選擇和操作控制。整個系統(tǒng)的電路框圖如圖2.1所示。圖2.1 整個系統(tǒng)電路框圖3 系統(tǒng)電路設(shè)計 3.1 主控模塊電路本次的設(shè)計中單片機(jī)STC89C52RC為主控芯片,是整個設(shè)計中的核心元件。它在電子行業(yè)的市場上已成為大眾化器件,它與51單片機(jī)完全兼容。我們在使用的時候可以多次下載修改的程序,大大的提高了芯片的使用率,所以在很多簡單的設(shè)計中,人們都選擇采用單片機(jī)。其目的就是價格便宜,使用靈活。STC89C52RC單片機(jī)同一般的單片機(jī)芯片一樣,在工作和燒寫程序的時候必需要外接最小系統(tǒng)。最小系統(tǒng)包括晶振電路、復(fù)位電路和電源電路,它們是單片機(jī)能否正常工作的最基本條件。單片機(jī)最小系統(tǒng)電路圖如圖3.1所示。圖3.1 單片機(jī)最小系統(tǒng)電路圖3.2 光電傳感器模塊本次設(shè)計在測量路程的過程中選用的是光電測速傳感器模塊(寬槽板),它的外形如圖3.2所示。圖3.2 光電傳感器模塊外形用途:主要廣泛的應(yīng)用于電機(jī)轉(zhuǎn)速檢測、脈沖計數(shù)、位置閑位、開關(guān)控制等方面。工作原理:此次選用的光電傳感器內(nèi)部主要由指示燈電路、光耦傳感器、寬電壓LM393比較器輸出電路組成。當(dāng)光耦傳感器槽中無遮擋時,接收管導(dǎo)通,模塊OUT輸出低電平(輸出0狀態(tài)),此時指示燈會處于點(diǎn)亮狀態(tài);當(dāng)光耦傳感器槽中有遮擋時,接收管截止,模塊OUT輸出高電平(輸出1狀態(tài)),此時指示燈會處于熄滅狀態(tài)。引腳連接:此模塊有三個引腳,他們分別是VCC、GND、OUT,其連接方式是:VCC接電源正極3.35V;GND接電源的負(fù)極;OUT 為TTL開關(guān)輸出端,本次我采用的是外部中斷1的連接方式,因此我將OUT腳接到單片機(jī)的13腳(即P33/腳)。電路的連接方式如圖3.3所示。圖3.3 光電傳感器工作原理圖3.3 SYN6288語音模塊SYN6288語音模塊屬于中文語音合成模塊電路,是北京宇音天下科技公司于2010年初推出的一款性價比高、音質(zhì)清晰、自然的語音合成芯片。它的外形如圖3.4所示。圖3.4 SYN6288語音模塊外形SYN6288語音模塊的應(yīng)用領(lǐng)域很廣,其中在公交報站器、銀行叫號機(jī)、自動售貨機(jī)、語音電子書等方面得到廣泛的應(yīng)用。此模塊采用的是串口通信接收數(shù)據(jù)的方式,支持三種通信波特率:9600bps、19200bps、38400bps。在使用SYN6288語音模塊的時候,外部電路的連接方式很簡單,它有兩組端口,一組是外接喇叭負(fù)載的端口,接入的喇叭規(guī)格為8歐0.5瓦,在接線的時候沒有正負(fù)之分,還有一組有5個引腳構(gòu)成,分別是VDD、RXD、TXD、GND、BY,其中VDD和GND分別接電源的正極和負(fù)極;而RXD、TXD與單片機(jī)上的串口腳RXD(P3.0)和TXD(P3.1)交叉相連;最后的一個引腳BY為檢測是否為忙碌狀態(tài),當(dāng)BY為低電平時,說明模塊處于空閑狀態(tài)、為高電平時模塊處于忙碌狀態(tài),此引腳可以選擇性的接單片機(jī)的IO口,也可以不接。此模塊電路的電路連接圖如圖3.5所示。圖3.5 語音模塊電路連接圖3.4 顯示模塊電路設(shè)計中采用的LCD12864有20個引腳,其中DB0DB7是接受數(shù)據(jù)的并口,我采用的是與單片機(jī)的P0口相接,但P0口的驅(qū)動能力不夠強(qiáng),所以必須外接上拉電阻;除此以外還有幾個控制腳,它們的功能和作用分別是:RS:當(dāng)液晶采用并行連接方式時為指令/數(shù)據(jù)選擇信號,當(dāng)液晶采用串行連接方式時為片選信號控制端。R/W:當(dāng)液晶采用并行連接方式時為讀寫控制腳,即當(dāng)R/W = 0時,液晶處于寫狀態(tài),當(dāng)R/W = 1時,液晶處于讀狀態(tài);當(dāng)液晶采用串口連接方式時為數(shù)據(jù)傳送口。E:當(dāng)液晶采用并行連接方式時為使能控制端,當(dāng)液晶采用串行連接方式時為同步時鐘控制端。PSB:串并口方式控制,PSB = 0為串口方式,PSB = 1為并口方式。RST:復(fù)位端,低電平有效。BLA:背光源正極,可直接接+5V電源。BLK:背光源負(fù)極,可直接接地。VCC:電源正極,接+5V電源。GND:電源負(fù)極,接地。除此以外的其它三個引腳對本次的電路沒有特別的影響,所以可以選擇不接,根據(jù)以上對各引腳的了解和為了方便電路板布線,所以本次的顯示電路的連接方式為如圖3.6所示。圖3.6 LCD12864顯示電路連接圖3.5 按鍵控制電路任何一個系統(tǒng)電路都需要有按鍵控制電路,其主要目的是方便人們控制操作、修改設(shè)置等,此次在我的設(shè)計中,也需要有按鍵控制電路,方便出租車司機(jī)在使用的時候進(jìn)行操作控制和一些簡單的設(shè)置。在這次的電路中初步用六個按鍵(不包括電源按鍵),它們分別是開始按鍵、暫停按鍵、結(jié)束按鍵、設(shè)置按鍵、調(diào)節(jié)按鍵兩個。電路的連接方式采用將每一個按鈕開關(guān)與單片機(jī)的P1口的每一個引腳相連接,然后另一端公共接地。電路的連接如圖3.7所示。圖3.7 按鍵控制電路圖3.6 系統(tǒng)的總體電路此次設(shè)計的電路總共分為5部分,它們分別是以上介紹的單片機(jī)最小系統(tǒng)、光電傳感器測速電路、12864液晶信息顯示電路、按鍵控制系統(tǒng)電路、SYN6288語音播報電路。在整個系統(tǒng)電路中,這五部分電路是主要以單片機(jī)來協(xié)調(diào)、控制工作的,單片機(jī)也是整個電路的核心原件,整個硬件的系統(tǒng)電路如圖3.8所示。圖3.8 系統(tǒng)電路原理圖4 系統(tǒng)程序設(shè)計硬件電路的連接是為了支持軟件程序的運(yùn)行,所以在編寫軟件程序的時候軟件一般都要參照硬件電路編寫,不能盲目的去寫,如若不然我們編寫的程序?qū)o法在我們的電路板上運(yùn)行;所以編寫的程序必須與硬件電路相互兼容,才能實現(xiàn)出我們預(yù)期的效果。4.1 計時中斷程序設(shè)計設(shè)計中的計時功能是采用的單片機(jī)內(nèi)部的定時/計數(shù)器T0進(jìn)行計數(shù),當(dāng)計數(shù)達(dá)到溢出時產(chǎn)生中斷,通過執(zhí)行中斷函數(shù)而實現(xiàn)計時。要開啟定時/計數(shù)器T0,首先要對與之相關(guān)的幾個寄存器進(jìn)行設(shè)置。對寄存器的設(shè)置程序需要放在主程序的一開始,以便于程序在運(yùn)行的時候一開始就可以開啟中斷,進(jìn)行計時。開啟定時/計數(shù)器T0主要涉及到以下幾個寄存器的設(shè)置:方式寄存器TMOD的設(shè)置,它的格式如表4.1所示。定時/計數(shù)器T0只與TMOD寄存器的第四位有關(guān),如果我們的設(shè)計與定時/計數(shù)器T1無關(guān)的話,我們可以忽略高四位。此次我選用的是方式1工作模式,所以我們要將M1、M0兩位賦值為01;是定時或計數(shù)方式的選擇位,這里選用的是定時方式,所以給位賦值0;對于GATE是啟動方式位,直接賦值0,表示由軟件啟動定時器。表4.1 方式寄存器TMODD7D6D5D4D3D2D1D0-GATEM1M0定時/計數(shù)器T0的初值設(shè)置,定時/計數(shù)器T0由特殊寄存器TH0和TL0組成,此次我們需要以1s為單位來計算時間,但是1s的時間太長,單片機(jī)的定時器采用方式1最長也只能定時65536us,所以采用定時50ms,中斷20次來獲得1s的時間;由此可以計算出初值為65536-50000=15536;所以給T0的初值應(yīng)該為15536;TH0賦值高8位:15536右移8位,TL0賦值為低8位:15536與上255。由于T0工作在方式1,不具有自動重裝初值的功能,所以在每次中斷發(fā)生以后都需要在中斷程序里利用程序給TH0和TL0重新賦初值。另外與T0中斷有關(guān)的、需要設(shè)置的寄存器還有定時器控制寄存器TCON的TR0位和中斷允許寄存器IE的EA位和ET0位,在這里,我們只需要將這些位設(shè)置為1就可以完成定時器0的初始化設(shè)置。T0中斷源在C程序的中斷號是interrupt 1,在編寫中斷程序的時候需要加上中斷號。在中斷程序中我們主要計算時間的時、分、秒,用于系統(tǒng)電路的計時功能,此中斷程序只會在中斷觸發(fā)以后執(zhí)行,程序的流程圖如圖4.1所示。圖4.1 定時器T0中斷程序流程圖4.2 外部中斷計程程序設(shè)計STC89C52RC單片機(jī)有兩個外部中斷源,本次的設(shè)計在計算路程的程序中就用到了一個外部中斷源,選擇的是外部中斷1,它對應(yīng)的是我們單片機(jī)的P3.3腳,它在C程序中的中斷號是interrupt 2。外部中斷1的設(shè)置主要是它的觸發(fā)方式,它的觸發(fā)方式有兩種:一是低電平觸發(fā)方式、二是邊沿觸發(fā)方式;P3.3腳外接的光電傳感器模塊在沒有遮擋時會長時間輸入低電平,如果采用低電平觸發(fā)方式有可能會出現(xiàn)一次中斷請求而發(fā)生多次中斷請求的情況,所以在這里選擇邊沿觸發(fā)方式。選擇邊沿觸發(fā)方式的設(shè)置只需要把定時控制寄存器TCON的IT1設(shè)置為1。中斷允許寄存器IE的EA和EX1也與外部中斷1有關(guān),所以也要將其設(shè)置為1。在外部中斷1的程序中我們只作統(tǒng)計發(fā)生外部中斷1的次數(shù)的工作,其余計算路程和金額的程序放在主程序中進(jìn)行計算,以便于縮短CPU執(zhí)行中斷程序的時間。4.3串口語音發(fā)送程序的設(shè)計 串口中斷的初始化程序設(shè)計主要是對相關(guān)寄存器的設(shè)置和串口波特率的設(shè)置,需要設(shè)置的寄存器主要有控制狀態(tài)寄存器SCON、電源控制寄存器PCON的SMOD位、定時控制寄存器TCON的TR1位和T1定時/計數(shù)器。SCON寄存器的設(shè)置,主要用于定義串口通信口的工作方式和反映串行口狀態(tài),這次我們選用的是方式1的工作方式,表示8位UATR(串行異步通信接口);打開寄存器的REN位,所以給SCON寄存器賦值0X50。PCON寄存器與串口相關(guān)的只有SMOD位,它是波特率倍增位,當(dāng)將該位設(shè)置位1的時候,表示串口波特率加倍。波特率的發(fā)生需要定時器產(chǎn)生時鐘信號,由于在前面已經(jīng)用了T0定時/計數(shù)器,所以這里只能用T1定時/計數(shù)器,這里T1定時/計數(shù)器選用方式2的工作模式,便于每次溢出后能夠自動的重裝初值;串口語音信號發(fā)送的波特率選用的是9600;外部的石英晶振頻率為11.0592MHz,根據(jù)公式1通過計算得出T1的初始值X為0xFA,即表示我們要給TH1和TH1都賦值為0xFA。 (公式1)當(dāng)這些寄存器設(shè)置完畢以后將TCON寄存器的TR1置1即可運(yùn)行T1定時/計算器。串口數(shù)據(jù)在發(fā)送前要根據(jù)通信協(xié)議設(shè)置TB8,然后將要發(fā)送的數(shù)據(jù)在主程序中直接寫入發(fā)送緩沖器SBUF,便可自動啟動發(fā)送過程。串行口能自動的把TB8取出,并裝入到第九位的數(shù)據(jù)位的位置,再逐一發(fā)送出去1。4.4主程序的設(shè)計在整個程序的設(shè)計中最重要的是主程序,它的主要任務(wù)是完成中斷的初始化、液晶初始化及液晶信息顯示、開關(guān)狀態(tài)檢測、模式的調(diào)節(jié)等。它的主要流程圖如下圖4.2所示。在主程序中很多地方都采用了調(diào)用子函數(shù)的方法來縮短主函數(shù)代碼,由于子函數(shù)封裝得比較多,這里就不對他們做過多的說明。開始初始化液晶顯示信息、設(shè)置中斷否開始計費(fèi)按鈕是否按下是開啟中斷、液晶清屏、發(fā)送語音提示信息計算路程、計算消費(fèi)金額、液晶顯示信息否暫停計費(fèi)按鈕是否按下是關(guān)閉中斷、發(fā)送語音提示信息否開始按鈕是否按下是開啟中斷、發(fā)送語音提示信息否是否已剛好行駛2km是發(fā)送語音提示信息清出所有計費(fèi)數(shù)據(jù)否消費(fèi)金額是否為10的倍數(shù)是發(fā)送語音提示信息否結(jié)賬按鈕是否按下是發(fā)送語音提示信息、關(guān)閉中斷是 返回主界面按鈕是否按下否圖4.2 主程序流程圖5 硬件電路的制作與調(diào)試5.1 硬件電路的制作整個硬件電路是在萬能板上面焊接原件和連接焊點(diǎn)而組成的,在制作的時候首先是布局的問題,只有一開始布好局在走線的時候才不會顯得那么亂,制作好以后才會顯得美觀,電路的性能才會可靠,不會出現(xiàn)接觸不良等問題。這次在電路板上,為了擔(dān)心元器件損壞,或者為了有些元器件能夠再次利用,我都采用了焊接芯片座的方式將一些引腳比較多的原件直接插在座子上面實驗。硬件電路的實物圖如圖5.1所示。此電路板上加了一個電機(jī),其目的是方便演示和調(diào)試。圖 5.1 電路實物圖5.2 硬件調(diào)試的結(jié)果在經(jīng)過多次的程序修改和硬件電路的改進(jìn)后,整個硬件電路的調(diào)試結(jié)果已經(jīng)能夠達(dá)到預(yù)期設(shè)想的效果了,圖5.2和5.3是最終調(diào)試成功后在某個時候的顯示結(jié)果圖。電路能夠正常的通過光電傳感器計算行駛的路程;在開關(guān)的控制下能夠正常的運(yùn)行;液晶能正常的把信息顯示出來;也能在特殊的時候進(jìn)行語音提示播報。28圖 5.2 硬件的初始顯示界面圖圖 5.3 硬件的行程信息顯示圖5.3 PCB板的繪制硬件電路的調(diào)試成功,說明電路的可行性。為了便于生產(chǎn)與使用,我將電路繪制成PCB板。本次繪制PCB板選用的是protel 99 se軟件。在前面我們已將電路的原理圖繪制成功了,所以在現(xiàn)在只需要將原有的電路添加到PCB板界面進(jìn)行繪制就可以完成制作了。完成的結(jié)果如圖5.4所示;進(jìn)過3D視圖看到的效果如圖5.5所示。 圖5.4 PCB板圖圖5.5 PCB板3D視圖6 總結(jié)思考本次的畢業(yè)設(shè)計雖然順利的完成了,但是并不能完全的投入到實際中去使用,其原因是存在計算精度和功能方面的缺陷問題。在計算精度方面存在的主要問題就是計算路程并沒有以實際的車輪周長去計算,而是為了方便演示隨便給了一個比實際值要大的值,這就造成了計算的路程和費(fèi)用出現(xiàn)嚴(yán)重的誤差,但這個問題可以通過修改調(diào)試程序解決;在功能方面的主要缺陷問題就是時間和計費(fèi)方式方面,因為電路不能自動的去獲取當(dāng)前的時間,就沒有辦法去區(qū)分晚上和白天,而且也沒有掉電保護(hù)功能,在異常掉電的情況下,所有的計算數(shù)據(jù)就清零了,這是電路存在的兩大缺陷問題,這兩個問題就需要在單片機(jī)外圍加上一些輔助電路和配合單片機(jī)的程序去解決,這是此次電路設(shè)計的主要缺陷問題。在經(jīng)過了長達(dá)一個月的努力后,畢業(yè)設(shè)計已經(jīng)完成得差不多了,雖然還有許多需要改進(jìn)和不足的地方,但是大部分的功能已經(jīng)完整的實現(xiàn)了。在這期間經(jīng)歷了選題、查資料、選材料、電路板焊接、程序的編寫、論文的撰寫等過程。其實最讓我痛苦的是選題的階段;在后期的制作與調(diào)試階段雖然也遇到過很多困難,但在指導(dǎo)老師和一些同學(xué)們的幫助或建議下順利地度過了難關(guān)。本次的畢業(yè)設(shè)計不但強(qiáng)化了我所學(xué)過的專業(yè)基礎(chǔ)知識,而且還學(xué)到了很多新的知識,更讓我們懂得了如何將所學(xué)到的知識應(yīng)用于實際的生活中;讓我收獲最大的就是懂得了如何客服困難,這在以后的生活和工作中都是最寶貴的財富。參考文獻(xiàn)1周國運(yùn). 單片機(jī)原理及應(yīng)用 C語言版. 北京:中國水利水電出版社, 2009.02. 2王柏盛.C 程序設(shè)計M.高等教育出版社. 2004.3楊志忠主編. 數(shù)字電子技術(shù)基礎(chǔ). 北京:高等教育出版社, 2004.01.4楊居義編著. 單片機(jī)案例教程. 北京:清華大學(xué)出版社, 2015.01.5楊庚辰.自動控制原理M.西安:電子科技大學(xué)出版社,2011.4.6代萬輝,陳松方編著. 全國電子設(shè)計大賽培訓(xùn)寶典. 北京:北京航空航天大學(xué)出版社, 2012.05. 7張義和等編著. 例說51單片機(jī) C語言版. 北京:人民郵電出版社, 2008.04.8侯殿有主編. 單片機(jī)C語言程序設(shè)計. 北京:人民郵電出版社, 2010.11. 9孫少文,陸中宏主編. 傳感器. 北京:中央廣播電視大學(xué)出版社, 2014.01. 10丁繼斌編著. 傳感器. 北京:化學(xué)工業(yè)出版社, 2010.03. 11張玉蓮.傳感器與自動檢測技術(shù)J.北京:機(jī)械工業(yè)出版社,2007.9:4-8.12王英主編. 電子技術(shù)實驗教程 電工學(xué) 2 模電實驗 數(shù)電實驗 綜合設(shè)計與仿真實驗. 成都:西南交通大學(xué)出版社, 2015.03. 13胡新宇.傳感器與自動檢測技術(shù)M.北京:高等教育出版社,2006.14鄧興成.單片機(jī)原理與實踐指導(dǎo)M.北京:機(jī)械工業(yè)出版社,2010.2.15劉向宇.單片機(jī)C語言程序設(shè)計實例精粹J.北京:電子工業(yè)出版社,2010,2:12-21.16夏路易,石宗義編著. 電路原理圖與電路板設(shè)計教程 Protel 99SE. 北京:北京希望電子出版社, 2002.06. 17姚年春編著. Protel 99SE基礎(chǔ)教程. 北京:人民郵電出版社, 2009.04. 18童詩白,華成英主編.模擬電子技術(shù)基礎(chǔ)(第四版)M.北京:高等教育出版社,2007.9.19SYN6288中文語音合成芯片數(shù)據(jù)手冊J.The Design Of Taxi MeterXxxInstitute of physics and electronic engineeri Electronic information engineering 1230xxxxxAbstract The design is a shart changing system which mainly for the arban taxi operation.and it core for the single chip processor STC89C52RC. Through the photoelectric sensor to accumulate the number of turns of the rotation of the wheels and algorithms to calculate the driving distance. And according to the corresponding fee standards to get the charge should be. Through the LCD12864 to show the distance, unit price, the information of the time and the amount of consumption and so on. In certain time there is speech hint by using voice module of SYN6288. This design can also adjust the charge standard according to the users own situation.Key words Taxi meter, SYN6288, LCD12864, Photoelectric sensor.附錄系統(tǒng)源代碼main.h文件源代碼:#ifndef _main_h_#define _main_h_#include 12864.h#include sbit begin_key = P10;/開始計費(fèi)按鈕sbit pause_key = P11;/暫停計費(fèi)按鈕sbit end_key = P12;/結(jié)算費(fèi)用按鈕sbit mface_key = P13;/返回主界面按鈕sbit nigday_key = P16;/晚上白天切換按鈕unsigned short degree = 0; /統(tǒng)計T0發(fā)生中斷的次數(shù),滿20次清零,時間加1sunsigned short flag1 = 0; /協(xié)助語音發(fā)送,以免重復(fù)unsigned short flag2 = 0; /協(xié)助語音發(fā)送,以免重復(fù)unsigned short flag3 = 0; /判斷當(dāng)前是白天狀態(tài)還是晚上狀態(tài)float runs = 2.5; /路程的比較值,當(dāng)路程大于runs則加上單價unsigned short hour = 0; /時unsigned short minutes = 0; /分unsigned short seconds = 0; /秒unsigned short value = 0; /統(tǒng)計外部中斷的次數(shù),滿100次,路程加0.1KMunsigned int run_int = 0; / 路程的整數(shù)部分unsigned int run_fac = 0; /路程的小數(shù)部分unsigned int money_int = 5; /金額的整數(shù)部分unsigned int money_fac = 0; /金額的小數(shù)部分unsigned char time10; /要顯示的時間字符串unsigned char money_str10; /要顯示的金錢字符串unsigned char voice40; /要發(fā)送的語音字符串unsigned char run_str10; /要顯示的路程字符串unsigned char* time_string(); /將時、分、秒轉(zhuǎn)換成一個字符串unsigned char* run_string(); /將路程轉(zhuǎn)換成一個字符串unsigned char* money_string(); /將金額轉(zhuǎn)換成一個字符串void send(char *text,char length);/發(fā)送一個要播放的語音信號void interrupt_set(); /中斷相關(guān)寄存器設(shè)置void count_run(); /路程算法函數(shù) void count_money(); /金額算法函數(shù)void Init_show(); /液晶初始顯示信息void mess_show(); /計費(fèi)時動態(tài)顯示信息void init_data(); /還原所有的數(shù)據(jù)#endifmain.c文件源代碼:#include main.hint main()while(1) Init_show(); interrupt_set(); /設(shè)置中斷strcpy(voice,計費(fèi)開始起步價五元); send(voice,strlen(voice);LcdInit(); /初始化液晶while(1)count_run();count_money();mess_show();if(nigday_key = 0) if(flag3 = 0)flag3 = 1;else flag3 = 0; if(pause_key = 0) /暫停開關(guān)按下執(zhí)行 EA = 0;strcpy(voice,計費(fèi)暫停); send(voice,strlen(voice);while(1)if(begin_key = 0)/開始開關(guān)按下執(zhí)行并跳出循環(huán)EA = 1;strcpy(voice,計費(fèi)開始); send(voice,strlen(voice);break;if(end_key = 0) strcpy(voice, 您本次消費(fèi));strcat(voice, money_str);strcat(voice,元);send(voice,strlen(voice);while(1)if(mface_key = 0)break;init_data();break; if(run_int = 2) & (flag1 = 0)/如果行駛路程超過2KM,則播放語音if(flag3 = 0)strcpy(voice,您已行駛兩公里現(xiàn)在以1.6元一公里計費(fèi)); elsestrcpy(voice,您已行駛兩公里現(xiàn)在以1.8元一公里計費(fèi));send(voice,strlen(voice);flag1 = 1;if(money_int-9)%10 = 0)flag2 = 0;if(money_int % 10 = 0) & (flag2 = 0) /如果消費(fèi)金額滿10元則播放此語音strcpy(voice,您已消費(fèi));money_str3 = 0;money_str4 = 0;strcat(voice, money_str);strcat(voice,元); send(voice,strlen(voice);flag2 = 1;/*恢復(fù)變量函數(shù),以便對下次收費(fèi)進(jìn)行計費(fèi)*/void init_data()hour = 0; minutes = 0; seconds = 0;run_int = 0;run_fac = 0;runs = 2.5;value = 0;flag1 = 0;flag2 = 0;money_int = 5;money_fac = 0;EA = 0; /*LCD初始化顯示*/void Init_show()begin_key = 1;pause_key = 1;end_key = 1;mface_key = 1;nigday_key = 1;LcdInit();Location(1,0);Print(歡迎乘坐出租車);Location(2,0);Print(起步價¥5);Location(3,0);Print(單價:白天¥1.6);Location(4,3);Print(晚上¥1.8);while(1)if(begin_key = 0)break;return;/*顯示信息*/void mess_show() Location(1,0);if(flag3 = 0)Print(單價:¥1.6 );else Print(單價:¥1.8 );Location(2,0);Print(計時:);Print(time_string();Location(3,0);Print(計程:);Print(run_string();Location(4,0);Print(消費(fèi)金額:);Print(money_string();DelayMs(10);/*中斷設(shè)置函數(shù)*/void interrupt_set() EA = 1; /開中斷允許請求總開關(guān) ET0 = 1; /開T0中斷請求EX1 = 1; /允許外部中斷1請求IT1 = 1; /采用下降沿觸發(fā)TMOD = 0x21; /選擇方式0計數(shù)方式TH0 = (65536 - 50000) 8; TL0 = (65536 - 50000) & 255;TR0 = 1; /開啟中斷TL1 = 0xFA;TH1 = 0xFA;SCON = 0x50;PCON = 0x80;REN = 1;RI = 0;TI = 0;TR1 = 1;/*發(fā)送語音信號函數(shù)*/void send(char *text,char length)unsigned int i = 0;unsigned char det = 0;char set5 = 0xfd,0x00,0,0x01,0x01;set2 = length + 3;for(i=0; i5; i+)det = seti;SBUF = seti;while(TI = 0);TI = 0;for(i = 0; i 8; TL0 = (65536 - 50000) & 255;degree+;if(degree = 20) degree = 0; seconds+;if(seconds = 60)seconds = 0;minutes+;if(minutes = 60)minutes = 0; hour+;/*計算總價的函數(shù)*/void count_money()float run = run_int + 0.1 * run_fac;if(run = runs)runs += 0.5;if(flag3 = 0)money_fac += 8;else money_fac += 9;if(money_fac = 10)money_int+;money_fac = money_fac % 10 ;/*將消費(fèi)金額轉(zhuǎn)換成一個字符串*/unsigned char* money_string() int i = 0;if(money_int = 10 & money_int = 100)run_fac+;value = 0;if(run_fac = 10)run_fac = 0;run_int+;/*將路程的整數(shù)和小數(shù)部分轉(zhuǎn)換成字符串*/unsigned char* run_string()int i = 0;if(run_int = 10 & run_int 100) run_stri+ = run_int / 10 + 0;run_stri+ = run_int % 10 + 0; else run_stri+ = run_int / 100 + 0;run_stri+ = (run_int % 100) / 10 + 0;run_stri+ = run_int % 10 + 0;run_stri+ = .;run_stri+ = run_fac + 0;run_stri+ = k;run_stri+ = m;run_stri = 0;return run_str;/*將一個時間轉(zhuǎn)換成字符串*/unsigned char* time_string() *(time + 0) = hour / 10 + 0;
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 舞臺設(shè)備運(yùn)輸外包合同范本
- 2025年度辦公室租賃及企業(yè)市場推廣服務(wù)合同
- 2025年度互聯(lián)網(wǎng)公司辦公室租賃簡明合同
- 工程建筑工程技術(shù)員聘用合同
- 勞務(wù)合作合同年
- 農(nóng)業(yè)產(chǎn)業(yè)鏈質(zhì)量監(jiān)督與管理指南
- 打井降水施工合同
- 食品進(jìn)口與出口檢驗作業(yè)指導(dǎo)書
- 深圳股權(quán)轉(zhuǎn)讓合同協(xié)議書
- 建設(shè)工程施工勞務(wù)分包合同協(xié)議書
- 2025年大慶職業(yè)學(xué)院高職單招語文2018-2024歷年參考題庫頻考點(diǎn)含答案解析
- 山東省濟(jì)南市2024-2024學(xué)年高三上學(xué)期1月期末考試 地理 含答案
- 【課件】液體的壓強(qiáng)(課件)-2024-2025學(xué)年人教版物理八年級下冊
- 實施彈性退休制度暫行辦法解讀課件
- 發(fā)酵饅頭課件教學(xué)課件
- 《心系國防 強(qiáng)國有我》 課件-2024-2025學(xué)年高一上學(xué)期開學(xué)第一課國防教育主題班會
- 幼小銜接拼音試卷-帶彩圖-幼小銜接拼音試卷圖片-幼小拼音試卷習(xí)題
- 數(shù)與代數(shù)結(jié)構(gòu)圖
- 曹晶《孫悟空大鬧蟠桃會》教學(xué)設(shè)計
- 國際貿(mào)易進(jìn)出口流程圖
- 玄武巖纖維復(fù)合筋工程案例及反饋情況
評論
0/150
提交評論