基于51單片機(jī)的簡易出租車計(jì)價器設(shè)計(jì)_第1頁
基于51單片機(jī)的簡易出租車計(jì)價器設(shè)計(jì)_第2頁
基于51單片機(jī)的簡易出租車計(jì)價器設(shè)計(jì)_第3頁
基于51單片機(jī)的簡易出租車計(jì)價器設(shè)計(jì)_第4頁
基于51單片機(jī)的簡易出租車計(jì)價器設(shè)計(jì)_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、單片機(jī)課程設(shè)計(jì)摘要隨著時代的進(jìn)步和發(fā)展,單片機(jī)技術(shù)已經(jīng)普及到我們生活、工作、科研、各個領(lǐng)域,已經(jīng)成為一種比較成熟的技術(shù), 本文主要介紹了一個基于89C51單片機(jī)的多功能出租車計(jì)價器,闡述硬件設(shè)計(jì)過程中關(guān)鍵技術(shù)的處理。結(jié)果表明該計(jì)價器具有集計(jì)程、計(jì)時、計(jì)費(fèi)、存儲等多種計(jì)量功能,并且具有打印和顯示等多種功能。本課題主要研究出租車計(jì)價器的硬件設(shè)計(jì)。論文詳細(xì)闡述了該計(jì)價器的總體設(shè)計(jì):時鐘電路模塊、掉電存儲模塊、里程檢測模塊、LED顯示模塊、鍵盤模塊等。目錄引言31. 設(shè)計(jì)背景41.1課題背景41.2設(shè)計(jì)內(nèi)容42出租車計(jì)價器系統(tǒng)簡介43系統(tǒng)硬件設(shè)計(jì)53.1主控制器選擇53.2LED顯示模塊63.3掉電保

2、護(hù)模塊73.4里程采集模塊83.5按鍵輸入模塊93.6晶振系統(tǒng)103.7復(fù)位電路103.8時鐘模塊124軟件設(shè)計(jì)簡介134.1匯編語言簡介134.2程序設(shè)計(jì)145電路仿真175.1Proteus軟件介紹175.2出租車計(jì)價器proteus仿真185總結(jié)19參考文獻(xiàn)19附錄:源程序代碼19引言出租車行業(yè)在我國是八十年代初興起的一項(xiàng)新興行業(yè),隨著出租車行業(yè)的發(fā)展,出租車已經(jīng)是城市交通的重要組成部分,出租車計(jì)費(fèi)器是乘客與司機(jī)雙方的交易準(zhǔn)則,它是出租車行業(yè)發(fā)展的重要標(biāo)志,是出租車中最重要的工具。它關(guān)系著交易雙方的利益。具有良好性能的計(jì)費(fèi)器無論是對廣大出租車司機(jī)朋友還是乘客來說都是很必要的。因此,汽車計(jì)

3、價器的研究也是十分有一個應(yīng)用價值的。要將出租車計(jì)價系統(tǒng)產(chǎn)品化,應(yīng)該根據(jù)客戶不同的需求進(jìn)行不同的設(shè)計(jì),應(yīng)該在程序中增加一些可以人為改變的參數(shù),以便客戶根據(jù)不同的需要隨時調(diào)節(jié)單價以及計(jì)價方式。因此,研究出租車計(jì)價器及擴(kuò)大其應(yīng)用,有著非?,F(xiàn)實(shí)的意義。多年來國內(nèi)普遍使用的計(jì)價器只具備單一的計(jì)量功能。目前全世界的計(jì)價器中有90%為臺灣所生產(chǎn)?,F(xiàn)今我國生產(chǎn)計(jì)價器的企業(yè)有上百家,主要是集中在北京,上海,沈陽和廣州等地。我國第一家生產(chǎn)計(jì)價器的是重慶市起重機(jī)廠,最早的計(jì)價器全部采用機(jī)械齒輪構(gòu),只能完成簡單的計(jì)程功能,可以說,早期的計(jì)價器就是個里程表。隨著科學(xué)技術(shù)的發(fā)展,產(chǎn)生了第二代計(jì)價器。它采用了手搖計(jì)算機(jī)與機(jī)

4、械結(jié)構(gòu)相結(jié)合的方式,實(shí)現(xiàn)了半機(jī)械半電子化。此時它在計(jì)程的同時還可完成計(jì)價的工作。大規(guī)模集成電路的發(fā)展又產(chǎn)生了第三代計(jì)價器,也就是全電子化的計(jì)價器。它的功能也在不斷完善。出租汽車計(jì)價器是一種專用的計(jì)量儀器,它安裝在出租汽車上,能連續(xù)累加,并指示出行程中任一時刻乘客應(yīng)付費(fèi)用的總數(shù),其金額值是計(jì)程和計(jì)時時間的函數(shù)。出租車計(jì)價器在最初使用時具備的主要功能是根據(jù)行駛里程計(jì)價,要求精度高,可靠性好。隨著電子技術(shù)的發(fā)展以及對計(jì)價器的不斷改進(jìn)和完善,便產(chǎn)生了諸多的附加功能。例如:(1)LED顯示功能,數(shù)碼管的使用讓計(jì)價器實(shí)現(xiàn)多屏顯示的功能,可同時顯示各項(xiàng)營運(yùn)數(shù)據(jù),使乘客一目了然;(2)永久時鐘功能,在非營運(yùn)狀

5、態(tài)下,日歷時鐘芯片的使用使計(jì)價器可以顯示永久時鐘;(3)存儲功能,可存儲多項(xiàng)營運(yùn)數(shù)據(jù),便于查詢。新型數(shù)據(jù)存儲器的應(yīng)用使得計(jì)價器的營運(yùn)數(shù)據(jù)在掉電情況下還可以保存10年。1. 設(shè)計(jì)背景1.1課題背景在出租車是城市交通的重要組成部分,行業(yè)健康和發(fā)展也獲得越來越多的關(guān)注。汽車計(jì)價器是乘客與司機(jī)雙方的交易準(zhǔn)則,它是出租車行業(yè)發(fā)展的重要標(biāo)志,是出租車中最重要的工具。它關(guān)系著交易雙方的利益。具有良好性能的計(jì)價器無論是對廣大出租車司機(jī)朋友還是乘客來說都是很必要的。因此,汽車計(jì)價器的研究也是十分有一個應(yīng)用價值的。1.2設(shè)計(jì)內(nèi)容本設(shè)計(jì)主要是介紹了單片機(jī)控制下的出租車計(jì)價器設(shè)計(jì),詳細(xì)介紹了其硬件和軟件設(shè)計(jì),并對其各

6、功能模塊做了詳細(xì)介紹,其主要功能和指標(biāo)如下:(1)啟動/清除數(shù)據(jù)(2)鍵盤輸入(3)掉電保護(hù)(4)LED顯示(5)里程采集2出租車計(jì)價器系統(tǒng)簡介設(shè)計(jì)的整體電路框圖如圖所示,整個系統(tǒng)由單片機(jī)AT89C51 控制電路,配合六個數(shù)碼管組成的顯示模塊;以A44E霍爾傳感器測距,實(shí)現(xiàn)對出租車的多功能的計(jì)價設(shè)計(jì);采用掉電存儲單元AT24C02來實(shí)現(xiàn)在系統(tǒng)掉電的時候保存單價和系統(tǒng)時間等信息;按鍵鍵盤電路、LED驅(qū)動顯示電路及電源電路組成。89C51單片機(jī)啟動/清除數(shù)據(jù)開關(guān)鍵盤輸入模塊AT24C02掉電保護(hù)模塊A44E霍爾傳感里程采集模塊LED顯示模塊時間起步價里程總金額單片機(jī)采集并判斷空車燈信號及路程檢測傳

7、感器信號,當(dāng)出租車啟動時,單片機(jī)檢測到霍爾傳感器的脈沖信號并進(jìn)行里程計(jì)算。當(dāng)無乘客時,單片機(jī)調(diào)用實(shí)時時間芯片8563 程序和8255串口顯示驅(qū)動程序,用4只LED進(jìn)行時鐘顯示;當(dāng)空車燈掰下乘客上車時,通過8563 獲取時間信息分辨白天/ 晚上,然后調(diào)用AT24C02 程序獲取白天/ 晚上的單價及起始價,便開始計(jì)價并顯示時間、里程和金額等信息;當(dāng)空車燈打上乘客下車時,打印好票據(jù),單片機(jī)將營運(yùn)數(shù)據(jù)信息存儲到AT24C02 中,等待出租車再次啟動后單次金額與里程等信息清零復(fù)位, 就此完成一次計(jì)價。3系統(tǒng)硬件設(shè)計(jì)3.1主控制器選擇對于單片機(jī)的選擇,可以考慮使用8031與8051系列,由于8031沒有內(nèi)

8、部RAM,系統(tǒng)又需要大量內(nèi)存存儲數(shù)據(jù),因而不適用。AT89C51 是美國 ATMEL 公司生產(chǎn)的低功耗,高性能 CMOS8 位單片機(jī),片內(nèi)含 4kbytes 的可編程的 Flash 只讀程序存儲器,兼容標(biāo)準(zhǔn) 8051 指令系統(tǒng)及引腳。它集 Flash 程序存儲器既可在線編程(ISP),也可用傳統(tǒng)方法進(jìn)行編程,所以低價位 AT89C51單片機(jī)可為提供許多高性價比的應(yīng)用場合,可靈活應(yīng)用于各種控制領(lǐng)域,對于簡單的測溫系統(tǒng)已經(jīng)足夠。單片機(jī)AT89C51 具有低電壓供電和體積小等特點(diǎn),四個端口只需要兩個口就能滿足電路系統(tǒng)的設(shè)計(jì)需要,很適合便攜手持式產(chǎn)品的設(shè)計(jì)使用系統(tǒng)可用二節(jié)電池供電。圖3-1 AT89C

9、51引腳圖3.2LED顯示模塊本設(shè)計(jì)是用六個七段數(shù)碼管動態(tài)掃描來實(shí)現(xiàn)的時鐘與計(jì)價的顯示。圖3-2LED管腳配置圖LED顯示塊是由發(fā)光二極管顯示字段的顯示器件。在單片機(jī)應(yīng)用系統(tǒng)中通常使用的是七段LED。這種顯示塊有共陰極和共陽極兩種,如上圖所示,共陰極LED顯示塊的發(fā)光二極管陰極共地,如圖中所示,當(dāng)某個發(fā)光二極管的陽極為高電平時,發(fā)光二極管點(diǎn)亮。共陽極LED顯示塊的發(fā)光二極管陽極并接,當(dāng)某個二極管的陰極為低電平時,該二極管點(diǎn)亮。通常的七段LED顯示塊中有八個發(fā)光二極管,故也稱為八段顯示器。其中七個二極管構(gòu)成七筆字型“8”,一個發(fā)光二極管構(gòu)成小數(shù)點(diǎn)。控制不同組合的二極管導(dǎo)通,就能顯示各種字符。設(shè)8

10、位控制器按低到高的次序依次控制LED顯示塊的af和小數(shù)點(diǎn)dp,我們稱控制器輸出的控制LED顯示塊顯示字符的 8位字節(jié)數(shù)據(jù)為段選碼。共陽極與共陰極的段選碼互為反碼。在單片機(jī)應(yīng)用系統(tǒng)中使用LED還可構(gòu)成任意位的LED顯示器。 如 8位LED顯示器有8根位選線和88根段選線。每根位選線控制該位的LED的8根段選線控制該位LED顯示什么字符。段選線控制顯示字符的字型,而位選線控制顯示位的亮、暗。顯然,多位LED控制線占用太多。在多位LED顯示時,為了簡化電路,降低成本,將所有位LED的段選線并接在一起,在某一刻時,將要顯示的字符段碼同時送到每一個顯示器的各段,但是只讓這一位LED顯示。下一時刻又送下一

11、位LED要顯示字符的段碼,并只讓下一位LED顯示.如此輪流,使每位顯示該為的字符,這樣不斷的循環(huán)送出響應(yīng)的段選碼位選碼,就可以獲得視覺穩(wěn)定的顯示狀態(tài)。用單片機(jī)驅(qū)動LED數(shù)碼管有很多方法,按顯示方式分,有靜態(tài)顯示和動態(tài)(掃描)顯示,按譯碼方式可分硬件譯碼和軟件譯碼之分。靜態(tài)顯示就是顯示驅(qū)動電路具有輸出鎖存功能,單片機(jī)將所要顯示的數(shù)據(jù)送出后就不再管,直到下一次顯示數(shù)據(jù)需要更新時再傳送一次新數(shù)據(jù),顯示數(shù)據(jù)穩(wěn)定,占用很少的CPU時間。動態(tài)顯示需要CPU時刻對顯示器件進(jìn)行數(shù)據(jù)刷新,顯示數(shù)據(jù)有閃爍感,占用的CPU時間多。這兩種顯示方式各有利弊;靜態(tài)顯示雖然數(shù)據(jù)穩(wěn)定,占用很少的CPU時間,但每個顯示單元都需

12、要單獨(dú)的顯示驅(qū)動電路,使用的硬件較多;動態(tài)顯示雖然有閃爍感,占用的CPU時間多,但使用的硬件少,能節(jié)省線路板空間,更重要的是能節(jié)省成本。 硬件譯碼就是顯示的段碼完全由硬件完成,CPU只要送出標(biāo)準(zhǔn)的BCD碼即可,硬件接線有一定標(biāo)準(zhǔn)。軟件譯碼是用軟件來完成硬件的功能,硬件簡單,接線靈活,顯示段碼完全由軟件來處理,是目前常用的顯示驅(qū)動方式。3.3掉電保護(hù)模塊利用I2C總線原理接線,采用掉電保護(hù)單元AT24C02。數(shù)據(jù)存儲部分的作用是在電源斷開時,存儲當(dāng)前設(shè)定的單價信息。掉電儲存電路原理圖:圖中 R8、R10是上拉電阻,其作用是減少AT24C02的靜態(tài)功耗,由于 AT24C02的數(shù)據(jù)線和地址線是復(fù)用的

13、,采用串口的方式傳送數(shù)據(jù),所以只用兩根線 SCL(移位脈沖)和SDA(數(shù)據(jù)/地址)與單片機(jī)傳送數(shù)據(jù)。每當(dāng)設(shè)定一次單價,系統(tǒng)就自動調(diào)用存儲程序,將單價信息保存在芯片內(nèi);當(dāng)系統(tǒng)重新上電的時候,自動調(diào)用讀存儲器程序,將存儲器內(nèi)的單價等信息,讀到緩存單元中,供主程序使用。存儲程序,將數(shù)據(jù)信息保存在芯片內(nèi);當(dāng)系統(tǒng)重新上電時,自動調(diào)用讀存儲器程序,將存儲器內(nèi)的數(shù)據(jù)信息,讀到緩存單元中,供主程序使用,保存在AT24C02中的數(shù)據(jù)是不能隨意進(jìn)行改動的,此外出租車營運(yùn)過程中的一些營運(yùn)數(shù)據(jù),如:單次出租的營運(yùn)額和營運(yùn)里程、一段時間內(nèi)的營運(yùn)總額和總路程等,也存儲在AT24C02中,以便出租車公司及司機(jī)查詢,使出租車

14、司機(jī)更方便的管理營運(yùn)數(shù)據(jù),出租車行業(yè)得到更有效的管理。3.4里程采集模塊根據(jù)在霍爾電勢發(fā)生器的兩端加上電壓VCC后,根據(jù)物理學(xué)中的霍耳效應(yīng)原理,當(dāng)霍耳片處在磁場中時,霍爾傳感器A44E的輸出端輸出低電平。當(dāng)車輪轉(zhuǎn)動一圈時小磁鐵提供一個磁場,則霍爾傳感器A44E輸出一次低電平完成一次數(shù)據(jù)采集。我們選擇了P3.2 口作為信號的輸入端,內(nèi)部采用外部中斷0,車輪每轉(zhuǎn)一圈,霍爾開關(guān)就檢測并輸出信號,引起單片機(jī)的中斷,對脈沖計(jì)數(shù)。通過計(jì)算將脈沖增加體現(xiàn)在金額和里程上。本設(shè)計(jì)中用IPULSE來代替霍爾傳感器。3.5按鍵輸入模塊矩陣式鍵盤適用于按鍵數(shù)量較多的場合,它由行線和列線組成,按鍵位于行、列的交叉點(diǎn)上。

15、如一個3*3的行、列結(jié)構(gòu)可以構(gòu)成一個有9個按鍵的鍵盤。在按鍵數(shù)量較多的場合,矩陣鍵盤與獨(dú)立式鍵盤相比,要節(jié)省很多I/O口。矩陣式鍵盤的工作原理:按鍵設(shè)置在行、列線交點(diǎn)上,行、列分別連接到按鍵開關(guān)的兩端。行線通過上拉電阻接到+5V上。平時無按鍵動作時,行線處于高電平狀態(tài),而當(dāng)有按鍵按下時,行線電平狀態(tài)將由與此行線相連的列線電平?jīng)Q定。列線如果此時電平為低,則行線電平為低;列線電平如果為高,則行線電平亦為高。這一點(diǎn)是識別矩陣式鍵盤是否被按下的關(guān)鍵。由于矩陣鍵盤中行、列線為多鍵共用,名按鍵均影響該鍵所在行和列的電平。因此各按鍵彼此相互發(fā)生影響,所以必須將行、列信號配合起來并做適當(dāng)?shù)奶幚?,才能確定閉合鍵

16、的位置。本設(shè)計(jì)采用了以8255作4*4鍵盤的接口。鍵盤分為行線和列線,本鍵盤共有4條行線4條列線。在行線和列線的交點(diǎn)處有一個鍵,由于行線和列線分別與鍵的不同端相連,平時鍵處于斷開狀態(tài),所以行線和列線互不相通。接口時,行線一端接輸入口,另一端懸空;而列線一端經(jīng)電阻接+5V電源,另一端接輸入口。由于列線通過電阻與+5V相連,所以列線的狀態(tài)始終為高電平。3.6晶振系統(tǒng)本設(shè)計(jì)采用PCF8563作為芯片。它在系統(tǒng)中的作用是設(shè)定,例如:可以設(shè)定時、分、秒。計(jì)價器在出租車空車行駛時需要顯示實(shí)時時鐘,因?yàn)樗臅r鐘是作為白天/ 晚上單價自動轉(zhuǎn)換的一個基準(zhǔn),而且計(jì)價器的時鐘顯示能為司機(jī)和乘客提供方便,所以選擇一個

17、好的時鐘芯片對計(jì)價器很重要。時鐘可提供秒、分、時,通過設(shè)置8563的控制/狀態(tài)寄存器選擇,時鐘方式經(jīng)過初始校準(zhǔn)后即可工作使用。PCF8563是PHILIPS公司推出的一款工業(yè)級內(nèi)含I2C總線接口功能的具有極低功耗的多功能時鐘/日歷芯片I2C總線通訊方式不但使外圍電路及其簡潔而且也增加了芯片的可靠性同時每次讀寫數(shù)據(jù)后內(nèi)嵌的字地址寄存器會自動產(chǎn)生增量當(dāng)然作為時鐘芯片。 PCF8563是一款性價比極高的時鐘芯片它已被廣泛用于電表水表氣表電話傳真機(jī)便攜式儀器以及電池供電的儀器儀表等產(chǎn)品領(lǐng)域。圖3-3晶振電路3.7復(fù)位電路單片機(jī)在啟動運(yùn)行時都需要進(jìn)行復(fù)位操作,以便使CPU和系統(tǒng)中的其它部件都處于某一確定

18、的初始狀態(tài),并從這個狀態(tài)開始工作。AT89C51單片機(jī)有一個引腳RST,它是施密特觸發(fā)器的輸入端,其輸出端接復(fù)位電路的輸入。復(fù)位信號是高電平有效,其有效時間應(yīng)持續(xù)24個振蕩脈沖周期(即二個機(jī)器周期)以上,若使用頻率為6MHz的晶振,則復(fù)位信號持續(xù)時間應(yīng)超過4s才能完成復(fù)位操作。復(fù)位之后,使ALE、PSEN、P0、P1、P2口的輸出均為高電平(即為輸入狀態(tài)),復(fù)位后,內(nèi)部寄存器的狀態(tài)如表3、1所示。RST變?yōu)榈碗娖胶?,便又退出?fù)位狀態(tài)。CPU從初始化工作,由狀態(tài)表可知,復(fù)位后:程序寄存器為0000H開始執(zhí)行程序,內(nèi)部RAM不受復(fù)位影響。復(fù)位有電復(fù)位和按鍵手動復(fù)位兩種。按鍵手動復(fù)有電平方式和脈沖方

19、式兩種。本次設(shè)計(jì)中,為方便人的操作,采用按鍵手動復(fù)位的按鍵電平復(fù)位。其復(fù)位電路如下表示:PC0000HTCON00HACC00HTL000HPSW00HTH000HSP07HTL100HDPTR0000HTH100HP0-P30FFHSCON00HIPXX000000HSBUF00HIE0X000000HPCON不定TMOD00H0XXX0000B圖3-4復(fù)位電路3.8時鐘模塊時鐘電路產(chǎn)生的振蕩脈沖經(jīng)過觸發(fā)器進(jìn)行二分頻之后,才能為單片機(jī)的時鐘脈沖信號。一般電容C3和C4取30uF左右。晶體振蕩頻率范圍是1.2MHz12MHz。晶體振蕩頻率高,則系統(tǒng)的時鐘頻率也高,單片機(jī)運(yùn)行也就快,但反過來運(yùn)行

20、速度快對存儲器的速度要求就高,對印刷電路板的工藝要求也高(線間寄生電容要?。?。在本次設(shè)計(jì)中,我們選取晶振頻率為6MHz,C1和C2的值均為30uF。圖3-5時鐘電路4軟件設(shè)計(jì)簡介4.1匯編語言簡介匯編語言是直接面向處理器(Processor)的程序設(shè)計(jì)語言。處理器是在指令的控制下工作的,處理器可以識別的每一條指令稱為機(jī)器指令。每一種處理器都有自己可以識別的一整套指令,稱為指令集。處理器執(zhí)行指令時,根據(jù)不同的指令采取不同的動作,完成不同的功能,既可以改變自己內(nèi)部的工作狀態(tài),也能控制其它外圍電路的工作狀態(tài)。人類最容易接受自己每天都使用的自然語言。為了使機(jī)器指令的書寫和理解變得容易,需要借鑒自然語言

21、的優(yōu)點(diǎn),為此就引入了匯編語言。匯編語言使用符號來代表不同的機(jī)器指令,而這些符號非常接近于自然語言的要素?;旧?,匯編語言里的每一條指令,都對應(yīng)著處理器的一條機(jī)器指令。匯編語言包括兩個部分:語法部分和編譯器。語法部分提供與機(jī)器指令相對應(yīng)的助記符,方便指令的書寫和閱讀。當(dāng)然,匯編語言的符號可以被人類接受,但不能被處理器識別,為此,還要由匯編語言編譯器將這些助記符轉(zhuǎn)換成機(jī)器指令。根據(jù)應(yīng)用領(lǐng)域的不同,處理器的種類繁多,比如用于工業(yè)控制和嵌入式計(jì)算的Z80、MC68000和MCS-51、廣泛應(yīng)用于個人計(jì)算機(jī)的INTELx86系列,以及基于ARM體系結(jié)構(gòu)的處理器,包括蘋果公司在內(nèi)的大企業(yè)都是ARM的客戶。

22、事實(shí)上,今天的ARM是最受歡迎的32位嵌入式處理器,而且,今天的ARM處理器比INTEL奔騰系列賣得還多,基本上是3:1的比例。不同的處理器有不同的指令集。正是因?yàn)檫@個原因,每一種處理器都會有自己專屬的匯編語言語法規(guī)則和編譯器。即使是同一種類型的處理器,也可能擁有不同的匯編語言編譯器。一個明顯的例子是INTEL x86系列的處理器,圍繞它就開發(fā)出好多種編譯器來,如MASM、NASM、FASM、TASM和AT&T等。而且,這每一種編譯器,都使用不同的語法。4.2程序設(shè)計(jì)計(jì)價部分原理程序如下:起步價10元,3公里內(nèi)10元,超出3公里部分,每公里1.6元,車暫停時,2分鐘內(nèi)不加價,超出2分鐘

23、部分,每分鐘2.5元。feipin:process(clk_240,start)begin if clk_240'event and clk_240='1' then if start='0' then q_15<=0;q_16<=0;f_15<='0'f_16<='0'f_1<='0'f<='0' else if q_15=15 then q_15<=0;f_15<='1' -此IF語句得到頻率為15Hz的信號 else q_

24、15<=q_15+1;f_15<='0' end if; if q_16=14 then q_16<=0;f_16<='1' -此IF語句得到頻率為16Hz的信號 else q_16<=q_16+1;f_16<='0' end if; if q_1=239 then q_1<=0;f_1<='1' -此IF語句得到頻率為1Hz的信號 else q_1<=q_1+1;f_1<='0' end if; if en1='1' then f<

25、=f_15; -此IF語句得到計(jì)費(fèi)脈沖f elsif en0='1' then f<=f_16; else f<='0' end if; end if; end if;end process;process(f_1)begin if f_1'event and f_1='1' then if start='0' then w<=0;en1<='0'en0<='0'm1<="000"m0<="0000"k1<

26、;="0000"k0<="0000" elsif stop='1' then if w=59 then w<=0; -此IF語句完成等待計(jì)時 if m0="1001" then m0<="0000" -此IF語句完成分計(jì)數(shù) if m1<="101" then m1<="000" else m1<=m1+1; end if; else m0<=m0+1; end if; if m1&m0>"000

27、0001"then en1<='1' -此IF語句得到en1使能信號 else en1<='0' end if; else w<=w+1;en1<='0' end if; elsif fin='1' then if k0="1001" then k0<="0000" -此IF語句完成公里脈沖計(jì)數(shù) if k1="1001" then k1<="0000" else k1<=k1+1; end if; e

28、lse k0<=k0+1; end if; if k1&k0>"00000010" then en0<='1' -此IF語句得到en0使能信號 else en0<='0' end if; else en1<='0'en0<='0' end if;cha3<=c3;cha2<=c2;cha1<=c1;cha0<=c0; -費(fèi)用數(shù)據(jù)輸出km1<=k1;km0<=k0;min1<='0'&m1;min0<

29、;=m0; -公里數(shù)據(jù)、分鐘數(shù)據(jù)輸出 end if;end process;process(f,start)begin if start='0' then c3<="0000"c2<="0001"c1<="0000"c0<="0000" elsif f'event and f='1' then if c0="1001" then c0<="0000" -此IF語句完成對費(fèi)用的計(jì)數(shù) if c1="1001" then c1<="0000" if c2="1001" then c2<="0000" if c3<="1001" then c3<="0000" else c3<=c3+1; end if; else c2<=c2+1; end if; else c1<=c1+1; end if; else c0<=c0+1; end if; end if;end process;end behav; 5電路仿真5.1Pr

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論