【正文】
9。b10100。 fee[9:5]=fee[9:5]+539。b00010。 if(fee[4:0]539。b0,jishi_1[7:4]}+{139。b0,jishi_1[3:0]}539。 end end end else begin if(jishi_1[7:0]839。b01001) begin fee[9:5]=fee[9:5]539。b10100。 fee[9:5]=fee[9:5]+539。b00010。 if(fee[4:0]539。b0,jishi_1[7:4]}+{139。b00001+539。b00001。 if(fee[4:0]539。 fee[9:5]={139。b00000010) begin fee[4:0]={139。 wire [7:0] lch。信號名稱功能描述輸入輸出位寬lch計(jì)程模塊計(jì)算出的里程數(shù)Input8Jishi_1計(jì)時(shí)收費(fèi)輸出數(shù)據(jù)Input8fee計(jì)價(jià)器計(jì)算出的總價(jià)Output14,計(jì)費(fèi)模塊的VerilogHDL源代碼如下所示:module jf(lch,jishi_1,fee)。b000001。 end end else if(count1==639。b1001) begin jishi[7:4]=jishi[7:4]+439。b1。 count1=count1+639。b000001) begin jishi=jishi+839。b00000000。b000000。 output jishi,jishi_1。 else count=count+639。b0000。 if(lch[3:0]439。b000001) begin lch=lch+839。b00000000。 output lch。 endendmodule仿真的結(jié)果:,計(jì)程模塊:,計(jì)程模塊的框圖:引腳分配 信號名稱功能描述方向?qū)挾萻tart出租車開啟信號input1Clk_1分頻后計(jì)時(shí)時(shí)鐘,頻率為1HzInput1reset清零信號Input1 lch計(jì)程模塊計(jì)算出的里程數(shù)Output8此模塊的功能是計(jì)算出租車行駛的路程。 end else if(count==25000000) begin count=0。 reg [29:0] count。 .3,計(jì)數(shù)器的分頻模塊VerilogHDL源代碼:module fenpin(clk,reset,clk_1)。根據(jù)出租車計(jì)費(fèi)器的工作過程,本系統(tǒng)采用分層次、分模塊的方式設(shè)計(jì),其本系統(tǒng)組成框圖如下所示。再根據(jù)行駛里程或停止等待的時(shí)間按以上的標(biāo)準(zhǔn)計(jì)費(fèi)?!笥?jì)價(jià)系統(tǒng)里程顯示范圍為:0~99公里,分辨率1公里。本文介紹了一個(gè)以Altera公司可編程邏輯芯片cyclone2系列的EP2C35f672c6的fpga芯片為控制核心、附加一定外圍電路組成的出租車計(jì)費(fèi)器系統(tǒng)。 西安郵電學(xué)院 FPGA課程設(shè)計(jì)報(bào)告題 目: 基于FPGA的出租車計(jì)價(jià)器設(shè)計(jì) 院 系: 電子工程學(xué)院 專業(yè)班級: 微電子0901 學(xué)生姓名: 李歡 導(dǎo)師姓名: 黃海生 起止時(shí)間: 至 2012年 7 月 1 日基于FPGA的出租車計(jì)價(jià)器設(shè)計(jì)摘要介紹了出租車計(jì)費(fèi)器系統(tǒng)的組成及工作原理,簡述了在EDA平臺上用FPGA器件構(gòu)成該數(shù)字系統(tǒng)的設(shè)計(jì)思想和實(shí)現(xiàn)過程。利用它進(jìn)行產(chǎn)品開發(fā),不僅成本低、周期短、可靠性高,而且具有完全的知識產(chǎn)權(quán)。2.系統(tǒng)規(guī)范:,出租車計(jì)價(jià)器的要求:◇出租車起步價(jià)為8元,行駛過程中大于兩公里后每公里1元,中途停止等待時(shí)間累計(jì)大于三分鐘后按每3分鐘1元計(jì)價(jià)。:出租車載客后,啟動計(jì)費(fèi)器,整個(gè)系統(tǒng)開始運(yùn)行,里程計(jì)數(shù)器和時(shí)間計(jì)數(shù)器從0開始計(jì)數(shù),費(fèi)用計(jì)數(shù)器從8開始計(jì)算。出租車到達(dá)目的地停止后,停止計(jì)費(fèi)器,顯示總費(fèi)用。設(shè)計(jì)該模塊的時(shí)候用了一個(gè)30位的計(jì)數(shù)器,當(dāng)計(jì)數(shù)器計(jì)到25_000000的時(shí)候產(chǎn)生時(shí)鐘。 reg clk_1。b0。d1。 input reset,start,clk_1。 always(negedge reset,posedge clk_1) begin if(!reset) begin lch=839。 end else begin if(start) begin if(count==639。b000001。 lch[3:0]=439。b000000。 input reset,start,clk_1。 always(negedge reset,posedge clk_1) begin if(!reset) begin count2=639。 jishi=839。 end else begin if(!start) begin if(count1==639。b000001。b00001