1、3.当里程数大于3km时,每km增加2元。4. 里程数精确到0.1km,价格精确到0.1元,价格和里程数用数码管显示。 2、顶层划分管脚功能:管脚名称PIN功能CLKinput输入时钟50Mrst复位信号start计价启动/暂停/停止信号Led1output里程数信号十位Led2里程数信号个位Led3里程数信号小数点后一位Led4价格信号十位Led5价格信号个位Led6价格信号小数点后一位3、子模块描述1、分频模块 功能描述: 通过分频,产生一个10hz的分频时钟信号。原时钟信号counter计数信号fclk分频时钟信号即模拟车轮每转动一圈所用时间3实现原理:当复位信号有效时,counter,
2、fclk清零,当复位信号无效且计价开始信号有效时,counter开始自加, 每加到2500000,fclk取反,生成一个1hz的时钟信号,即模拟车轮每转动一圈产生脉冲。4代码:module fclk(CLK,rst,fclk);input CLK,rst;output fclk; reg24:0 counter; reg fclk;always (posedge CLK or negedge rst) begin if(!rst) fclk = 1d0; counter = 25 end else= counter + 25d1; if(counter = 25d2500000)= fclk;
3、 endendmodule2、计数模块功能描述: 当fclk上升沿来临时,count自加1,当count加到25次时,即出租车行驶0.1km时(以车轮转一周为2m计算),标志信号load取反。管脚功能:计数器时钟信号countload计数结束标志信号当复位信号有效时,count,load清零;当复位信号无效且计价开始信号有效时,count开始自加, 每加到50,load=load.代码:module counter(fclk,rst,start,load); input fclk,rst,start; output load; reg load; reg4:0 count; always (p
4、osedge fclk or negedge rst) load count = 5 else = count + 5 if(start = 1d1) if(count = 5d24) load = load; endmodule 3、计价器模块 记录产生计价数据和里程数数据。计数标志信号Inputjourney9:0Output里程数信号price9:价格输出信号当复位信号有效时,count,load,journey,price清零;当复位信号无效且计价开始信号有效时,load信号每经过一个周期,里程数自加0.1km,然后判断里程数与3km比较,若里程数小于3km,则价格信号price为7.
5、0,当里程数大于3km,则价格信号price为70+2*(里程数 -30)。module price(start,rst,load,journey,price); input start,rst,load; output9:0 journey,price; reg9:0 cnt; always (posedge load or negedge rst) cnt = 10 journey price = cnt + 10 price 10d29)= price + 10d2; endmodule4、数码管显示模块 用数码管显示里程数和价格信号。计价开始信号在rst或价格信号或里程数信号变化时,将
6、数码管的译码数据存入一个10位寄存器中,当复位信号有效时,数码管清零显示;当复位信号无效时,将journey的百位给led1,并调用数码管显示出来,同理将journey个位和小数点后一位也调用显示,price同理。moduleled(journey,price,CLK,rst,start,led1,led2,led3,led4,led5,led6) input9:input rst,start,CLK;output6:0led1,led2,led3,led4,led5,led6;reg6:0LED9:0;reg3:0 number5:always(posedge CLK or negedge
7、rst)begin number5= journey/100; number4= (journey%100)/10; number3= journey%10; number2= price/100; number1= (price%100)/10; number0= price%10;rst) led1=7b1000000; led2 led3 led4 led5 led6 begin case(number0) 4d0:led6 = 7d1:b1111001; 4d2:b0100100;d3:b0110000;d4:b0011001;d5:b0010010;d6:b0000010;d7:b1111000;d8:b0000000;d9:b0010000; default: led6 endcase case(number1)led5 led5 case(number2)led4 led4 case(number3)led3 led3 case(number4)led2 led2 case(number5)led1 led1 end
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1