前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇出租車計(jì)價(jià)器設(shè)計(jì)范文,相信會(huì)為您的寫作帶來(lái)幫助,發(fā)現(xiàn)更多的寫作思路和靈感。
【關(guān)鍵詞】計(jì)價(jià)器;AT89S52
一、設(shè)計(jì)方案
(一)主控電路的設(shè)計(jì)
利用單片機(jī)豐富的 I/O端口和其本身控制的靈活性,可以實(shí)現(xiàn)基本的里程計(jì)價(jià)功能和價(jià)格調(diào)整、時(shí)鐘顯示等功能。
(二)掉電保護(hù)
DS1302是美國(guó)DALLAS公司推出的一種高性能、低功耗、帶RAM的實(shí)時(shí)時(shí)鐘,它可以在很小電流的后備電源(2.5V~5.5V電源,在2.5V時(shí)耗電小于300nA)下工作,利用DS1302的RAM就可以實(shí)現(xiàn)掉電保護(hù),而且可以很直觀的就可以顯示時(shí)間,可帶來(lái)很多方便。
(三)顯示設(shè)計(jì)
采用LED數(shù)碼管顯示。數(shù)碼管具有編程簡(jiǎn)單,夜間顯示效果好,而且其價(jià)格便宜。
二、各單元電路設(shè)計(jì)
(一)里程計(jì)算、計(jì)價(jià)單元的設(shè)計(jì)
里程計(jì)算是通過(guò)安裝在車輪上的霍爾傳感器檢測(cè)到的脈沖信號(hào),送到單片機(jī)產(chǎn)生中斷,單片機(jī)再根據(jù)程序設(shè)定,計(jì)算出里程。
A44E 屬于開關(guān)型的霍爾器件,其工作電壓范圍比較寬(4.5~18V),其輸出的信號(hào)符合TTL電平標(biāo)準(zhǔn),可以直接接到單片機(jī)的IO 端口上,而且其最高檢測(cè)頻率可達(dá)到1MHZ。
在霍爾電勢(shì)發(fā)生器的兩端加上電壓VCC后,根據(jù)霍爾效應(yīng)原理,當(dāng)霍爾片處在磁場(chǎng)中時(shí),霍爾傳感器的輸出端輸出低電平。當(dāng)車輪轉(zhuǎn)動(dòng)一圈時(shí)小磁鐵提供一個(gè)磁場(chǎng),則霍爾傳感器輸出一次低電平完成一次數(shù)據(jù)采集。我們選擇了P3.3 口作為信號(hào)的輸入端,內(nèi)部采用外部中斷0,車輪每轉(zhuǎn)一圈,霍爾開關(guān)就檢測(cè)并輸出信號(hào),引起單片機(jī)的中斷,對(duì)脈沖計(jì)數(shù)。通過(guò)計(jì)算將脈沖增加體現(xiàn)在金額和里程上。
(二)掉電存儲(chǔ)單元電路
當(dāng)主電源低于10V時(shí)單片機(jī)就要采取掉電保護(hù)措施,我們采用看門狗電路MAX813L對(duì)電源電壓進(jìn)行監(jiān)視,該芯片PFI的門限電壓是1.25V,當(dāng)電源電壓為10V時(shí)分壓結(jié)果使PFI引腳的電壓等于1.25V,電源電壓下降10V以下時(shí)V小于1.25V,則PFO就從高電平跳變到低電平,將PFO連接單片機(jī)的外部中斷P3.2口,當(dāng)PFO從高電平跳變到低電平時(shí)觸發(fā)中斷進(jìn)行數(shù)據(jù)保護(hù),數(shù)據(jù)保護(hù)采用的是時(shí)鐘芯片DS1302,該芯片內(nèi)部有32個(gè)寄存器可以對(duì)數(shù)據(jù)進(jìn)行讀和寫以及時(shí)鐘的設(shè)置,所以當(dāng)?shù)綦姇r(shí)將數(shù)據(jù)寫入DS1302,重新上電后在從該芯片中讀取數(shù)據(jù),這樣就完成了掉電保護(hù)功能。如圖1所示。
(三)按鍵電路
按鍵設(shè)計(jì)了一個(gè)功能鍵,能夠選擇時(shí),分,單價(jià),配合上調(diào)和下調(diào),對(duì)時(shí)間,單價(jià)調(diào)整。設(shè)一個(gè)“計(jì)價(jià)”鍵,當(dāng)乘客上車后,出租車開始計(jì)價(jià),設(shè)一個(gè)“清零”鍵,乘客下車后,里程,總價(jià)清零,設(shè)一個(gè)“打印”鍵,當(dāng)乘客到站付錢后,打印基本收費(fèi)信息。共六個(gè)按鍵。各鍵盤設(shè)置的功能如圖2所示。
按下對(duì)應(yīng)按鍵時(shí)調(diào)用對(duì)應(yīng)的程序執(zhí)行功能,其中計(jì)價(jià)按鍵含一個(gè)有乘客指示燈,清零按鍵還包含一個(gè)空車指示燈進(jìn)行輔助顯示。
(四)顯示電路
顯示采用LED數(shù)碼管,LED顯示效果好,能顯示基本的數(shù)字信息,且程序簡(jiǎn)單。LED顯示器與單片機(jī)的接口一般有靜態(tài)顯示和動(dòng)態(tài)顯示兩種方式。LED采用靜態(tài)顯示與單片機(jī)接口時(shí),共陰極或共陽(yáng)極點(diǎn)連接在一起接地或高電平。靜態(tài)顯示器接口電路,在位數(shù)較多時(shí),電路比較復(fù)雜,需要的接口芯片較多,成本也較高。動(dòng)態(tài)LED顯示接口由于各個(gè)數(shù)碼管共用同一個(gè)段碼輸出口,分時(shí)輪流通電的,從而大大簡(jiǎn)化了硬件線路,降低了成本。此次設(shè)計(jì)用動(dòng)態(tài)顯示位選用74LS138驅(qū)動(dòng),138輸出低電平,所以選用共陰極數(shù)碼管。LED顯示器中每個(gè)發(fā)光二極管要通過(guò)5毫安-20毫安的電流才能達(dá)到正常亮度。
在本設(shè)計(jì)中,LED的主要功能就是把北京時(shí)間和乘客坐出租車的單價(jià)、路程和費(fèi)用顯示出來(lái),給乘客帶來(lái)方便。
參考文獻(xiàn)
[1]曹巧媛.單片機(jī)原理及應(yīng)用[M].電子工業(yè)出版社,2002.
[2]李朝青.單片機(jī)原理與接口技術(shù)[M].北京航空航天大學(xué)出版社,1999.
關(guān)鍵詞:出租車計(jì)價(jià)器;加密裝置;解碼器;密碼寫入裝置
在出租車計(jì)價(jià)器設(shè)計(jì)中使用加密傳感器技術(shù),是為了避免計(jì)價(jià)作弊等問(wèn)題,保護(hù)消費(fèi)者的利益。比如,某些不法分子利用空車牌設(shè)計(jì)的缺陷,在乘客上車之前,汽車已經(jīng)提前進(jìn)入了計(jì)價(jià)狀態(tài)。在乘客上車之后,司機(jī)只需要按倒空車牌,就可以置入預(yù)先的計(jì)價(jià)里程,侵害了消費(fèi)者的利益。事實(shí)上,出租車計(jì)價(jià)器作弊的方式還有很多,這不僅降低了計(jì)價(jià)器計(jì)價(jià)的可靠性,而且也給統(tǒng)一管理工作增加了難度。雖然我國(guó)計(jì)量部門已經(jīng)采取了措施,實(shí)現(xiàn)了對(duì)計(jì)價(jià)器的統(tǒng)一安裝,但是設(shè)計(jì)本身的缺陷讓很多不法分子鉆了空子,出租車司機(jī)私自更改計(jì)價(jià)傳感器的行為較為普遍。
1 出租車傳感器加密算法模型
通過(guò)對(duì)出租車計(jì)價(jià)器作弊行為的分析可知,傳感器所發(fā)送的計(jì)算脈沖沒有加密是導(dǎo)致出租車計(jì)價(jià)器計(jì)價(jià)漏洞的根本原因。加密傳感器在出租車計(jì)價(jià)器中的使用就是要實(shí)現(xiàn)對(duì)計(jì)算脈沖的加密,實(shí)現(xiàn)脈沖的加密傳輸,解碼后再傳遞給計(jì)價(jià)器,實(shí)現(xiàn)了計(jì)價(jià)器的有效計(jì)價(jià)。置換表是所有算法模型中最簡(jiǎn)單的一種,但是在出租車計(jì)價(jià)器中使用的效果卻較好。在置換表中,不同的信號(hào)脈沖對(duì)應(yīng)表中的一個(gè)偏移量,偏移量所對(duì)應(yīng)的值就構(gòu)成了加密文件。在加密傳感器中,加密和解密工作都需要用到置換表,而且由于其結(jié)構(gòu)較為簡(jiǎn)單,加密和解密的速度都很快。
在具體設(shè)計(jì)中,首先要以置換表為依據(jù),將出租車電子傳感器中的所有計(jì)價(jià)脈沖信號(hào)都轉(zhuǎn)換成二進(jìn)制數(shù),這就實(shí)現(xiàn)了對(duì)計(jì)價(jià)脈沖信號(hào)的加密。然后加密后的脈沖信號(hào)將會(huì)發(fā)送給特定的解碼器,當(dāng)解碼器接收到加密脈沖信號(hào)后,會(huì)對(duì)加密文件和原有的密碼進(jìn)行比較,判斷傳感器所發(fā)送信號(hào)的有效性。如果解碼器判斷傳感器所發(fā)送的脈沖信號(hào)有效,那么就會(huì)向計(jì)價(jià)器發(fā)送計(jì)價(jià)脈沖信號(hào),否則不發(fā)送。
在這個(gè)模型中,只有解碼器中的固有密碼和加密脈沖相同時(shí),計(jì)價(jià)器才能夠開始計(jì)價(jià),否則將無(wú)法計(jì)價(jià)。在統(tǒng)一管理工作中,計(jì)量部門可以通過(guò)改變加密協(xié)議、加密密碼等方式,實(shí)現(xiàn)對(duì)出租車計(jì)價(jià)的有效管理。
2 出租車計(jì)價(jià)器加密傳感器的設(shè)計(jì)
2.1 出租車加密傳感器的構(gòu)成
加密裝置、解碼器以及密碼寫入裝置共同構(gòu)成了加密傳感器。加密器的主要工作是接收計(jì)價(jià)脈沖信號(hào),當(dāng)加密器檢測(cè)到脈沖信號(hào)發(fā)生變化后,就會(huì)將加密信號(hào)發(fā)送給解碼器。解碼器的主要作用就在接收到加密文件后,通過(guò)比較、判斷等環(huán)節(jié),實(shí)現(xiàn)對(duì)加密脈沖信號(hào)的判斷和解碼。同時(shí),解碼器也可以接受密碼寫入裝置輸入的信號(hào)。因?yàn)榧用苎b置會(huì)接收到來(lái)自加密裝置和密碼寫入裝置兩方面的信息,因此,解碼器會(huì)有一個(gè)識(shí)別功能,能夠辨別信號(hào)的類型。通常情況下,解碼器會(huì)通過(guò)判斷所接受第一個(gè)數(shù)據(jù)刪除的類型,來(lái)判斷信號(hào)的類型。如果第一組數(shù)據(jù)不是字符,那么將會(huì)和解密器中的密碼進(jìn)行比較,如果相同就會(huì)將脈沖信號(hào)發(fā)送給計(jì)價(jià)器。如果第一組數(shù)據(jù)是字符,那么就認(rèn)為是密碼寫作裝置所發(fā)送的信號(hào),解碼器會(huì)將其保存到E2PROM中作為固定的密碼。圖1為加密傳感器的系統(tǒng)構(gòu)成,從圖中可以看出加密裝置、解碼器和密碼寫入裝置的基本關(guān)系。
圖1 加密傳感器系統(tǒng)構(gòu)成
密碼寫入裝置的主要作用就是為了方便計(jì)量部門的密碼修改工作。首先,識(shí)別出密碼寫入裝置中所設(shè)定的密碼,當(dāng)檢測(cè)到按鍵被按下后,同步的字符就會(huì)發(fā)送給解碼器。最后,由解碼器對(duì)比和分析后,存儲(chǔ)為固定密碼。
2.2 加密器設(shè)計(jì)
加密器是加密傳感器中的重要組成部分,加密器的固定密碼采用的二進(jìn)制數(shù),通常是由16個(gè)數(shù)字組成,但是表現(xiàn)時(shí)則采用5位十進(jìn)制的數(shù)字表示。在發(fā)送脈沖信號(hào)時(shí),1~9發(fā)送與其數(shù)值相等的脈沖而0則發(fā)送10個(gè)脈沖。脈沖是有固定格式的,脈沖的高電平時(shí)間為15us,低電平時(shí)間為10us。在實(shí)際工作中,要求發(fā)送每一個(gè)數(shù)字的時(shí)間要小于255us。加密器具體的工作流程如圖2所示:
2.3 解碼器設(shè)計(jì)
解碼器在整個(gè)加密傳感器中起到了接收密碼寫入裝置和加密器所輸入信號(hào)的作用,同時(shí)還能夠判斷信號(hào)的類型,并在此基礎(chǔ)上進(jìn)行不同的處理。解碼器在設(shè)計(jì)中主要包含了兩方面內(nèi)容:
第一,密碼存儲(chǔ)。串行E2PROM具有體積小、功耗低以及改寫便捷等特點(diǎn),在出租車加密傳感器中使用較為廣泛。I2C總線是串行E2PROM總線的一種形式之一,I2C又稱之為內(nèi)部集成線路總線,在數(shù)據(jù)傳輸過(guò)程中采用了SCL、SDA兩種方式,這兩種數(shù)據(jù)傳輸方式的特點(diǎn)就在于接口較為簡(jiǎn)單。這種總線模式在目前出租車計(jì)價(jià)器加密傳感器中的應(yīng)用較為普遍。
第二,密碼接收。數(shù)據(jù)接收功能是解碼器的基本功能,在實(shí)際工作中,要確保數(shù)據(jù)讀取的準(zhǔn)確性,就必須要使用正確的方式接收密碼,尤其強(qiáng)調(diào)密碼接收的時(shí)序。傳感器發(fā)送信號(hào)的最小時(shí)間是20ms,因此,密碼發(fā)送的時(shí)間是決定解碼器接收時(shí)間的主要因素。在這種模式下,能夠?qū)⒂?jì)價(jià)脈沖的發(fā)送時(shí)間控制在最短時(shí)間內(nèi)。在具體的解碼工作中,解碼器首先讀取E2PROM中保存著的固定密碼,然后在寄存器中對(duì)數(shù)據(jù)的類型進(jìn)行判斷。比對(duì)后,如果顯示密碼正確,那么在GP0引腳上就會(huì)發(fā)送高脈沖,進(jìn)而實(shí)現(xiàn)計(jì)價(jià)器的計(jì)價(jià)。但是如果接收到的信號(hào)是密碼寫入裝置發(fā)送來(lái)的,那么解碼器就會(huì)接收這幾個(gè)數(shù)據(jù),并將這些數(shù)據(jù)寫入到00h-04h中,完成后改程序即終止。
2.4 密碼寫入裝置設(shè)計(jì)
密碼寫入裝置是由計(jì)量部門控制的,具有修改密碼的作用,因此,要求發(fā)送的時(shí)序和加密器一致。為了實(shí)現(xiàn)解碼器對(duì)脈沖信號(hào)的有效判斷,就必須要在發(fā)送新密碼之前,先發(fā)送一個(gè)同步字符。在具體設(shè)計(jì)中,設(shè)置了5個(gè)小數(shù)字鍵,方便密碼的設(shè)置和修改。這5個(gè)小數(shù)字鍵分別代表的是個(gè)位到萬(wàn)位的數(shù)據(jù)。
在密碼寫入裝置中,還設(shè)置了一個(gè)開關(guān),用于設(shè)置密碼的啟動(dòng)功能,會(huì)產(chǎn)生由高到低的跳變。當(dāng)單片機(jī)在檢測(cè)到變化時(shí),就會(huì)開始發(fā)送新密碼。密碼寫入裝置的工作流程如圖3所示:
3 結(jié)束語(yǔ)
加密傳感器在出租車計(jì)價(jià)器中的使用,不僅提高了出租車計(jì)價(jià)的準(zhǔn)確性,而且方便了計(jì)量部門對(duì)出租車計(jì)價(jià)的管理。將加密傳感技術(shù)應(yīng)用于出租車計(jì)價(jià)系統(tǒng)中,首先就要建立一個(gè)加密模型,在這個(gè)加密模型的基礎(chǔ)上,實(shí)現(xiàn)對(duì)加密裝置、解碼器以及密碼寫入裝置的設(shè)計(jì)。
參考文獻(xiàn)
[1]張國(guó)印,付小晶,馬春光.移動(dòng)對(duì)等傳感器網(wǎng)絡(luò)的基于屬性加密的組密鑰管理協(xié)議[J].高技術(shù)通訊,2013(02).
關(guān)鍵詞:互聯(lián)網(wǎng);出租車;計(jì)價(jià)器;單片機(jī)
doi:10.3969/J.ISSN.1672-7274.2016.02.007 中圖分類號(hào):TH714 文獻(xiàn)標(biāo)示碼:A 文章編碼:1672-7274(2016)02-0027-03
1引言
出租車計(jì)價(jià)器是司機(jī)與乘客交易的一種方式,也是出租車行業(yè)的發(fā)展標(biāo)志,還是非常重要的工具,它關(guān)系雙方的利益。具有良好性能的出租車計(jì)價(jià)器,對(duì)廣大出租車司機(jī)與乘客來(lái)說(shuō)都是很重要的。因此,出租車計(jì)價(jià)器的研究十分必要。本文設(shè)計(jì)的出租車自動(dòng)計(jì)價(jià)器,上電后顯示最初的起步價(jià),當(dāng)乘客說(shuō)出要去的目的地時(shí),顯示出路線和預(yù)計(jì)的總價(jià),同時(shí)乘客可以掃描計(jì)價(jià)器上的二維碼,將百度地圖下載到自己的手機(jī)上;通過(guò)按鍵可以調(diào)節(jié)起步價(jià),里程計(jì)費(fèi)單價(jià)。同時(shí)具有運(yùn)行、暫停、停止等狀態(tài),可以顯示暫停的時(shí)間,具有累加功能,暫停和運(yùn)行時(shí)間在暫停和運(yùn)行前一次的狀態(tài)上計(jì)時(shí)。出租車停止后能夠顯示行駛的總費(fèi)用。
2系統(tǒng)框圖
計(jì)價(jià)器的單片機(jī)控制方案圖如圖1所示。它由以下幾個(gè)部件組成:?jiǎn)纹瑱C(jī)STC15F2K61S2、總金額及單價(jià)顯示部件、鍵盤控制部件、掉電存儲(chǔ)控制、里程計(jì)算單元、串中顯示驅(qū)動(dòng)電路等。利用單片機(jī)豐富的IO端口及其控制的靈活性,實(shí)現(xiàn)基本的里程計(jì)價(jià)、價(jià)格調(diào)節(jié)、時(shí)鐘顯示等功能。不但能實(shí)現(xiàn)所要求的功能,而且能在很大程度上擴(kuò)展功能,還可以方便的對(duì)系統(tǒng)進(jìn)行升級(jí)。具體參見圖1。(1)里程計(jì)算、計(jì)價(jià)單元的設(shè)計(jì)。里程計(jì)算是通過(guò)安裝在車輪上的霍爾傳感器A44E檢測(cè)到的信號(hào),送到單片機(jī),經(jīng)處理計(jì)算送給顯示單元的?;魻栭_關(guān)就檢測(cè)并輸出信號(hào),引起單片機(jī)的中斷,對(duì)脈計(jì)數(shù),當(dāng)計(jì)數(shù)達(dá)到1,000次時(shí),也就是1千米,單片機(jī)就控制將金額自動(dòng)地增加,其計(jì)算公式:當(dāng)前單價(jià)×千米數(shù)=金額。(2)數(shù)據(jù)顯示單元設(shè)計(jì)。由于設(shè)計(jì)要求有單價(jià)、路程、總金額顯示輸出,加上另外擴(kuò)展了時(shí)鐘顯示(包含時(shí)分秒的顯示)和路線顯示,因此采用1602液晶顯示屏。(3)掉電存儲(chǔ)單元的設(shè)計(jì)。掉電存儲(chǔ)單元的作用是在電源斷開的時(shí)候,存儲(chǔ)當(dāng)前設(shè)定的單價(jià)信息,該部分采用AT24C02。AT24C02是某公司的2KB字節(jié)的電可擦除存儲(chǔ)芯片,采用兩線串行的總線和單片機(jī)通信,電壓最低可以到2.5V,額定電流為1mA,靜態(tài)電流10Ua(5.5V),芯片內(nèi)的資料可以在斷電的情況下保存40年以上,而且采用8腳的(4)信息采集與處理部分。主要利用了GPS對(duì)車輛的地理位置信息進(jìn)行采集,并由單片機(jī)對(duì)數(shù)據(jù)進(jìn)行處理(提取、轉(zhuǎn)換等)。(5)信息傳輸部分由GPRS將經(jīng)單片機(jī)處理后的數(shù)據(jù)通過(guò)GPRS網(wǎng)絡(luò)、GPRS-Internet網(wǎng)關(guān)以及Internet通過(guò)Wi-Fi傳輸給Android終端。Android終端監(jiān)控部分,通過(guò)編寫的基于百度地圖的軟件接收回來(lái)的數(shù)據(jù)存在SQL數(shù)據(jù)庫(kù),再以百度地圖的形式呈獻(xiàn)給出租車駕駛?cè)藛T和乘客。(6)票據(jù)打印部分。當(dāng)出租車到達(dá)指定地點(diǎn),司機(jī)翻起空車牌,便產(chǎn)生一個(gè)信號(hào)通知單片機(jī),單片機(jī)啟動(dòng)打印服務(wù),將行車的中途等待時(shí)間、營(yíng)運(yùn)里程、單價(jià)、金額、日期及上下車時(shí)間等數(shù)據(jù)打印成出租車專用發(fā)票。采用接口插板方式與單片機(jī)相連,這一特點(diǎn)使得計(jì)價(jià)器的票據(jù)打印在功能上與主系統(tǒng)一體化,而在檢查、維修時(shí)又可單獨(dú)進(jìn)行。
3主程序模塊
在主程序模塊中,需要完成對(duì)各芯片的初始化,在主程序模塊中還需要設(shè)置啟動(dòng)/清除標(biāo)志寄存器、里程寄存器和價(jià)格寄存器,并對(duì)它們進(jìn)行初始化。然后,主程序?qū)⒏鶕?jù)各標(biāo)志寄存器的內(nèi)容,分別完成啟動(dòng)、清除、計(jì)程和計(jì)價(jià)等不同的操作。主程序流程如圖2所示。當(dāng)空車信號(hào)燈打下時(shí),表示有乘客上車,乘客報(bào)地名,系統(tǒng)根據(jù)目的地規(guī)劃路線,乘客選擇路線,并啟動(dòng)計(jì)價(jià),將根據(jù)里程寄存器中的內(nèi)容計(jì)算和判斷出行駛里程是否已超過(guò)起價(jià)千米數(shù)。若已超過(guò),則根據(jù)里程值、每千米的單價(jià)和起價(jià)來(lái)計(jì)算出當(dāng)前的累計(jì)價(jià)格,并將結(jié)果存于價(jià)格寄存器中,然后將當(dāng)前時(shí)間和累計(jì)價(jià)格送MAX7219驅(qū)動(dòng)的顯示電路顯示出來(lái)。當(dāng)中途塞車(等待或低速行駛)時(shí),在一定時(shí)間內(nèi)沒有檢測(cè)到傳感器的脈沖信號(hào)就啟動(dòng)計(jì)時(shí)器進(jìn)行計(jì)時(shí),當(dāng)超過(guò)規(guī)定的等待時(shí)間后,計(jì)價(jià)器就根據(jù)等待價(jià)格進(jìn)行當(dāng)前金額的累加與顯示,并在計(jì)價(jià)器上顯示等待時(shí)間;當(dāng)?shù)竭_(dá)目的地的時(shí)候,司機(jī)把空車燈打上,就停止計(jì)價(jià),顯示當(dāng)前所應(yīng)該付的金額和對(duì)應(yīng)的單價(jià),并進(jìn)行語(yǔ)音播報(bào)及票據(jù)打印。等乘客下車后,啟動(dòng)出租車,計(jì)價(jià)器檢測(cè)到傳感器的脈沖信號(hào),系統(tǒng)自動(dòng)對(duì)顯示清零,并重新進(jìn)行初始化過(guò)程,完成1次計(jì)價(jià)。
4結(jié)束語(yǔ)
基于互聯(lián)網(wǎng)的計(jì)價(jià)器用高度可靠的存儲(chǔ)功能開申報(bào)營(yíng)業(yè)稅,而用打印機(jī)打印出正式發(fā)票,同時(shí)當(dāng)乘客報(bào)出目的地時(shí),可以通過(guò)互聯(lián)網(wǎng)規(guī)劃路線,其他附帶有電子時(shí)鐘、語(yǔ)音提醒等功能,構(gòu)成了現(xiàn)今最為完善、先進(jìn)的智能計(jì)價(jià)器。本系統(tǒng)的研制,為運(yùn)管部門在出租車?yán)@路、亂收費(fèi)、交稅等提供方便。該設(shè)計(jì)具有性能穩(wěn)定、功耗低、安全可靠、操作方便等特點(diǎn),相信很受出租車公司、運(yùn)管部門、出租車司機(jī)及廣大乘客的青睞。
參考文獻(xiàn)
[1]李廣弟,朱月秀,冷祖祁.單片機(jī)基礎(chǔ)[M].北京:北京航空航天大學(xué)出版社,2007
[2]李華.MCS-51系列單片機(jī)實(shí)用接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,1993
[3]馬忠梅,張凱,馬巖.單片機(jī)的C語(yǔ)言應(yīng)用程序設(shè)計(jì)[M].北京:北京航空航天大學(xué)出版社,2003
[4]胡輝.單片機(jī)原理及應(yīng)用設(shè)計(jì)—21世紀(jì)高等院校規(guī)劃教材[M].北京:水利水電出版社,2005
關(guān)鍵詞:出租車計(jì)價(jià); 自頂向下; VHDL; FPGA
中圖分類號(hào):
TN911.7-34
文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1004-373X(2012)05
-0179
-03
Design of taximeter based on FPGA
WANG Cui
(Department of Experimental Teaching, Yancheng Institute of Technology, Yancheng 224051, China)
Abstract:
A taximeter based on Quartus Ⅱ simulation software was designed by using FPGA chip cyclone Ⅱ EP2C8T144C8, which is of top-down design idea. The circuit of each module and the entire system were simulated. The simulation results prove that the taximeter system is of counting time, billing, metering and dynamic display function. To modify the VHDL language source code, it can complete more taximeter extended functions.
Keywords: taximeter; top-down; VHDL; FPGA
收稿日期:2011-09-13
0 引 言
隨著電子技術(shù)的發(fā)展,出租車計(jì)價(jià)器的設(shè)計(jì)也從傳統(tǒng)的全部由機(jī)械元器件組成的機(jī)械式設(shè)計(jì)到半電子式(即用電子線路代替部分機(jī)械器件的出租車計(jì)價(jià)器[1]),再?gòu)募呻娐肥降侥壳盎贔GPA芯片為核心的系統(tǒng)的設(shè)計(jì)共經(jīng)歷了四個(gè)階段,利用FPGA芯片,用較少的外部硬件和適當(dāng)?shù)能浖嗷ヅ浜?,可以通過(guò)軟件編程來(lái)完成更多的附加功能,設(shè)計(jì)比較靈活,并且還具有功耗小,體積小、低成本、安全可靠、使用方便[2]等優(yōu)點(diǎn)。因此,使用FPGA來(lái)設(shè)計(jì)出租車計(jì)價(jià)系統(tǒng)已受到人們的關(guān)注,也能更好地發(fā)揮其優(yōu)點(diǎn)。
本文以FPGA為設(shè)計(jì)載體,通過(guò)VHDL語(yǔ)言編程,采用Quartus Ⅱ 仿真軟件,設(shè)計(jì)了一種能動(dòng)態(tài)顯示出租車計(jì)時(shí)、計(jì)費(fèi)、計(jì)程的系統(tǒng),具有一定的實(shí)際應(yīng)用價(jià)值。
1 出租車計(jì)價(jià)系統(tǒng)的設(shè)計(jì)要求
1.1 實(shí)現(xiàn)計(jì)費(fèi)功能
車起步開始計(jì)費(fèi),首先顯示起步價(jià)(本次設(shè)計(jì)為8.0元),行程在3 km以內(nèi),按起步價(jià)收費(fèi);當(dāng)行駛超過(guò)3 km,1.6元/km,車暫時(shí)停車(如遇紅綠燈或中途暫時(shí)停車),當(dāng)?shù)却龝r(shí)間超過(guò)3 min,按1元/min收費(fèi)。
1.2 實(shí)現(xiàn)顯示功能
能動(dòng)態(tài)顯示出租車行駛的里程,范圍為00~99 km(考慮到出租車就在市區(qū)或近郊附近活動(dòng)),同時(shí)顯示等待時(shí)間,范圍為00~59 min,顯示總計(jì)價(jià)值,范圍為00~999.9元,計(jì)價(jià)分辨率為0.1元。
2 出租車計(jì)價(jià)系統(tǒng)的設(shè)計(jì)體系
圖1為整個(gè)系統(tǒng)的頂層框圖,根據(jù)層次化設(shè)計(jì)理論[3],將出租車自動(dòng)計(jì)價(jià)系統(tǒng)自頂向下可分為分頻模塊、控制模塊、計(jì)量模塊、譯碼和動(dòng)態(tài)掃描顯示模塊。
(1) 分頻模塊。
通過(guò)分頻[4]產(chǎn)生不同頻率的脈沖信號(hào)用來(lái)實(shí)現(xiàn)系統(tǒng)的計(jì)費(fèi),本次設(shè)計(jì)中通過(guò)對(duì)240 Hz的輸入脈沖進(jìn)行15次,24次和240次分頻,得到16 Hz,10 Hz和1 Hz的三種頻率,分別用于1.6元,1元和0.1元的計(jì)費(fèi)。
(2) 計(jì)量控制模塊。
計(jì)量控制模塊是出租車自動(dòng)計(jì)費(fèi)器系統(tǒng)的主體部分[5],該模塊主要完成出租車的計(jì)時(shí)、計(jì)價(jià)、計(jì)程功能。計(jì)時(shí)器的量程為59 min,滿量程自動(dòng)歸零。計(jì)程器的量程為99 km,滿量程自動(dòng)歸零。行程在3 km內(nèi),且等待累計(jì)時(shí)間在3 min內(nèi),起步價(jià)費(fèi)為8元;3 km外以1.6元/km計(jì)費(fèi),等待累計(jì)時(shí)間超過(guò)3 min按1元/min計(jì)費(fèi)。
(3) 譯碼顯示模塊。
該模塊經(jīng)過(guò)8選1數(shù)據(jù)選擇器將計(jì)費(fèi)數(shù)據(jù)(4位BCD碼)、計(jì)時(shí)數(shù)據(jù)(2位BCD碼)、計(jì)程數(shù)據(jù)(2位BCD碼)動(dòng)態(tài)顯示輸出。其中計(jì)費(fèi)數(shù)據(jù)最大顯示為999.9元;計(jì)時(shí)數(shù)據(jù)最大顯示為59 min;計(jì)程數(shù)據(jù)最大顯示為99 km。
3 出租車計(jì)價(jià)系統(tǒng)的實(shí)現(xiàn)
系統(tǒng)的頂層原理圖如圖2所示,出租車計(jì)價(jià)器系統(tǒng)由主體FPGA電路taxi模塊和動(dòng)態(tài)掃描顯示部分(8選1選擇器mux8_1模塊、模8計(jì)數(shù)器mo8模塊、七段數(shù)碼顯示譯碼器di_LED模塊、生成動(dòng)態(tài)掃描顯示片選信號(hào)的3-8譯碼器模塊74138)[6]組成。
3.1 系統(tǒng)各功能模塊
3.1.1 taxi模塊
Taxi模塊是系統(tǒng)中十分重要的模塊,模塊設(shè)計(jì)中,系統(tǒng)的輸入信號(hào)為clk_240(240 Hz)、計(jì)價(jià)開始信號(hào)start、等待信號(hào)stop、里程脈沖信號(hào)fin。系統(tǒng)的輸出信號(hào)有總費(fèi)用數(shù)cha3(百),cha2(拾),cha1(元),cha0(角),行駛距離信號(hào)為km1,km0,等待時(shí)間信號(hào)為m1,m0。
Taxi模塊的控制過(guò)程為:start作為計(jì)費(fèi)開始開關(guān),當(dāng)start為高電平時(shí),系統(tǒng)開始跟據(jù)輸入情況計(jì)數(shù),有乘客上車并開始行駛時(shí),fin脈沖到來(lái),進(jìn)行行駛里程計(jì)數(shù),這時(shí)的stop應(yīng)為0,中途若停車等待,就需把stop置為1,同時(shí)fin為0,進(jìn)行等待計(jì)費(fèi),當(dāng)乘客下車時(shí),直接將start置為0,系統(tǒng)停止工作。taxi模塊又可分為分頻(fenpin)、計(jì)量(jiliang)、kongzhi(控制)和計(jì)費(fèi)(jifei)四個(gè)子模塊[3,7],taxi模塊的內(nèi)部結(jié)構(gòu)如圖3所示。
圖3 taxi模塊的內(nèi)部結(jié)構(gòu)圖
Fenpin模塊是將輸入端clk_240(240 Hz)的時(shí)鐘信號(hào)進(jìn)行分頻,分別得到f_16(16 Hz),f_10(10 Hz),f_1(1 Hz)的信號(hào),用于計(jì)量時(shí)的1.6元,1元,0.1元。
Jiliang模塊用來(lái)計(jì)時(shí)和計(jì)程,fin為汽車的里程脈沖信號(hào),當(dāng) fin為高電平時(shí),以記錄的f_1的脈沖個(gè)數(shù)作為行駛的公里里程數(shù),start是汽車計(jì)量開始信號(hào),stop為等待信號(hào)。f_1是計(jì)量驅(qū)動(dòng)信號(hào),當(dāng)f_1的脈沖到來(lái),如果fin=1,記錄f_1的個(gè)數(shù)(即行駛公里數(shù)),當(dāng)行駛超過(guò)3 km,ent0輸出為1。當(dāng)stop為高電平時(shí),記錄f_1的脈沖個(gè)數(shù),60個(gè)脈沖為1 min,當(dāng)超過(guò)3 min時(shí),ent1輸出為1。仿真波形如圖4所示。
Kongzhi模塊主要根據(jù)jiliang模塊的en1和en0的不同輸出信號(hào)選擇不同的輸出頻率供jifei模塊計(jì)費(fèi),en1=1時(shí)f=10 Hz,en0=1時(shí)f=16 Hz。
Jifei模塊實(shí)際就是一個(gè)四位十進(jìn)制加法器,仿真圖形如圖5所示,在taxi模塊中,它根據(jù)不同的輸入脈沖頻率對(duì)脈沖個(gè)數(shù)進(jìn)行計(jì)數(shù)。jiliang模塊每計(jì)一次數(shù),jifei模塊就實(shí)現(xiàn)16次或10次脈沖計(jì)數(shù),即實(shí)現(xiàn)超時(shí)時(shí)的1元/min,超里程時(shí)的1.6元/km的收費(fèi)。
對(duì)整個(gè)taxi模塊進(jìn)行仿真,結(jié)果如圖6所示,由圖中可知,當(dāng)stop為高電平時(shí),汽車行駛了km1km0=35 km,計(jì)費(fèi)cha3cha2cha1cha0為0592,即59.2元,與8+(35-3)×1.6=59.2元一致,圖中當(dāng)?shù)却^(guò)3 min時(shí),價(jià)格按1元/min計(jì)費(fèi),仿真結(jié)果正確。
3.1.2 動(dòng)態(tài)掃描顯示部分
此模塊包含mo8計(jì)數(shù)器、mux8_1(8選1選擇器)、di_led七段數(shù)碼顯示譯碼器3個(gè)子模塊。
mo8計(jì)數(shù)器:輸入信號(hào)clk為系統(tǒng)輸入的240 Hz基準(zhǔn)時(shí)鐘,輸出a為模8的二進(jìn)制碼[8]。
mux8_1模塊是根據(jù)輸入信號(hào)c[2..0]的地址碼000至111分別對(duì)應(yīng)了cha3,cha2,ch1,ch0,km1,km0,min1,min0八個(gè)四位BCD碼,dp為小數(shù)點(diǎn)指示信號(hào),在計(jì)費(fèi)的第二位數(shù)字上帶有小數(shù)點(diǎn),仿真波形如圖7所示。
di_led數(shù)碼顯示譯碼模塊,將輸入信號(hào)d[3..0]轉(zhuǎn)換為q[6..0],即g,f,e,d,c,b,a七段譯碼輸出(高電平有效)[9],3F對(duì)應(yīng)為0,仿真波形圖如圖8所示。
由于采用動(dòng)態(tài)掃描,主要是根據(jù)人視覺暫留現(xiàn)象,一般影像在人眼中保留0.1~0.5 s左右,74LS138的輸出碼依次選通8個(gè)數(shù)碼管。只要頻率夠高,依次點(diǎn)亮8個(gè)數(shù)碼管時(shí),給人視覺是同時(shí)點(diǎn)亮[10]。
3.2 總體電路的仿真結(jié)果
通過(guò)對(duì)整個(gè)設(shè)計(jì)系統(tǒng)的仿真分析,結(jié)果如圖9所示,輸出依次是3F 7D 27 .5B 66 3F 3F 3F, 其中總價(jià)格為3F7D27.5B(即67.2元), 里程數(shù)為663F(即40 km),等待時(shí)間為3F3F(即0 min),8+(40-3)×1.6=67.2元,仿真結(jié)果正確。
4 結(jié) 語(yǔ)
通過(guò)仿真驗(yàn)證表明,本文所設(shè)計(jì)的出租車計(jì)價(jià)系統(tǒng)能動(dòng)態(tài)顯示行駛的里程、等待時(shí)間和計(jì)費(fèi)數(shù)目等,符合預(yù)定的設(shè)計(jì)功能要求。但設(shè)計(jì)中對(duì)出租車?yán)锍逃?jì)數(shù)精度不高,若要提高精度,需根據(jù)設(shè)計(jì)要求設(shè)置取樣里程的脈沖,在計(jì)量(jiliang)模塊的輸入頻率中要做相應(yīng)的修改,當(dāng)出租車計(jì)費(fèi)標(biāo)準(zhǔn)發(fā)生變化時(shí),也可以通過(guò)修改VHDL源程序達(dá)到要求,另外,還可以擴(kuò)展語(yǔ)音播報(bào)或票據(jù)打印等附加功能,此系統(tǒng)的設(shè)計(jì)體現(xiàn)了FPGA設(shè)計(jì)的自頂向下的設(shè)計(jì)思想,基于FPGA的設(shè)計(jì)靈活性高、功耗低、集成度高,具有廣闊的市場(chǎng)前景。
參 考 文 獻(xiàn)
[1]陳偉宏.基于Proteus的多功能出租車計(jì)價(jià)器設(shè)計(jì)[J].重慶工學(xué)院學(xué)報(bào):自然科學(xué)版,2009,23(6):83-86.
[2]潘松,黃繼業(yè).EDA技術(shù)實(shí)用教程[M].北京:科學(xué)出版社,2002.
[3]徐志軍,徐光輝.CPLD/FPGA的開發(fā)與應(yīng)用[M].北京:電子工業(yè)出版社,2002.
[4]任愛鋒,初秀琴.基于FPGA的嵌入式系統(tǒng)設(shè)計(jì)[M].西安:西安電子科技大學(xué)出版社,2004.
[5]王誠(chéng),吳繼華.Altera FPGA/CPLD設(shè)計(jì)(基礎(chǔ)篇)[M].北京:人民郵電出版社,2005.
[6]閻石.數(shù)字電子技術(shù)基礎(chǔ)[M].4版.北京:高等教育出版社,1998.
[7]雷伏容.VHDL電路設(shè)計(jì)[M].北京:清華大學(xué)出版社,2006.
[8]王振紅.VHDL數(shù)字電路設(shè)計(jì)與應(yīng)用實(shí)踐教程[M].北京:機(jī)械工業(yè)出版社,2003.
[9]劉昌華.數(shù)字邏輯EDA設(shè)計(jì)與實(shí)踐[M].北京:國(guó)防工業(yè)出版社,2006.
[10]蔡明生.電子設(shè)計(jì)[M].北京:高等教育出版社,2004.
【關(guān)鍵詞】單片機(jī);計(jì)費(fèi)系統(tǒng);霍爾傳感器
一、引言
汽車計(jì)價(jià)器是出租車行業(yè)發(fā)展的重要標(biāo)志。它關(guān)系著交易雙方的利益。具有良好性能的計(jì)價(jià)器無(wú)論是對(duì)廣大汽車司機(jī)朋友還是乘客來(lái)說(shuō)都是很必要的。隨著汽車行業(yè)的日漸發(fā)展,汽車計(jì)價(jià)器的功能已從剛開始的只顯示路程發(fā)展到了能夠自主計(jì)費(fèi),以及打印發(fā)票和語(yǔ)音提示、按時(shí)間自主變動(dòng)單價(jià)等功能。現(xiàn)在各大城市出租車行業(yè)都已普及自動(dòng)計(jì)價(jià)器,所以計(jì)價(jià)器技術(shù)的發(fā)展已成定局。而部分小城市尚未普及,但隨著城市建設(shè)日益加快,汽車行業(yè)也將加速發(fā)展,計(jì)價(jià)器的普及也是必然的,所以汽車計(jì)價(jià)器的市場(chǎng)還是十分有潛力的。
二、硬件設(shè)計(jì)方案
采用傳統(tǒng)的模擬電路和數(shù)字電路設(shè)計(jì)的計(jì)價(jià)器,其整體電路規(guī)模較大,故障率高,難調(diào)試,功能不易實(shí)現(xiàn)。本次設(shè)計(jì)我們利用單片機(jī)AT89C2051芯片作為設(shè)計(jì)的核心,利用霍爾傳感器測(cè)距,實(shí)現(xiàn)對(duì)汽車計(jì)價(jià)統(tǒng)計(jì),采用AT24C02 實(shí)現(xiàn)在系統(tǒng)掉電的時(shí)候保存單價(jià)和系統(tǒng)時(shí)間等信息,顯示采用6位LED數(shù)碼管,分屏顯示單價(jià)、路程、總金額以及時(shí)間。本系統(tǒng)具有功能強(qiáng)大、電路簡(jiǎn)單、便于維護(hù)等特點(diǎn)??傮w設(shè)計(jì)框圖如圖2.1所示。
1.單片機(jī)
AT89C2051是美國(guó)ATMEL公司生產(chǎn)的低電壓、高性能CMOS 8位單片機(jī),只有20引腳。片內(nèi)含有2K字節(jié)可反復(fù)擦寫的只讀程序存儲(chǔ)器和128字節(jié)的隨機(jī)數(shù)據(jù)存儲(chǔ)器,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),內(nèi)置通用8位中央處理器和Flash存儲(chǔ)單元。
該系統(tǒng)中AT89C2051作為總控芯片,主要具有對(duì)測(cè)量結(jié)果進(jìn)行運(yùn)算處理、控制顯示及保證系統(tǒng)正常工作等功能。
2.里程計(jì)算設(shè)計(jì)
本次設(shè)計(jì)里程計(jì)算采用霍爾傳感器A44E,里程計(jì)算是通過(guò)安裝在車輪上的霍爾傳感器A44E檢測(cè)到的信號(hào),送到單片機(jī),經(jīng)處理計(jì)算,送給顯示單元的。其原理如圖2.2所示。
我們選擇了P3.2口作為信號(hào)的輸入端,內(nèi)部采用外部中斷0(這樣可以減少程序設(shè)計(jì)的麻煩),車輪每轉(zhuǎn)一圈(我們?cè)O(shè)車輪的周長(zhǎng)是1 米),霍爾開關(guān)就檢測(cè)并輸出信號(hào),引起單片機(jī)的中斷,對(duì)脈沖計(jì)數(shù),當(dāng)計(jì)數(shù)達(dá)到1000 次時(shí),也就是1公里,單片機(jī)就控制將金額自動(dòng)的加增加,其計(jì)算公式:
當(dāng)前單價(jià)×公里數(shù)=金額。
圖2.2 傳感器測(cè)距示意圖
3.顯示單元設(shè)計(jì)
本設(shè)計(jì)具有單價(jià)、路程、金額顯示輸出,加上我們另外擴(kuò)展了時(shí)鐘顯示(包含時(shí)分秒的顯示),采用LCD液晶屏顯示,在距離屏幕較遠(yuǎn)處無(wú)法看清數(shù)據(jù),不能滿足要求,而且在白天其對(duì)比度也不能夠滿足要求,因此我們采用6位LED數(shù)碼管顯示方式。
數(shù)據(jù)的分屏的顯示是通過(guò)按鍵S1來(lái)實(shí)現(xiàn)切換的,在汽車不走的時(shí)候,按下S1,可以實(shí)現(xiàn)數(shù)據(jù)的分屏顯示,車在行走的時(shí)候只有總金額和單價(jià)顯示屏在顯示,當(dāng)?shù)竭_(dá)目的地的時(shí)候,客戶要求查看總的里程的時(shí)候,就可以按下S1 切換到里程和單價(jià)顯示屏,供客戶查詢。
4.AT24C02掉電存儲(chǔ)單元的設(shè)計(jì)
掉電存儲(chǔ)單元的作用是在電源斷開的時(shí)候,存儲(chǔ)當(dāng)前設(shè)定的單價(jià)信息。AT24C02是ATMEL 公司的2KB字節(jié)的電可擦除存儲(chǔ)芯片,采用兩線串行的總線和單片機(jī)通訊,電壓最低可以到2.5V,額定電流為1mA,靜態(tài)電流10Ua(5.5V),芯片內(nèi)的資料可以在斷電的情況下保存40年以上,而且采用8腳的DIP封裝,使用方便。
其電路如圖2.3所示。
圖中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à)等信息,讀到緩存單元中,供主程序使用。
5.按鍵設(shè)計(jì)
(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é)束后,可以通過(guò)按下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í)間的顯示。
三、軟件設(shè)計(jì)
本系統(tǒng)的軟件設(shè)計(jì)主要可分為主程序模塊、定時(shí)計(jì)數(shù)中斷程序、里程計(jì)數(shù)中斷服務(wù)程序、中途等待中斷服務(wù)程序、顯示子程序服務(wù)程序、鍵盤服務(wù)程序六大模塊。
主程序模塊完成對(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à)等不同的操作。