0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

EDA程序設(shè)計—出租車計費器

冬至子 ? 來源:吃小竹子丫 ? 作者:吃小竹子丫 ? 2023-08-25 16:55 ? 次閱讀

1 系統(tǒng)設(shè)計

1.2設(shè)計要求

1.1.1 設(shè)計任務(wù)

設(shè)計并制作一臺出租車計費器。

1.1.2 性能指標(biāo)要求

① 用EDA實訓(xùn)儀的I/O設(shè)備和FPGA實現(xiàn)出租車計費器的設(shè)計。

② 出租車起步開始計程和計費,計程系統(tǒng)按實際公里數(shù)計程,計費系統(tǒng)首先顯示起步價(如7.0),車行駛2km以內(nèi),只收起步價7元。

③ 出租車行駛超過2km后,按每公里1.6元在7.0元的基礎(chǔ)上增加。

④ 出租車行駛超過10km后(或超過20元路費),每公里加收50%的車費,即車費變?yōu)槊抗?.4元。

⑤ 出租車達到目的地后,(用一個按鈕)計程和計費數(shù)據(jù)清零,為下一次計費開始。

1.2 設(shè)計思路及設(shè)計框圖

1.2.1設(shè)計思路

計程和計費都是十進制位的輸入,通過脈沖實現(xiàn)計數(shù)。計程通過分頻器的輸出作為輸入,產(chǎn)生的秒脈沖以實現(xiàn)計數(shù)功能。計費在LED數(shù)碼管上分為個位十位(例如起步價為7元,顯示器上顯示70,三公里時為86......),計程器和計費器在一個程序內(nèi)完成,分頻器用另一個程序完成,并將程序都生成一個元器件,用圖形法級聯(lián)在一起。上硬件仿真后,打開開關(guān)輸入脈沖,通過上升沿觸發(fā)使路程計算加一,并使總路計算模塊加一,到達相應(yīng)的公里數(shù)后沒每公里收費也隨之改變。

1.2.2總體設(shè)計框圖

2.1 總體電路圖

2.2 分頻器模塊

module fpq_(clk,KS,clk_1s);

input clk,KS;

output reg clk_1s;

reg[26:0] qs;

always @(posedge clk)

if(KS==1)

begin

if(qs==49999999) qs=0;

else qs=qs+1;

if(qs==24999999) clk_1s=0;

else clk_1s=1;

end

endmodule

分頻器

2.3計程計費器模塊

module CZCJFQ(clk,clrn,clk2,L1,L2,L3,L4,L5,L6);

input clk,clrn,clk2;

output L1,L2,L3,L4,L5,L6;

wire[15:0] Q;

reg[7:0] km;

reg[11:0] ZJ;

reg clk1;

reg [6:0] L1,L2,L3,L4,L5,L6;

initial clk1=1;

always @(posedge clk^clk2 or negedge clrn)

begin

if(~clrn) km[3:0]=0;

else begin

if(km[3:0]==9) km[3:0]=0;

else km[3:0]=km[3:0]+1;

if(km[3:0]==9) clk1=0;

else clk1=1;

end

end

always @(posedge clk1 or negedge clrn)

begin

if(~clrn) km[7:4]=0;

else begin

if( km[7:4]==9) km[7:4]=0;

else km[7:4]= km[7:4]+1;

end

else begin

if(ZJ[11:0]>9999) ZJ[11:0]=70;

else if(km[7:0]>'h9) ZJ[11:0]=ZJ[11:0]+24;

else if(km[7:0]>'h1) ZJ[11:0]=ZJ[11:0]+16;

else ZJ[11:0]=ZJ[11:0];

end

end

assign{Q[3:0]}={ZJ[11:0]}%10;

assign{Q[7:4]}={ZJ[11:0]}/10%10;

assign{Q[11:8]}={ZJ[11:0]}/100%10;

assign{Q[15:12]}={ZJ[11:0]}/1000;

路程計費器模塊

2.4 組合邏輯模塊(部分)

always@ (Q[0],Q[1],Q[2],Q[3])

begin

case ({Q[3],Q[2],Q[1],Q[0]})

4'B0000:L1=7'B1000000;

4'B0001:L1=7'B1111001;

4'B0010:L1=7'B0100100;

4'B0011:L1=7'B0110000;

3 調(diào)試過程

編程代碼和編譯過程經(jīng)常出現(xiàn)問題,尤其是always@(*)語句上經(jīng)常出錯,以及在下載到硬件仿真的時候LED數(shù)碼管沒有反應(yīng),在向老師求助答疑后加入了些組合邏輯模塊,修改過后的程序能正常編譯,之后將程序下載到硬件中,打開開關(guān)檢查路程計算能正常運行,路程計費計算功能正常,可以達到驗收標(biāo)準(zhǔn)。

4 功能測試

4.1 測試儀器與設(shè)備

計算機一臺

EDA實訓(xùn)儀

4.2 性能指標(biāo)測試

打開開關(guān)后輸入脈沖可產(chǎn)生路程計算,隨著路程的遞增費用也按要求遞增,按下按鍵后數(shù)據(jù)可清零,也可以通過按下按鍵自行增加路程。

仿真波形圖(部分模塊)

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA設(shè)計
    +關(guān)注

    關(guān)注

    9

    文章

    428

    瀏覽量

    26518
  • led數(shù)碼管
    +關(guān)注

    關(guān)注

    2

    文章

    73

    瀏覽量

    22082
  • 分頻器
    +關(guān)注

    關(guān)注

    43

    文章

    447

    瀏覽量

    49912
  • EDA設(shè)計
    +關(guān)注

    關(guān)注

    1

    文章

    47

    瀏覽量

    13682
  • 計費器
    +關(guān)注

    關(guān)注

    0

    文章

    7

    瀏覽量

    7331
收藏 人收藏

    評論

    相關(guān)推薦

    如何使用Arduino制作數(shù)字出租車計費器

    今天,在本教程中,我們將使用 Arduino 制作數(shù)字出租車計費器的原型。該項目計算出租車車輪行駛的速度和距離,并在16x2 LCD 顯示屏上連續(xù)顯示。當(dāng)我們按下按鈕時,它會根據(jù)行駛的距離生成票價金額。
    的頭像 發(fā)表于 09-20 17:35 ?3381次閱讀
    如何使用Arduino制作數(shù)字<b class='flag-5'>出租車</b><b class='flag-5'>計費器</b>

    一種出租車計費器設(shè)計方案

    介紹了采用EDA技術(shù)的層次化設(shè)計方法設(shè)計出租車計費器的方法。無需添加外圍電路,更新功能僅需修改軟件。
    發(fā)表于 12-07 16:53 ?3770次閱讀

    基于FPGA的出租車計費器設(shè)計

    基于FPGA的出租車計費器設(shè)計,自己做的,仿真不是很好,但作為參考不錯。。。
    發(fā)表于 06-02 13:55

    基于FPGA出租車計費器設(shè)計報告(verilog)

    基于FPGA出租車計費器設(shè)計報告(verilog)
    發(fā)表于 10-11 18:49

    求一個數(shù)電的出租車計費器的multisim源文件

    求一個數(shù)電的出租車計費器的multisim源文件,謝謝大家了,我急著用!在線等,拜托大神了!
    發(fā)表于 06-13 21:28

    書求一個基于multisim的出租車計費器的電路圖!

    書求一個基于multisim的出租車計費器的電路圖!
    發(fā)表于 12-29 16:58

    請教大神如何去設(shè)計出租車計費器系統(tǒng)?

    本文介紹了一種以Altera公司可編程邏輯器件EP1K30TC144-3為控制核心,附加一定外圍電路組成的出租車計費器系統(tǒng)。
    發(fā)表于 04-30 06:06

    多功能出租車計費器的相關(guān)資料推薦

    單片機出租車計費器一、實驗?zāi)康亩?、實驗?nèi)容三、實驗步驟四、C代碼如下五、實驗結(jié)果六、實驗體會一、實驗?zāi)康奈覈鞘邪l(fā)展日新月異,交通工具也越來越多樣化。我國出租汽車行業(yè)因而迅猛發(fā)展,出租
    發(fā)表于 11-25 06:20

    基于CPLD/FPGA的出租車計費器

    摘要: 介紹了出租車計費器系統(tǒng)的組成及工作原理,簡述了在EDA平臺上用單片CPLD器件構(gòu)成該數(shù)字系統(tǒng)的設(shè)計思想和實現(xiàn)過程。論述了車型調(diào)整模塊、計程模塊、計費模塊
    發(fā)表于 06-20 15:24 ?1257次閱讀
    基于CPLD/FPGA的<b class='flag-5'>出租車</b><b class='flag-5'>計費器</b>

    基于單片機的出租車計費器

    基于單片機的出租車計費器,用C來編程的。。
    發(fā)表于 01-14 17:10 ?16次下載

    單片機課程設(shè)計報告-簡易出租車計費器

    簡易出租車計費器
    發(fā)表于 04-13 14:29 ?45次下載

    如何使用VHDL設(shè)計一個簡易出租車計費器的資料合集免費下載

    本文介紹了一種采用單片F(xiàn)PGA芯片進行出租車計費器的設(shè)計方法,主要闡述如何使用EDA器件取代傳統(tǒng)的電子設(shè)計方法,利用FPGA的可編程性,簡潔而又多變的設(shè)計方法,縮短了研發(fā)周期,同時使簡易出租車
    發(fā)表于 09-01 17:29 ?48次下載
    如何使用VHDL設(shè)計一個簡易<b class='flag-5'>出租車</b><b class='flag-5'>計費器</b>的資料合集免費下載

    如何使用CPLD實現(xiàn)出租車計費器的設(shè)計

    本文借助QuartusⅡ9.0軟件,基于大規(guī)??删幊踢壿嬈骷﨔PGA,利用Verilog HDL 語言,進行出租車計費器設(shè)計。該出租車計費系統(tǒng)包括計數(shù)
    發(fā)表于 08-21 16:16 ?9次下載
    如何使用CPLD實現(xiàn)<b class='flag-5'>出租車</b><b class='flag-5'>計費器</b>的設(shè)計

    利用Verilog_HDL語言設(shè)計出租車計費器

    利用Verilog_HDL語言設(shè)計出租車計費器案例。
    發(fā)表于 04-09 16:22 ?65次下載

    EDA程序設(shè)計出租車計費器

    1.1 設(shè)計要求 1.1.1 設(shè)計任務(wù) 設(shè)計并制作一臺出租車計費器。1.1.2 性能指標(biāo)要求① 用EDA實訓(xùn)儀的I/O設(shè)備和FPGA實現(xiàn)出租車計費器
    發(fā)表于 08-22 10:19 ?14次下載