基于FPGA的出租車計價系統(tǒng)設(shè)計
摘要:設(shè)計出租車計價系統(tǒng),運用自頂向下的設(shè)計思想,以芯片CycloneⅡEP2C8T144C8為設(shè)計核心,采用QuartusⅡ仿真軟件,對設(shè)計電路的各模塊及整個系統(tǒng)進行了EDA仿真驗證。結(jié)果表明,該計價系統(tǒng)具有計時、計費、計程和動態(tài)顯示的功能,符合設(shè)計要求,修改VHDL語言源程序,可完成更多的出租車計價系統(tǒng)的擴展功能。
關(guān)鍵詞:出租車計價;自頂向下;VHDL;FPGA
0 引言
隨著電子技術(shù)的發(fā)展,出租車計價器的設(shè)計也從傳統(tǒng)的全部由機械元器件組成的機械式設(shè)計到半電子式(即用電子線路代替部分機械器件的出租車計價器),再從集成電路式到目前基于FGPA芯片為核心的系統(tǒng)的設(shè)計共經(jīng)歷了四個階段,利用FPGA芯片,用較少的外部硬件和適當(dāng)?shù)能浖嗷ヅ浜?,可以通過軟件編程來完成更多的附加功能,設(shè)計比較靈活,并且還具有功耗小,體積小、低成本、安全可靠、使用方便等優(yōu)點。因此,使用FPGA來設(shè)計出租車計價系統(tǒng)已受到人們的關(guān)注,也能更好地發(fā)揮其優(yōu)點。
本文以FPGA為設(shè)計載體,通過VHDL語言編程,采用QuartusⅡ仿真軟件,設(shè)計了一種能動態(tài)顯示出租車計時、計費、計程的系統(tǒng),具有一定的實際應(yīng)用價值。
1 出租車計價系統(tǒng)的設(shè)計要求
1.1 實現(xiàn)計費功能
車起步開始計費,首先顯示起步價(本次設(shè)計為8.0元),行程在3 km以內(nèi),按起步價收費;當(dāng)行駛超過3 km,1.6元/km,車暫時停車(如遇紅綠燈或中途暫時停車),當(dāng)?shù)却龝r間超過3 min,按1元/min收費。
1.2 實現(xiàn)顯示功能
能動態(tài)顯示出租車行駛的里程,范圍為00~99 km(考慮到出租車就在市區(qū)或近郊附近活動),同時顯示等待時間,范圍為00~59 min,顯示總計價值,范圍為00~999.9元,計價分辨率為0.1元。
2 出租車計價系統(tǒng)的設(shè)計體系
圖1為整個系統(tǒng)的頂層框圖,根據(jù)層次化設(shè)計理論,將出租車自動計價系統(tǒng)自頂向下可分為分頻模塊、控制模塊、計量模塊、譯碼和動態(tài)掃描顯示模塊。
(1)分頻模塊。通過分頻產(chǎn)生不同頻率的脈沖信號用來實現(xiàn)系統(tǒng)的計費,本次設(shè)計中通過對240 Hz的輸入脈沖進行15次,24次和240次分頻,得到16 Hz,10 Hz和1 Hz的三種頻率,分別用于1.6元,1元和0.1元的計費。
(2)計量控制模塊。計量控制模塊是出租車自動計費器系統(tǒng)的主體部分,該模塊主要完成出租車的計時、計價、計程功能。計時器的量程為59 min,滿量程自動歸零。計程器的量程為99 km,滿量程自動歸零。行程在3 km內(nèi),且等待累計時間在3 min內(nèi),起步價費為8元;3 km外以1.6元/km計費,等待累計時間超過3 min按1元/min計費。
(3)譯碼顯示模塊。該模塊經(jīng)過8選1數(shù)據(jù)選擇器將計費數(shù)據(jù)(4位BCD碼)、計時數(shù)據(jù)(2位BCD碼)、計程數(shù)據(jù)(2位BCD碼)動態(tài)顯示輸出。其中計費數(shù)據(jù)最大顯示為999.9元;計時數(shù)據(jù)最大顯示為59 min;計程數(shù)據(jù)最大顯示為99 km。
評論