畢業(yè)設(shè)計(jì)--語(yǔ)音多路出租車(chē)計(jì)價(jià)器_第1頁(yè)
已閱讀1頁(yè),還剩47頁(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、<p>  畢 業(yè) 設(shè) 計(jì)</p><p>  設(shè)計(jì)題目: 語(yǔ)音多路出租車(chē)計(jì)價(jià)器 </p><p>  學(xué) 生: </p><p>  指導(dǎo)教師: </p&g

2、t;<p>  學(xué) 院: 機(jī)電工程學(xué)院 </p><p>  專(zhuān) 業(yè): </p><p><b>  2011年6月</b></p><p>  語(yǔ)音多路出租車(chē)計(jì)價(jià)器</p><p>

3、;<b>  摘要</b></p><p>  近些年來(lái)城市的交通擁堵情況越來(lái)越嚴(yán)重,一個(gè)很重要的原因是,近幾年城市出租車(chē)的擁有量不斷攀升,但是出租車(chē)大多時(shí)候載的是單個(gè)乘客,使得單個(gè)乘客占有路面面積大約是公交車(chē)的30倍,在有限的路面面積的情況下,這種路面面積占用越大,交通便越是擁堵。與此同時(shí),單個(gè)乘客的尾氣排放量卻約為公交車(chē)的11倍。這樣在一定程度上也增加了廢氣排放量,因此提高出租車(chē)的運(yùn)營(yíng)效

4、率可以有效的緩解交通壓力和減少大氣污染。</p><p>  本文分析出租車(chē)拼車(chē)行為的背景,以及存在的合理性,并根據(jù)目前我國(guó)城市日常交通的特點(diǎn)和乘客需求,設(shè)計(jì)出一款能多路同時(shí)計(jì)費(fèi)并且對(duì)不同乘客進(jìn)行語(yǔ)音報(bào)價(jià)的出租車(chē)計(jì)價(jià)器。</p><p>  此計(jì)價(jià)器以STC89C52 單片機(jī)為數(shù)據(jù)處理器件,通過(guò)A44E 霍爾傳感器測(cè)距,實(shí)現(xiàn)對(duì)出租車(chē)的計(jì)費(fèi)統(tǒng)計(jì),采用AT24C02 實(shí)現(xiàn)在系統(tǒng)掉電時(shí)保存單價(jià)和

5、系統(tǒng)時(shí)間等信息,電源采用了防止插頭處正負(fù)接反的設(shè)計(jì),人機(jī)交互通過(guò)JM320240F液晶觸摸屏與XF-S4240中文語(yǔ)音模塊實(shí)現(xiàn),空車(chē)屏的上升與下降用步進(jìn)電機(jī)驅(qū)動(dòng)。能實(shí)現(xiàn)對(duì)不同起初地點(diǎn)的乘客進(jìn)行同時(shí)計(jì)費(fèi)并分別顯示,觸摸屏操作簡(jiǎn)單明了且方便,空車(chē)屏自動(dòng)上升與下降,語(yǔ)音播報(bào)各乘客的金額,以及語(yǔ)音提醒司機(jī)不要超速行駛,乘客不要遺失物品等。</p><p>  關(guān)鍵詞: 單片機(jī);觸摸顯示屏;語(yǔ)音合成;出租車(chē)計(jì)價(jià)器;<

6、/p><p>  Speech multi-channel taxi meter</p><p><b>  Abstract</b></p><p>  In recent years the city's crowding traffic is more and more serious , the rising of urban ta

7、xi ownership is a very important reason, and most of the time the taxi contains only a single passenger, which makes the road surface area occupancy of ??a single passenger be about 30 times when he takes a bus. In the

8、 case of limited road space, this surface area occupancy is significantly larger; the traffic will be more congestion. At the same time, a taxi’s exhaust emissions are about 11 times more</p><p>  Having the

9、 analysis of the taxi carpool reasonable behavior and rationality of the existence as a background and according to the current daily traffic characteristics of urban and passenger demands, this article designs a multi-

10、taximeter, which can offer different passengers respective voice quote.</p><p>  The taximeter uses STC89C52 MCU as the data processing device, by A44E Hall sensor location, achieving the taxi billing statis

11、tics, implementing the functionality of saving the price and system time etc information by using AT24C02. The power uses the design to prevent positive and negative polarity at the plug. The function of human-computer i

12、nteraction is achieved by JM320240F LCD touch screen and the XF-S4240 Chinese voice module. The empty screen’s rising and falling utilizes stepper motor </p><p>  Key words:MCU;touch screen;speech synthesis

13、; taximeter</p><p><b>  目 錄</b></p><p><b>  摘要</b></p><p><b>  Abstract</b></p><p><b>  1緒論1</b></p><p> 

14、 1.1拼車(chē)的背景與現(xiàn)狀1</p><p>  1.1.1拼車(chē)的背景及存在的合理性1</p><p>  1.1.2拼車(chē)的現(xiàn)狀與存在的問(wèn)題1</p><p>  1.2計(jì)價(jià)器改進(jìn)的意義2</p><p>  1.3主要的設(shè)計(jì)內(nèi)容及說(shuō)明書(shū)章節(jié)安排2</p><p>  2 系統(tǒng)硬件結(jié)構(gòu)及功能特性3</p

15、><p><b>  2.1整體方案3</b></p><p>  2.2硬件電路設(shè)計(jì)4</p><p>  2.2.1數(shù)據(jù)處理及控制中心4</p><p>  2.2.2電源部分4</p><p>  2.2.3路程測(cè)量部分5</p><p>  2.2.4液晶觸摸

16、屏部分6</p><p>  2.2.5 時(shí)鐘部分11</p><p>  2.2.6語(yǔ)音播報(bào)部分12</p><p>  2.2.7 AT24C01存儲(chǔ)單元13</p><p>  2.2.8空車(chē)屏電機(jī)驅(qū)動(dòng)電路14</p><p><b>  3 軟件設(shè)計(jì)16</b></p&g

17、t;<p>  3.1主程序設(shè)計(jì)16</p><p>  3.2外部中斷1 里程計(jì)數(shù)程序18</p><p>  3.3 T0 中途等待計(jì)時(shí)程序18</p><p>  3.4 觸摸屏服務(wù)程序18</p><p>  3.5語(yǔ)音輸出19</p><p><b>  4結(jié)語(yǔ)21<

18、/b></p><p><b>  參考文獻(xiàn)</b></p><p>  附錄1 觸摸屏子程序</p><p><b>  附錄2 語(yǔ)音子程序</b></p><p><b>  附錄3 原理圖</b></p><p><b>  致

19、謝</b></p><p>  語(yǔ)音多路出租車(chē)計(jì)價(jià)器 </p><p><b>  1緒論</b></p><p>  1.1拼車(chē)的背景與現(xiàn)狀</p><p>  “拼車(chē)”亦稱為“合乘”,是指多名乘客由于相似的目的地而共同乘坐一輛車(chē)出行,屬于汽車(chē)共享,是一種試圖通過(guò)調(diào)整現(xiàn)行交通行為,提高交通效率的交通方

20、式,這種方式在一些發(fā)達(dá)國(guó)家已經(jīng)比較成熟,而國(guó)內(nèi)主要還是一些個(gè)別的、自發(fā)的行為,不是一種商業(yè)行為。</p><p>  1.1.1拼車(chē)的背景及存在的合理性</p><p><b> ?。?)拼車(chē)的背景 </b></p><p>  拼車(chē)行為最早起源于瑞士和德國(guó),由于提高了交通效率,所以在美國(guó)、加拿大、新加坡、日本也逐漸興起。隨著私家車(chē)、出租車(chē)數(shù)量

21、的增加,拼車(chē)出行成為人們自發(fā)的出行方式,并且通過(guò)實(shí)踐證明,John得出合乘方式可減少10%~15%的小汽車(chē)出行量[1],隨著High Occupancy vehicle System的功能發(fā)展與完善,合乘逐漸普及并發(fā)揮了積極的促進(jìn)作用,更為深遠(yuǎn)的社會(huì)意義在于合乘對(duì)節(jié)約能源,減少尾氣對(duì)環(huán)境造成的污染所做出的貢獻(xiàn)[1]。</p><p>  如今它已經(jīng)成為歐美國(guó)家提高運(yùn)輸效率、緩解交通壓力和減少能源消耗的有效手段,也

22、是成為人們極其推崇的出行方式。其主要原因就是,這樣既可以無(wú)需忍受乘坐公交車(chē)時(shí)的擁擠,又可以快捷地到達(dá)目的地,尤其是針對(duì)惡劣的候車(chē)環(huán)境(如烈日,冰雪)與老弱病殘群體。</p><p> ?。?)拼車(chē)存在的合理性</p><p>  在國(guó)外的拼車(chē)服務(wù)行為一般都獲得政府、企業(yè)部分資金的支持,為其提供理論研究、政策支持、法律規(guī)范、業(yè)務(wù)與技術(shù)扶持等,它是在發(fā)達(dá)國(guó)家得到實(shí)際驗(yàn)證并加以推廣的一種交通行為

23、,由于能提高運(yùn)輸效率、緩解交通壓力和減少能源消耗,合理性是不容置疑的。</p><p>  交通經(jīng)濟(jì)學(xué)里有一條非常著名的“當(dāng)斯定律(DOWNSLAW)”,該定律可以表述為:“在政府對(duì)城市交通不進(jìn)行有效管制和控制的情況下,新建的道路設(shè)施會(huì)誘發(fā)新的交通量,而交通需求總是傾向于超過(guò)交通供給”。所以單純依靠交通供給方面的對(duì)策,很難從根本上解決城市交通供求不平衡的矛盾,因此從上個(gè)世紀(jì)80年代以來(lái),交通管理者提出了交通需求管

24、理TDM(Traffic Demand Management)的概念, TDM研究的重點(diǎn)就是通過(guò)采取提高單車(chē)乘座人數(shù)、調(diào)整出行,減少交通需求等手段。因此,在城市里廣泛鼓勵(lì)拼車(chē)出行方式是解決城市交通問(wèn)題的一個(gè)重要的手段[2]。</p><p>  1.1.2拼車(chē)的現(xiàn)狀與存在的問(wèn)題</p><p><b> ?。?)拼車(chē)的現(xiàn)狀</b></p><p&g

25、t;<b> ?、賴?guó)內(nèi)拼車(chē)的現(xiàn)狀</b></p><p>  目前隨著各大城市的居民生活水平的提高,私家車(chē)擁有量也呈明顯的上升趨勢(shì)。但是,由于城市道路的滯后發(fā)展帶來(lái)的養(yǎng)路費(fèi)用和燃油等因素,使得私家車(chē)的運(yùn)行成本不斷提高,一時(shí)之間在經(jīng)濟(jì)發(fā)展態(tài)勢(shì)較好的城市中率先出現(xiàn)了“拼車(chē)上、下班”、“拼車(chē)旅游”、“拼車(chē)購(gòu)物”、“拼車(chē)上學(xué)”等一系列拼車(chē)行為。拼車(chē)服務(wù)在我國(guó)現(xiàn)處于初級(jí)階段,但發(fā)展速度很快,新型的電子

26、和通訊技術(shù)正快速地運(yùn)用于該行業(yè)。</p><p> ?、趪?guó)內(nèi)出租車(chē)拼車(chē)的發(fā)展</p><p>  “拼出租車(chē)”是我國(guó)拼車(chē)出行的源頭,并隨著私家車(chē)拼車(chē)而不斷發(fā)展,兩者的主要區(qū)別在于車(chē)輛載體換成了出租車(chē),車(chē)主方換成了出租車(chē)公司。近年來(lái),很多城市出租車(chē)數(shù)量迅速增加,導(dǎo)致了出租車(chē)空載率不斷提高,而空載時(shí)占用大量的道路資源,增加了城市道路交通的負(fù)荷,對(duì)城市交通運(yùn)行順暢起到了消極作用,但是在上下班高峰

27、期、假期又出現(xiàn)打車(chē)難的現(xiàn)象[3]。</p><p> ?。?)拼出租車(chē)存在的問(wèn)題</p><p>  雖然拼車(chē)對(duì)司機(jī),可以因減少空車(chē)的概率而增加收入,對(duì)乘客可以減少等車(chē)的時(shí)間,對(duì)社會(huì)可以減少能源消耗與尾氣排放,但目前,我國(guó)的出租車(chē)拼車(chē)業(yè)務(wù)在市場(chǎng)上還沒(méi)有正規(guī)、合理的行業(yè)規(guī)范和完善的服務(wù)系統(tǒng),對(duì)于乘客而言,由于缺乏對(duì)其服務(wù)的信任度和認(rèn)可度,雖然存在拼車(chē)需求但仍然沒(méi)有普遍采用這種出行方式[4]。

28、</p><p>  主要存在著這些問(wèn)題:沒(méi)有正規(guī)的管理制度、合理的拼車(chē)服務(wù)系統(tǒng),出租車(chē)拼車(chē)行為與拼車(chē)市場(chǎng)的混亂,沒(méi)有合理健全的出租車(chē)拼車(chē)運(yùn)營(yíng)機(jī)制。</p><p>  1.2計(jì)價(jià)器改進(jìn)的意義</p><p>  不管是高空載率還是打車(chē)難,都是我們正試圖解決的問(wèn)題,如果想減輕打車(chē)難的問(wèn)題,那么就需要多增加出租車(chē)的數(shù)量,但是,一味增加出租車(chē)的數(shù)量,又直接增加了非上下班

29、高峰時(shí)的空載率,有沒(méi)有一種方法,在不明顯增加出租車(chē)數(shù)量的同時(shí),又降低等候出租車(chē)人的數(shù)量,一個(gè)很簡(jiǎn)單的辦法那就是提高單車(chē)乘車(chē)人數(shù),相對(duì)于擁擠的公交車(chē)來(lái)說(shuō),出租車(chē)上每個(gè)人一個(gè)座,在合理降低打車(chē)費(fèi)的情況下,乘客是很容易接受的。這是主觀上的能能夠達(dá)成識(shí)。</p><p>  近幾年來(lái),隨著計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)、移動(dòng)通信技術(shù)、全球定位系統(tǒng)(GPS)、地理信息系統(tǒng)(Gls)的發(fā)展和普及,建設(shè)基于多人拼車(chē)模式的出租車(chē)智能調(diào)度管

30、理系統(tǒng)成為可能。在這種主客觀都可以成立的情況下,對(duì)現(xiàn)有計(jì)價(jià)器進(jìn)行改進(jìn)成了必然,因?yàn)楝F(xiàn)有的計(jì)價(jià)器不能對(duì)對(duì)不同起初地點(diǎn)不同目的地的乘客進(jìn)行同時(shí)計(jì)價(jià)。</p><p>  1.3主要的設(shè)計(jì)內(nèi)容及說(shuō)明書(shū)章節(jié)安排</p><p>  本文首先介紹了多人拼車(chē)的相關(guān)知識(shí),出于以拼車(chē)為目的提出對(duì)計(jì)價(jià)器進(jìn)行改進(jìn),然后對(duì)以液晶觸摸控,語(yǔ)音輸出,空車(chē)屏自動(dòng)升降為主要設(shè)計(jì)的計(jì)價(jià)器進(jìn)行闡述,分別從硬件的結(jié)構(gòu)與軟件的

31、設(shè)計(jì)兩部分進(jìn)行詳細(xì)的介紹。全文的具體組織結(jié)構(gòu)如下:</p><p>  第一章:緒論:介紹了與本文研究有關(guān)的背景知識(shí)、發(fā)展現(xiàn)狀、主要設(shè)計(jì)內(nèi)容及說(shuō)明書(shū)組織結(jié)構(gòu)。</p><p>  第二章:先介紹語(yǔ)音多路出租車(chē)計(jì)價(jià)器的整體結(jié)構(gòu)與設(shè)計(jì)思想,然后對(duì)各部分電路及其功能與原理分別進(jìn)行闡述。</p><p>  第三章:對(duì)語(yǔ)音多路出租車(chē)計(jì)價(jià)器的軟件部分的設(shè)計(jì)進(jìn)行詳細(xì)的敘述,介紹

32、主程序的工作流程,然后主要闡述語(yǔ)音服務(wù)子程序的設(shè)計(jì)與液晶觸摸屏服務(wù)子程序的設(shè)計(jì)。</p><p>  第四章:結(jié)論與展望,對(duì)全文進(jìn)行了總結(jié)。</p><p>  2 系統(tǒng)硬件結(jié)構(gòu)及功能特性</p><p><b>  2.1整體方案</b></p><p>  整體方案設(shè)計(jì)方框圖如圖2-1所示,整個(gè)系統(tǒng)由單片機(jī)STC89

33、C55 控制電路、驅(qū)動(dòng)空車(chē)屏升降的步進(jìn)電機(jī)、JM320240F液晶觸摸屏、A44E霍爾傳感器、XF-S4240中文語(yǔ)音播報(bào)與語(yǔ)音播報(bào)的功率放大電路、掉電存儲(chǔ)電路以及電源電路組成。</p><p>  單片機(jī)采集并判斷觸摸屏信號(hào)及路程檢測(cè)傳感器信號(hào),當(dāng)出租車(chē)啟動(dòng)時(shí),單片機(jī)檢測(cè)到霍爾傳感器的脈沖信號(hào)并進(jìn)行里程計(jì)算。若車(chē)上無(wú)乘客時(shí),觸摸屏等待被觸發(fā)。</p><p>  當(dāng)?shù)谝晃怀丝蜕宪?chē),點(diǎn)擊屏

34、幕上的大寫(xiě)字母A,大寫(xiě)字母A背景變深,XF-S4240中文語(yǔ)音播報(bào)第一條語(yǔ)音:歡迎第一位乘客乘坐本出租車(chē),請(qǐng)系好安全帶,同時(shí)空車(chē)屏自動(dòng)下降,屏上LED燈熄滅,系統(tǒng)調(diào)用單價(jià)及起始價(jià),便開(kāi)始計(jì)價(jià)并顯示里程和金額等信息;</p><p>  當(dāng)?shù)诙怀丝蜕宪?chē)時(shí),點(diǎn)擊屏幕上的大寫(xiě)字母B ,大寫(xiě)字母B背景變深,XF-S4240中文語(yǔ)音播報(bào)第二條語(yǔ)音:歡迎第二位乘客乘坐本出租車(chē),請(qǐng)系好安全帶,同時(shí)系統(tǒng)存儲(chǔ)當(dāng)前里程,并記錄作為

35、第二位乘客的初始值,用此乘客下車(chē)時(shí)用終值減去初始值即為第二位乘客所乘坐里程;</p><p>  當(dāng)?shù)谌怀丝蜕宪?chē)時(shí),點(diǎn)擊屏幕上的大寫(xiě)字母C,大寫(xiě)字母C背景變深,XF-S4240中文語(yǔ)音播報(bào)第三條語(yǔ)音:歡迎第三位乘客乘坐本出租車(chē),請(qǐng)系好安全帶,有超過(guò)兩位乘客,屏幕間歇性的閃爍出現(xiàn)不同代表不同乘客的字母,同時(shí)出現(xiàn)其里程與金額等信息。</p><p>  若中途某一乘客下車(chē),點(diǎn)擊對(duì)應(yīng)的字母,此

36、字母的深色背景變回白色,表示此乘客計(jì)價(jià)結(jié)束。直到最后一個(gè)乘客計(jì)價(jià)結(jié)束,出租車(chē)有四個(gè)座位,故設(shè)計(jì)為最多同時(shí)為四位乘客計(jì)價(jià),但只要車(chē)上有乘客下車(chē)了,又可對(duì)新上乘客進(jìn)行計(jì)價(jià),直到四個(gè)乘客。若車(chē)上沒(méi)有了乘客,所有的字母的背景都變回白色,空車(chē)屏自動(dòng)上升,觸摸屏等待被再次觸發(fā)。</p><p>  這樣可以很好的解決拼車(chē)的情況中,不能對(duì)后上車(chē)乘客的計(jì)費(fèi)的問(wèn)題。</p><p><b>  2

37、.2硬件電路設(shè)計(jì)</b></p><p>  計(jì)價(jià)器實(shí)物圖如圖2-2 所示。整個(gè)電路主要由單片機(jī)STC89C55 控制電路、驅(qū)動(dòng)空車(chē)屏升降的步進(jìn)電機(jī)、JM320240F液晶觸摸屏、A44E霍爾傳感器、XF-S4240中文語(yǔ)音播報(bào)與語(yǔ)音播報(bào)的功率放大電路、掉電存儲(chǔ)電路以及電源電路組成。各部分端口分別與單片機(jī)STC89C55的I/O口相連,通過(guò)單片機(jī)的控制來(lái)實(shí)現(xiàn)計(jì)價(jià)器的各個(gè)功能。</p>&

38、lt;p><b>  圖2-2計(jì)價(jià)器實(shí)物</b></p><p>  2.2.1數(shù)據(jù)處理及控制中心</p><p>  本設(shè)計(jì)的數(shù)據(jù)處理與控制器件使用的是STC89C55RC單片機(jī),STC89C55RC單片機(jī)是宏晶科技推出的新一代超強(qiáng)抗干擾、高速、低功耗的單片機(jī),指令代碼完全兼容傳統(tǒng)8051單片機(jī)[5],具有以下特征:</p><p> 

39、?。?)增強(qiáng)型6時(shí)鐘、機(jī)器周期,12時(shí)鐘、機(jī)器周期8051CPU;</p><p> ?。?)20k字節(jié)的應(yīng)用程序存儲(chǔ)空間以及1280字節(jié)數(shù)據(jù)存儲(chǔ)空間;</p><p> ?。?)ISP(在系統(tǒng)可編程)/IAP(在應(yīng)用可編程),無(wú)需專(zhuān)用編程器/仿真器;</p><p>  (4)共3個(gè)16位定時(shí)器/計(jì)數(shù)器,其中定時(shí)器0還可以當(dāng)成2個(gè)8位定時(shí)器使用;</p>

40、;<p>  (5)外部中斷4路,下降沿中斷或低電平觸 發(fā)中斷,Power Down 模式可由外部中斷低電平觸發(fā)中斷方式[6]喚醒。</p><p><b>  2.2.2電源部分</b></p><p>  車(chē)內(nèi)有12V直流電源插座,一正一負(fù)的插座,如果不采用特殊防插反的插頭,很容易將電源接反。但采用如圖2-3電路,插頭處便可以不分正反極,能防止正負(fù)電

41、源接反。由于計(jì)價(jià)器的工作環(huán)境比較差,它要求有抗振動(dòng)、抗高低溫、抗潮濕、抗電磁干擾等能力,特別是電源方面的干擾,如出租車(chē)啟動(dòng)時(shí),發(fā)動(dòng)機(jī)打火、電瓶充電等造成輸入計(jì)價(jià)器的+12V電源不穩(wěn)定[7]。因此采用+ 12V電瓶電源的插頭處設(shè)計(jì)兩個(gè)較大容量電容,主要用于儲(chǔ)蓄電量,應(yīng)對(duì)汽車(chē)啟動(dòng)瞬間,可防止電壓在瞬間有較大降幅,起到了穩(wěn)定計(jì)價(jià)器輸入端電壓的作用。再經(jīng)過(guò)電源穩(wěn)壓芯片7805后,得到+5V的穩(wěn)定電壓輸出,保證整個(gè)系統(tǒng)能夠正常工作[8]。<

42、/p><p>  圖2-3 防反接的電路圖</p><p>  2.2.3路程測(cè)量部分</p><p>  出租車(chē)中需要一個(gè)能準(zhǔn)確獲得車(chē)輪轉(zhuǎn)動(dòng)即路程計(jì)量信號(hào)的裝置,以得到標(biāo)準(zhǔn)的脈沖信號(hào)送入單片機(jī)的定時(shí)/計(jì)數(shù)器T1即P3.5 引腳[8],利用單片機(jī)的T1的計(jì)數(shù)功能完成100次的計(jì)數(shù)后產(chǎn)生一中斷來(lái)完成路程的測(cè)量。(設(shè)車(chē)輪周長(zhǎng)為1.5m,則霍爾傳感器[9]每產(chǎn)生100個(gè)脈沖便

43、表示車(chē)已行程0.15 km,根據(jù)實(shí)際情況在程序中進(jìn)行設(shè)置)。汽車(chē)聯(lián)軸器按圓周間隔嵌入磁鋼,用霍爾傳感器集成芯片A44E 檢測(cè)并輸出脈沖如圖2-4所示,霍爾傳感器集成芯片A44E 有信號(hào)轉(zhuǎn)換、電壓放大、整形輸出等功能,為增加其抗干擾的能力,經(jīng)過(guò)74LS14 對(duì)信號(hào)整形后再通過(guò)光偶送入P3. 5 引腳[10]。如圖2-5所示。</p><p>  圖2-4霍爾傳感器安裝示意圖</p><p>

44、  圖2-5 A44E霍爾傳感器接口電路</p><p>  2.2.4液晶觸摸屏部分</p><p><b>  1.顯示部分</b></p><p>  由于設(shè)計(jì)要求有單價(jià)(2位)、中途等待時(shí)間(2位)、路程(4位)、金額(4位) 顯示、時(shí)鐘(4位)輸出,如果采用傳統(tǒng)的七段數(shù)碼管顯示,不但只能顯示數(shù)字以及少量的英文字母,而且所顯示的內(nèi)容非常

45、的粗糙與單調(diào),改為液晶觸摸屏之后,不僅顯示的信息量大,界面友好,而且操作更加簡(jiǎn)單、更加人性化。當(dāng)為空車(chē)時(shí),為了節(jié)電,一段時(shí)間后顯示屏進(jìn)入睡眠模式,當(dāng)司機(jī)點(diǎn)擊觸摸屏?xí)r,觸摸屏被喚醒;在有乘客時(shí)顯示營(yíng)運(yùn)的單價(jià)、等待時(shí)間、路程、金額及時(shí)鐘等。</p><p>  圖2-6 觸摸屏接口電路</p><p>  JM320240F液晶觸摸屏采用RA8806控制器,RA8806 是一個(gè)文字與繪圖模式的

46、點(diǎn)矩陣液晶顯示(STN-LCD)控制器,其內(nèi)建了雙圖層(Two Page)顯示內(nèi)存,及512Kbyte ROM 的字型碼,可以顯示全型(16*16 pixels)的繁體中文字型(BIG5,13973個(gè)字型)或是簡(jiǎn)體中文字型(GB,9216 個(gè)字型)。RA8806 也內(nèi)建4*256 個(gè)可顯示大部份使用于英語(yǔ)系和歐洲國(guó)家的半型字(8*16 pixels)字母及符號(hào),也就是符合ISO8859-1~4(或稱為L(zhǎng)atin-1~4)標(biāo)準(zhǔn)的ASCII

47、 字碼。</p><p>  RA8806 支持可轉(zhuǎn)換到4-bit 或8-bit 數(shù)據(jù)總線的8080/6800 系列之MPU 接口,而對(duì)于LCD 驅(qū)動(dòng)接口,RA8806 亦可以被設(shè)定為4-bit 或8-bit 的數(shù)據(jù)總線。在一般模式下,RA8806 可支持最大到320*240 點(diǎn)分辨率的LCD 面板,而在擴(kuò)展模式下,可支持640*240 或是320*480 點(diǎn)分辨率的LCD 面板,同時(shí)藉由使用文字旋轉(zhuǎn)功能,可達(dá)成

48、垂直文字的顯示效果,其應(yīng)用方塊圖如圖2-7。RA8806 也內(nèi)建了智能型觸控掃瞄控制器,支持了4 線電阻式觸控掃瞄接口,而可程序化的脈波寬度調(diào)變器(PWM)可以用來(lái)調(diào)節(jié)LCD 面板的對(duì)比或背光。RA8806 也提供一個(gè)強(qiáng)大的4*8(32 鍵)或8*8(64 鍵)的鍵盤(pán)掃瞄接口,其中更包含了長(zhǎng)按鍵的功能,同時(shí)透過(guò)適當(dāng)?shù)闹袛嗪洼喸儥C(jī)制讓使用者可以輕易的操作觸控掃瞄、鍵盤(pán)掃瞄、和電源管理等功能,因此可以有效的減輕MPU 的負(fù)擔(dān)。內(nèi)建512By

49、te 字型創(chuàng)造內(nèi)存(Character Generation RAM,CGRAM)讓使用者可以自行創(chuàng)造出最多16個(gè)全型或32 個(gè)半型的字型或符號(hào),甚至當(dāng)只使用一個(gè)顯示圖層時(shí),</p><p>  另外RA8806 提供了于灰階模式下顯示4 灰階圖案的顯示效果,當(dāng)中資料安排的方式兼容于大部分的灰階圖案,且相當(dāng)容易撰寫(xiě)。RA8806 也提供了相當(dāng)多有用的功能,例如區(qū)域卷動(dòng)、文字反白、粗體文字、文字放大,內(nèi)存清除等等。

50、RA8806 更提供了一項(xiàng)創(chuàng)新的功能——無(wú)雪花模式(no-flicker),此模式能有效的移除當(dāng)頻繁的對(duì)內(nèi)存讀寫(xiě)而所產(chǎn)成的雪花,憑借著RA8806 提供此一模式,使用者能輕易地改善LCD 顯示的品質(zhì)。</p><p>  RA8806 是一個(gè)強(qiáng)大且容易使用的LCD 顯示控制器,它提供中等尺寸LCD 顯示控制的完整解決方案,使用者也因此可以節(jié)省相當(dāng)多的時(shí)間和成本于系統(tǒng)硬件和軟件開(kāi)發(fā)上。</p><

51、;p> ?。?)JM320240F寫(xiě)入指令介紹</p><p>  RA8806 可以接受四種數(shù)據(jù)傳輸周期,分別是指令寫(xiě)入周期、狀態(tài)讀取周期、數(shù)據(jù)寫(xiě)入周期以及數(shù)據(jù)讀取周期。舉例來(lái)說(shuō),當(dāng)要針對(duì)某緩存器進(jìn)行寫(xiě)數(shù)據(jù)時(shí),首先必須先執(zhí)行指令寫(xiě)入周期,包括欲寫(xiě)入緩存器之編號(hào),然后再以寫(xiě)入數(shù)據(jù)周期將數(shù)值寫(xiě)入該緩存器。因此,寫(xiě)入指令意指將數(shù)值數(shù)據(jù)寫(xiě)到緩存器當(dāng)中,在前述兩個(gè)周期執(zhí)行之后,數(shù)值數(shù)據(jù)將被寫(xiě)入到該緩存器,相關(guān)情形請(qǐng)

52、參考圖2-8。由于每一指令的寫(xiě)入都需要花費(fèi)兩個(gè)數(shù)據(jù)傳輸周期,且每個(gè)數(shù)據(jù)傳輸周期最少也要2 個(gè)系統(tǒng)時(shí)脈周期的時(shí)間才能完成,因此每一指令至少需要花費(fèi)4 個(gè)的系統(tǒng)時(shí)脈周期,才能寫(xiě)入。針對(duì)不同的系統(tǒng)時(shí)脈,換算成指令存取的時(shí)間。如果欲讀取緩存器中的內(nèi)容值,則第二個(gè)數(shù)據(jù)傳輸周期為讀取數(shù)據(jù)周期,相關(guān)情形請(qǐng)參考圖2-9。需注意的是圖2-8到圖2-9 都是以8080 的傳輸接口來(lái)舉例。</p><p> ?。?)JM320240F

53、內(nèi)存寫(xiě)入與讀取</p><p>  當(dāng)欲寫(xiě)數(shù)據(jù)到內(nèi)存(可能是顯示內(nèi)存或字型產(chǎn)生內(nèi)存)時(shí),必須先執(zhí)行緩存器編號(hào)為B0h的寫(xiě)入指令周期。反之,如果是欲讀取內(nèi)存中的數(shù)據(jù)時(shí),則必須先執(zhí)行緩存器編號(hào)為B1h的寫(xiě)入指令周期。</p><p> ?。?)JM320240F狀態(tài)讀取</p><p>  RA8806 有提供一個(gè)讀取狀態(tài)值的方法,讓使用者(MPU)了解目前RA8806

54、 的狀況,請(qǐng)參考圖 2-10。</p><p>  圖2-7 320*240液晶顯示屏的應(yīng)用方塊圖</p><p>  圖2-8 寫(xiě)入指令與緩存器讀取</p><p>  圖2-9 內(nèi)存寫(xiě)入與讀取</p><p><b>  圖2-10狀態(tài)讀取</b></p><p> ?。?)顯示窗口與工作窗

55、口</p><p>  實(shí)際應(yīng)用上,RA8806 提供兩種窗口,分別是顯示窗口(Display Window)和工作窗口(ActiveWindow)。顯示窗口所表示的就是實(shí)際液晶顯示屏的分辨率,亦即當(dāng)液晶顯示屏分辨率為320*240 時(shí),就表示顯示窗口的大小也必須為320*240(REG[21h] = 27h,REG[31h] = EFh)。而工作窗口則是比顯示窗口還小的窗口,舉凡光標(biāo)移動(dòng)、換行、換頁(yè)都是以工作窗

56、口的邊界為基準(zhǔn)。這兩個(gè)窗口之相關(guān)緩存器如表2-1所示。</p><p><b>  表2-1 緩存器</b></p><p>  2-11顯示數(shù)據(jù)存儲(chǔ)器(DDRAM)RA8806 本身內(nèi)建有兩塊容量為9.6K 字節(jié)大小的顯示數(shù)據(jù)存儲(chǔ)器,分別是DDRAM1 和DDRAM2。它可用來(lái)做單色的顯示或者四灰階的顯示,每一塊顯示數(shù)據(jù)存儲(chǔ)器最大均支持320x240 大小的顯示,顯

57、示模式包括文字模式和圖形模式??傊?,RA8806 的諸多功能可讓使用者既彈性又方便來(lái)進(jìn)行各種顯示。</p><p> ?。?)內(nèi)存存取的選擇</p><p>  RA8806 內(nèi)建一個(gè)512 字節(jié)的字型產(chǎn)生內(nèi)存(CGRAM)和兩個(gè)9.6K 字節(jié)的顯示數(shù)據(jù)存儲(chǔ)器(DDRAM)。其中CGRAM 可用來(lái)儲(chǔ)存造字的字型數(shù)據(jù),而DDRAM 可用來(lái)儲(chǔ)存欲顯示的資料,另外,當(dāng)僅用一個(gè)DDRAM 來(lái)進(jìn)行顯

58、示時(shí),另一個(gè)DDRAM 亦可當(dāng)成CGRAM,來(lái)儲(chǔ)存造字的字型數(shù)據(jù)。在應(yīng)用上,至于微處理機(jī)(MPU)要對(duì)那一個(gè)內(nèi)存進(jìn)行存?。ˋccess),使用者可透過(guò)緩存器 [12h] 的Bit[1:0] 來(lái)進(jìn)行設(shè)定。</p><p>  圖2-11 8080MPU接口傳輸協(xié)議</p><p><b>  2.觸控部分</b></p><p>  觸控屏幕功能

59、RA8806內(nèi)建一組10位ADC和控制電路,以連接四線電阻式的觸控屏幕。一般來(lái)說(shuō),電阻式的觸控屏幕是由兩層非常薄的電阻式屏幕所組成,如圖 2-12。在兩層屏幕中間有一小縫隙,當(dāng)有外力施加在面板上的某一點(diǎn)時(shí),兩層電阻式屏幕將被觸碰(touch),形成回路而導(dǎo)通。由于兩層電阻式屏幕的端點(diǎn)含有電極(XL、XR、YU、YD),如圖 2-13,因此,相對(duì)于觸碰的位置,系統(tǒng)將偵測(cè)到一個(gè)XY的坐標(biāo)值。</p><p><

60、b>  圖2-12觸控屏幕</b></p><p>  圖2-13 觸控屏幕的控制開(kāi)關(guān)</p><p>  對(duì)使用者而言,應(yīng)用觸控屏幕的功能只需連接X(jué)L、XR、YU 和YD 等四條信號(hào)線到RA8806 即可。系統(tǒng)就能不斷監(jiān)測(cè),直到觸控的事件(touch event)發(fā)生為止。當(dāng)觸控事件發(fā)生時(shí),在屏幕電阻上所產(chǎn)生的分壓將決定觸控的所在位置。在XY 的坐標(biāo)值被傳回系統(tǒng)(RA8

61、806)并個(gè)別儲(chǔ)存在特定的緩存器后,觸控屏幕控制器(touch panel controller)將發(fā)出一中斷告知微處理機(jī)(MPU)</p><p>  2.2.5 時(shí)鐘部分</p><p>  計(jì)價(jià)器在出租車(chē)空車(chē)行駛時(shí)需要顯示實(shí)時(shí)時(shí)鐘,因?yàn)樗臅r(shí)鐘是作為白天/ 晚上單價(jià)自動(dòng)轉(zhuǎn)換的一個(gè)基準(zhǔn),而且計(jì)價(jià)器的時(shí)鐘顯示能為司機(jī)和乘客提供方便,所以選擇一個(gè)好的時(shí)鐘芯片對(duì)計(jì)價(jià)器很重要。DS1302是美

62、國(guó)DALLAS 公司推出的一種高性能、低功耗的實(shí)時(shí)時(shí)鐘芯片,采用SPI 三線接口與CPU 進(jìn)行同步通信;時(shí)鐘可提供秒、分、時(shí)、日、星期、月和年; 通過(guò)設(shè)置DS1302 的控制/ 狀態(tài)寄存器選擇日歷,時(shí)鐘方式經(jīng)過(guò)初始校準(zhǔn)后即可工作使用;工作電壓寬達(dá)2.5~5.5 V ,采用雙電源供電(主電源和備用電源) ,并設(shè)置備用電源充電方式,提供了對(duì)后背電源進(jìn)行涓細(xì)電流充電的能力,在沒(méi)有主電源的情況下啟用備用電源能保存時(shí)間信息及數(shù)據(jù)[11]。如圖2-

63、14所示。</p><p>  圖2-14 時(shí)鐘接口電路</p><p>  2.2.6語(yǔ)音播報(bào)部分</p><p>  XF-S4240 中文語(yǔ)音合成模塊,是安徽中科大訊飛信息科技有限公司(科大訊飛)推出的基于科大訊飛在嵌入式中文語(yǔ)音合成領(lǐng)域的最新研究成果—InterSound4。它是中文語(yǔ)音合成系統(tǒng),而設(shè)計(jì)的一款中文語(yǔ)音合成模塊。該模塊可以通過(guò)異步串口(UART

64、)、SPI 接口及I2C 總線三種方式接收待合成的文本,直接合成為語(yǔ)音輸出;XF-S4240 中文語(yǔ)音合成模塊是一款針對(duì)嵌入式應(yīng)用領(lǐng)域而設(shè)計(jì),具有合成任意中文文本的能力及英文字母合成的語(yǔ)音合成模塊。支持GB2312、GBK、BIG5、UNICODE 四種內(nèi)碼格式的文本;該模塊的主要特點(diǎn)是合成語(yǔ)音自然度高,控制接口簡(jiǎn)單方便,功能強(qiáng)大。其接口電路如圖2-15所示。</p><p>  圖2-15 語(yǔ)音播報(bào)接口電路&l

65、t;/p><p>  XF-S4240 語(yǔ)音合成板卡支持UART、SPI 和I2C 三種通訊方式,用戶上位機(jī)可選擇其中任意一種通訊方式同合成板卡進(jìn)行通訊,本設(shè)計(jì)采用UART通訊方式,下面圖2-16所示板卡與單片機(jī)[12]的異步串口連接方式[13]。</p><p>  圖2-16 XF-S4240 模塊與單片機(jī)的異步串口連接示意圖</p><p>  UART 通訊方

66、式如圖2-17所示</p><p>  圖2-17 UART通訊方式</p><p> ?。?) 波特率:9600 bps</p><p> ?。?) 起始位:1bit</p><p>  (3) 數(shù)據(jù)位:8 bits</p><p> ?。?) 停止位:1 bit</p><p><b&

67、gt; ?。?) 校驗(yàn):無(wú)</b></p><p>  音頻功放電路如圖2-18所示。</p><p>  圖2-18 XF-S4240 模塊與音頻功放LM4665 的接口示意圖</p><p>  2.2.7 AT24C01存儲(chǔ)單元</p><p>  AT24C02 掉電存儲(chǔ)單元的設(shè)計(jì)掉電存儲(chǔ)單元的作用是在電源斷開(kāi)的時(shí)候,存

68、儲(chǔ)當(dāng)前設(shè)定的單價(jià)信息[14]。AT24C02 是ATMEL 公司的2KB 字節(jié)的電可擦除存儲(chǔ)芯片,采用兩線串行的總線和單片機(jī)通訊,電壓最低可以到2.5V,額定電流為1mA,靜態(tài)電流10Ua(5.5V),芯片內(nèi)的資料可以在斷電的情況下保存40 年以上,而且采用8 腳的DIP 封裝,使用方便。其電路如圖2 所示。圖2 -19掉電存儲(chǔ)單元原理圖圖中R8、R9 是上拉電阻,其作用是減少M(fèi)24C02 的靜態(tài)功耗,由于M24C02 的數(shù)據(jù)線和地址線

69、是復(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à)等信息,讀到緩存單元中,供主程序使用AT24C02 掉電存儲(chǔ)電路的設(shè)計(jì)存儲(chǔ)電路的作用是在電源斷開(kāi)的時(shí)候, 存儲(chǔ)當(dāng)前設(shè)定的單價(jià)信息。存儲(chǔ)電路采用Atmel 公司推出的容量為2 KB 的串行電可擦除、可編程存儲(chǔ)

70、芯片AT24C02 設(shè)計(jì),傳輸方式為I2C 總</p><p>  圖2-19掉電存儲(chǔ)單元原理圖</p><p>  2.2.8空車(chē)屏電機(jī)驅(qū)動(dòng)電路</p><p>  空車(chē)屏僅僅是顯示出租車(chē)是處于出租還是空車(chē)狀態(tài)的顯示器件。當(dāng)有乘客上車(chē)時(shí),司機(jī)點(diǎn)擊觸摸屏,空車(chē)屏自動(dòng)下降,同時(shí)屏上的LED燈熄滅;而當(dāng)空車(chē)時(shí),空車(chē)屏自動(dòng)上升,同時(shí)屏上的LED燈點(diǎn)亮,整個(gè)上升與下降過(guò)程由

71、一個(gè)步進(jìn)電機(jī)驅(qū)動(dòng),驅(qū)動(dòng)電路如圖2-20所示,本設(shè)計(jì)中的空車(chē)屏實(shí)物如圖2-21所示。</p><p>  圖2-20 空車(chē)屏驅(qū)動(dòng)電路</p><p>  圖2-21 空車(chē)屏實(shí)物圖</p><p><b>  3 軟件設(shè)計(jì)</b></p><p><b>  3.1主程序設(shè)計(jì)</b></p>

72、<p>  在主程序模塊中,需要完成對(duì)各芯片的初始化(JM320240F、XF-S4240、AT24C02 )、各中斷的初始化(外部中斷0 、外部中斷1、T0 的初始化)[16],另外,在主程序模塊中還需要設(shè)置啟動(dòng)/ 清除標(biāo)志寄存器、里程寄存器和價(jià)格寄存器,并對(duì)它們進(jìn)行初始化。然后,主程序?qū)⒏鶕?jù)各標(biāo)志寄存器的內(nèi)容,分別完成啟動(dòng)、清除、計(jì)程和計(jì)價(jià)等不同的操作。主程序流程圖如3-1所示。</p><p>

73、;  圖3-1 主程序流程圖</p><p>  當(dāng)有乘客上車(chē)時(shí),將根據(jù)里程寄存器中的內(nèi)容計(jì)算和判斷出行駛里程是否已超過(guò)起步價(jià)公里數(shù)。若已超過(guò),則根據(jù)里程值、每公里的單價(jià)和起價(jià)來(lái)計(jì)算出當(dāng)前的累計(jì)金額,金額公式為:營(yíng)運(yùn)金額= 起步價(jià)+(營(yíng)運(yùn)里程- 起步里程)×單價(jià)+(等待時(shí)間-規(guī)定等待時(shí)間)×每分鐘價(jià)格,并將金額存于金額寄存器中,然后將當(dāng)前時(shí)間和累計(jì)金額送JM320240F顯示出來(lái)。當(dāng)中途塞車(chē)(

74、等待或低速行駛)時(shí),在一定時(shí)間內(nèi)沒(méi)有檢測(cè)到傳感器的脈沖信號(hào)就啟動(dòng)T0 計(jì)時(shí)器[17]進(jìn)行計(jì)時(shí),當(dāng)超過(guò)規(guī)定的等待時(shí)間后,計(jì)價(jià)器就根據(jù)等待價(jià)格進(jìn)行當(dāng)前金額的累加與顯示,并在計(jì)價(jià)器上顯示等待時(shí)間。</p><p> ?。?)當(dāng)觸摸屏上的A被點(diǎn)擊時(shí),步進(jìn)電機(jī)驅(qū)動(dòng)空車(chē)屏自動(dòng)下降,空車(chē)屏的LED燈自動(dòng)熄滅,表示有乘客(第一位乘客)上車(chē),就進(jìn)行語(yǔ)音播報(bào)1(歡迎第一位乘客,現(xiàn)在開(kāi)始計(jì)價(jià)),并啟動(dòng)對(duì)A(如圖觸摸屏上所顯示的A)的計(jì)

75、價(jià),當(dāng)?shù)竭_(dá)目的地的時(shí)候,司機(jī)點(diǎn)擊觸摸屏上的A,就停止對(duì)A計(jì)價(jià),顯示當(dāng)前所應(yīng)該付的金額和對(duì)應(yīng)的單價(jià),并進(jìn)行語(yǔ)音播報(bào)11 (第一位乘客金額為*元)。</p><p> ?。?)當(dāng)車(chē)上已經(jīng)有乘客A,同時(shí)上來(lái)了B 乘客,點(diǎn)擊B,進(jìn)行語(yǔ)音播報(bào)2(歡迎第二位乘客,現(xiàn)在開(kāi)始計(jì)價(jià)),并記錄下當(dāng)前的公里數(shù),作為B的初始值,當(dāng)B下車(chē)時(shí),用最終數(shù)值減去初始值,就得到B行駛的距離,通過(guò)公式計(jì)算出B乘客的金額。當(dāng)B到達(dá)目的地后,司機(jī)點(diǎn)擊觸

76、摸屏上的B,就停止對(duì)B計(jì)價(jià),顯示當(dāng)前所應(yīng)該付的金額和對(duì)應(yīng)的單價(jià),并進(jìn)行語(yǔ)音播報(bào)22 (第二位乘客金額為*元)。</p><p>  (3)只有在A與B都沒(méi)有下的情況下,才可能點(diǎn)擊C, 點(diǎn)擊C時(shí),進(jìn)行語(yǔ)音播報(bào)3(歡迎第三位乘客,現(xiàn)在開(kāi)始計(jì)價(jià)),并記錄下當(dāng)前的公里數(shù),作為C的初始值,當(dāng)C下車(chē)時(shí),用最終數(shù)值減去初始值,就得到C行駛的距離,通過(guò)公式計(jì)算出C乘客的金額。 當(dāng)C到達(dá)目的地之后,司機(jī)點(diǎn)擊觸摸屏上的C,就停止對(duì)C

77、計(jì)價(jià),顯示當(dāng)前所應(yīng)該付的金額和對(duì)應(yīng)的單價(jià),并進(jìn)行語(yǔ)音播報(bào)33 (第三位乘客金額為*元)。</p><p>  而如果有乘客下,不管是A先下,還是B先下,只要上面還有人,就隨著脈沖信號(hào),持續(xù)的往上加,只是要記錄下每位乘客上車(chē)的初始值與最終數(shù)值,就能得出每位乘客的里程。</p><p> ?。?)只有在A、B與C都沒(méi)有下的情況下,才可能點(diǎn)擊D, 點(diǎn)擊D時(shí),進(jìn)行語(yǔ)音播報(bào)4(歡迎第四位乘客,現(xiàn)在開(kāi)

78、始計(jì)價(jià)),并記錄下當(dāng)前的公里數(shù),作為D的初始值,當(dāng)D下車(chē)時(shí),用最終數(shù)值減去初始值,就得到D行駛的距離,通過(guò)公式計(jì)算出D乘客的金額。 當(dāng)D到達(dá)目的地之后,司機(jī)點(diǎn)擊觸摸屏上的D,就停止對(duì)D計(jì)價(jià),顯示當(dāng)前所應(yīng)該付的金額和對(duì)應(yīng)的單價(jià),并進(jìn)行語(yǔ)音播報(bào)44 (第四位乘客金額為*元)。</p><p>  而如果有乘客下,不管是下一個(gè),還是下兩個(gè),只要上面還有人,就隨著脈沖信號(hào),持續(xù)的往上加,只是要記錄下每位乘客上車(chē)的初始值與

79、最終數(shù)值,就能得出每位乘客的里程。</p><p> ?。?)當(dāng)車(chē)上最后一位乘客下車(chē)之后,系統(tǒng)清零,空車(chē)屏自動(dòng)上升,上面的LED燈自動(dòng)點(diǎn)亮,等待下一次計(jì)價(jià)。</p><p><b>  圖3-2顯示主界面</b></p><p>  3.2外部中斷1 里程計(jì)數(shù)程序</p><p>  霍爾傳感器輸出的脈沖信號(hào)輸入到單片機(jī)

80、的外部中斷1 [17]接口,車(chē)輪每轉(zhuǎn)一圈就產(chǎn)生一個(gè)脈沖信號(hào),單片機(jī)就進(jìn)行一次中斷,在中斷程序中完成兩項(xiàng)任務(wù):</p><p> ?。?)啟動(dòng)定時(shí)器0 ,表示出租車(chē)啟動(dòng);</p><p> ?。?) 單次里程與總里程的累加計(jì)算并將結(jié)果存入寄存器中(設(shè)車(chē)輪轉(zhuǎn)1 圈為1 m ,則每中斷1 次,里程就增加1 m)[18]。</p><p>  3.3 T0 中途等待計(jì)時(shí)程序

81、</p><p>  當(dāng)外部中斷1進(jìn)行中斷時(shí)就啟動(dòng)T0 開(kāi)始計(jì)時(shí),每當(dāng)計(jì)時(shí)到達(dá)1 min ,等待時(shí)間累加器值就自加,而超過(guò)規(guī)定的等待時(shí)間后,就對(duì)當(dāng)前金額加上額外的中途等待的價(jià)錢(qián),以后每0. 1 min 都自動(dòng)加上中途等待的單價(jià)。當(dāng)中途等待結(jié)束的時(shí)候,也就自動(dòng)切換到正常的計(jì)價(jià)[19]。</p><p>  3.4 觸摸屏服務(wù)程序</p><p>  觸摸屏分為顯示與觸

82、控兩部份,顯示部分的流程圖如圖3-3所示,觸控部分的流程圖如圖3-4所示。</p><p>  先向顯示屏的寄存器中寫(xiě)放命令,然后寫(xiě)入數(shù)據(jù),屏上便顯示所寫(xiě)入的數(shù)據(jù)。</p><p>  觸控采用查詢的方式,點(diǎn)擊屏幕,數(shù)據(jù)被記錄到三個(gè)緩存器中,讀出緩存器中的數(shù)據(jù)便能確定所點(diǎn)擊的位置。</p><p>  圖3-3 觸摸屏顯示子程序流程圖</p><

83、p>  圖3-4 觸摸屏觸控子程序流程圖</p><p><b>  3.5語(yǔ)音輸出</b></p><p>  語(yǔ)音輸出部分的流程圖如圖3-5所示。先對(duì)串口進(jìn)行初始化,然后向XF-S4240發(fā)控制命令,上位機(jī)發(fā)送給XF-S4240 的所有命令和數(shù)據(jù)都需要用“幀”的方式進(jìn)行封裝后傳輸,如表3-1 所示。幀結(jié)構(gòu)由幀頭標(biāo)志、數(shù)據(jù)區(qū)長(zhǎng)度和數(shù)據(jù)區(qū)三部分組成。表3-2 是

84、對(duì)命令幀格式的說(shuō)明[20]。</p><p>  圖3-5語(yǔ)音播報(bào)子程序流程圖</p><p>  表3-1命令幀封裝格式</p><p>  表3-2 命令幀格式說(shuō)明</p><p>  數(shù)據(jù)區(qū)是由命令字和命令參數(shù)組成的,上位機(jī)使用命令字來(lái)實(shí)現(xiàn)語(yǔ)音合成板卡的各種功能,表格8 中詳細(xì)描述了數(shù)據(jù)區(qū)的命令字和命令參數(shù)[21]。</p>

85、<p>  名稱 發(fā)送的數(shù)據(jù) 說(shuō)明</p><p>  0x01 語(yǔ)音合成命令</p><p>  0x02 停止合成命令,沒(méi)有參數(shù)</p><p>  0x03 暫停合成命令,沒(méi)有參數(shù)</p><p>  0x04 恢復(fù)合成命令,沒(méi)有參數(shù)</p><p>  0x21 TTS 系統(tǒng)狀態(tài)查詢命令</

86、p><p>  0x88 系統(tǒng)進(jìn)入Power Down 模式,Reset 之后恢復(fù)</p><p>  語(yǔ)音合成命令如表3-3所示。</p><p>  表3-3 語(yǔ)音合成命令</p><p><b>  4結(jié)語(yǔ)</b></p><p>  本設(shè)計(jì)以單片機(jī)STC89C55 為核心,以語(yǔ)音芯片XF-S4

87、240、時(shí)鐘芯DS1302 、步進(jìn)電機(jī)、JM320240F液晶觸摸屏等為外設(shè)的新型出租車(chē)計(jì)價(jià)器。給出硬件電路圖與實(shí)物圖以及主程序流程圖并附上部分重要子程序,闡述了軟硬件設(shè)計(jì)過(guò)程中關(guān)鍵技術(shù)的處理。該系統(tǒng)完全滿足集計(jì)程、計(jì)時(shí)、不同乘客同時(shí)計(jì)費(fèi)、空車(chē)屏自動(dòng)升降、存儲(chǔ)、語(yǔ)音播報(bào)等多種計(jì)量功能為一體的出租車(chē)計(jì)價(jià)器的實(shí)用要求。本文在出租車(chē)計(jì)價(jià)器的設(shè)計(jì)中,優(yōu)化了程序的設(shè)計(jì),使結(jié)構(gòu)更加清晰有層次。跟其他任何設(shè)計(jì)一樣,在實(shí)際運(yùn)用之前,都不敢確定一定會(huì)在將

88、來(lái)會(huì)在廣闊的運(yùn)用。但隨著社會(huì)的進(jìn)步,現(xiàn)有的技術(shù)與方式一定會(huì)逐步被更加智能化,更加人性化的設(shè)計(jì)所替代,本設(shè)計(jì)便是一個(gè)在出租車(chē)計(jì)價(jià)器不斷發(fā)展與完善過(guò)程中,提出的一個(gè)更加智能與人性化的設(shè)計(jì),與已有的系統(tǒng)相比,該系統(tǒng)具有語(yǔ)音播報(bào),多路同時(shí)計(jì)費(fèi)的功能。而且這對(duì)于單片機(jī)應(yīng)用系統(tǒng)、電子電路的開(kāi)發(fā)和教學(xué)等也都有較大的實(shí)用價(jià)值。</p><p><b>  參考文獻(xiàn)</b></p><p&

89、gt;  [1] 張瑾.出租車(chē)“拼車(chē)”問(wèn)題研究及其服務(wù)系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)[D]. 蘭州:蘭州交通大學(xué),2009:6.</p><p>  [2] 常超凡,陳團(tuán)生,劉明君等.城市出租車(chē)擁有量對(duì)分擔(dān)率影響分析[J].交通科技與經(jīng)濟(jì). 2007(3):75-88.</p><p>  [3] 車(chē)勇.基于多人合乘模式的出租車(chē)智能調(diào)度管理系統(tǒng)設(shè)計(jì)與研究[J].上海:同濟(jì)大學(xué),2008:4 5.</

90、p><p>  [4] 晉江月.拼車(chē)的經(jīng)濟(jì)學(xué)分析[J].科技信息.2006(4):7.</p><p>  [5] 白雪冰.單片機(jī)原理與應(yīng)用[M] .哈爾濱:東北林業(yè)大學(xué)出版社,2007:41.</p><p>  [6] 張毅剛.新編MCS- 51 單片機(jī)應(yīng)用設(shè)計(jì)[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2003:25.</p><p>  [7]

91、 陳大欽. 模擬電子技術(shù)基礎(chǔ)[M] . 北京:高等教育出版社,2000:74.</p><p>  [8] 求實(shí)科技. 單片機(jī)典型模塊設(shè)計(jì)實(shí)例導(dǎo)航[M] . 北京:人民郵電出版社,2004:43.</p><p>  [9] 黃代福. 出租車(chē)計(jì)價(jià)器傳感器原理及檢測(cè)[J] . 計(jì)量與測(cè)試技術(shù). 2006(8):20􀀁21. </p><p>  [1

92、0] 陳小忠.單片機(jī)接口技術(shù)實(shí)用子程序[M] . 北京:人民郵電出版社,2005:65.</p><p>  [11] 全國(guó)大學(xué)生電子設(shè)計(jì)競(jìng)賽組委會(huì). 全國(guó)大學(xué)生電子設(shè)計(jì)競(jìng)賽獲獎(jiǎng)作品精選[M] . 北京:北京理工大學(xué)出版社,2000:43.</p><p>  [12] 楊恢先,黃輝先. 單片機(jī)原理及應(yīng)用[M] . 長(zhǎng)沙:國(guó)防科技大學(xué)出版社,2003:23.</p><

93、p>  [13] Jacob Millman and Arvin Grabel .Microelectronics.2nd ed.New York:Mcgraw-Hill book Company.</p><p>  1987.pp.20-23.</p><p>  [14] 劉守義主編.單片機(jī)應(yīng)用技術(shù)[M].西安:西安電子科技大學(xué)出版社,2003:32.</p>&

94、lt;p>  [15] E.G.Richardson,MAX232,MAX232I DUAL EIA-232 DRIVER/RECEIVER. John Wiley &Sons </p><p>  Ltd,2003.pp.24-26.</p><p>  [16]求是科技. 單片機(jī)典型外圍器件及應(yīng)用實(shí)例[ M] .北京:人民郵電出版社 ,2006:21-24.</p&

95、gt;<p>  [17]吳金戌. 8051 單片機(jī)實(shí)踐以應(yīng)用[M].北京:清華大學(xué)出版社, 2006:20-24.</p><p>  [18]王宗和. 單片機(jī)實(shí)驗(yàn)與綜合訓(xùn)練[M]北京:高等教育出版社, 2005:42.</p><p>  [19]戴永主編.微機(jī)控制技術(shù)[M].長(zhǎng)沙:湖南大學(xué)出版社,2001:43.</p><p>  [20]A.

96、J.Peyton V. Walsh: Analogue eletronics with Op Amps:a source book of practical, Campridge</p><p>  university press,New york, 1993.pp.65.</p><p>  [21]何立民. 單片機(jī)應(yīng)用技術(shù)選編[M] . 北京:北京航空航天大學(xué)出版社,1999:20.

97、</p><p>  附錄1 觸摸屏子程序</p><p>  #include "LCD.h" //對(duì)管腳進(jìn)行定義以及對(duì)函數(shù)聲明</p><p>  extern void LCD_display_code(unsigned char n);</p><p

98、>  extern void LCD_display_line(unsigned char star_xx ,unsigned char star_yy,unsigned char heng,unsigned char shu);</p><p>  unsigned char code digit[]={"0123456789"} ; //定義字符數(shù)組顯示數(shù)字&

99、lt;/p><p>  unchar code tab1[]={"計(jì)程:"};</p><p>  unchar code tab2[]={"計(jì)時(shí):"};</p><p>  unchar code tab3[]={"里貼:"};</p><p>  unchar code tab4[]

100、={"單價(jià):"};</p><p>  unchar code tab5[]={"開(kāi)始"};</p><p>  unchar code tab6[]={"計(jì) 價(jià) 器"};</p><p>  unchar code tab7[]={"使用說(shuō)明"};</p><p&g

101、t;  unchar code tab8[]={"正在計(jì)費(fèi)"};</p><p>  unchar code tab11[]={"(公里)"};</p><p>  unchar code tab22[]={"(分鐘)"};</p><p>  unchar code tab33[]={"元/公里

102、"};</p><p>  unchar code tab44[]={"(元)"};</p><p>  unchar code tab000[]={"0.00"};</p><p>  unchar code tab00[]={"00"};</p><p>  //***

103、****************顯示字碼表*******************</p><p>  void LCD_display_code(unsigned char n)</p><p>  { LCD_Text(); //文字模式開(kāi)</p><p>  LCD_CmdWrite(0xb0);

104、 //寫(xiě)數(shù)據(jù)模式</p><p>  LCD_DataWrite(n);</p><p><b>  }</b></p><p>  //*****************顯示一條線********************</p><p>  void LCD_display_line(unsigned char s

105、tar_xx ,unsigned char star_yy,unsigned char heng,unsigned char shu)</p><p>  { unsigned char i,j;</p><p>  LCD_Graphic(); //選擇繪圖模式</p><p>  LCD_GotoXY(star_x

106、x ,star_yy); //設(shè)定X,Y坐標(biāo)位置</p><p>  LCD_CmdWrite(0xB0);</p><p>  for(i=0;i<heng;i++) //橫線</p><p>  { LCD_DataWrite(0xfe); //實(shí)線,虛線,以及虛線的疏密由此數(shù)據(jù)決定<

107、/p><p><b>  }</b></p><p><b>  }</b></p><p>  //************************************************</p><p>  void delay_nms(unsigned int n)</p>

108、<p>  { unsigned int i,j;</p><p>  for(i=n;i>0;i--)</p><p>  { for(j=20;j>0;j--) ;</p><p><b>  }</b></p><p><b>  }</b></p>

109、;<p>  //********************屏幕開(kāi)啟********************</p><p>  void LCD_display_on(void)</p><p>  { unchar temp;</p><p>  temp=LCD_CmdRead(0x00);</p><p>  temp

110、=temp|0x04;</p><p>  LCD_CmdWrite(0x00);</p><p>  LCD_DataWrite(temp);</p><p><b>  }</b></p><p>  //************************************************</p&g

111、t;<p>  unchar LCD_DataRead(void)</p><p><b>  {</b></p><p>  unchar Data;</p><p><b>  BUS=0XFF;</b></p><p><b>  cs1=0;</b><

112、;/p><p><b>  rs=0;</b></p><p><b>  wr=1;</b></p><p><b>  rd=1;</b></p><p><b>  rd=0;</b></p><p><b>  Dat

溫馨提示

  • 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ù)僅提供信息存儲(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)論