这是一个时间收费系统
每当打开这个时间收费开关
一直会显示等待时间,但是都会等两分钟才接着继续动,因为前两分钟时间不收钱
就比如现在等待时间时10分钟,我现在按下这个开关,等两分钟之后才会计时,并且计时是从10继续开始计时的
module timewait (clk,reset,pluse_flag,min,time_enable);//clk为1HZ脉冲60个脉冲为1分钟
input clk;
input reset;
input pluse_flag;
output [7:0] min; //输出的分
output time_enable;//输出的控制计费的信号
reg [7:0] min;
reg [7:0]cnt;
always@(posedge clk or negedge reset)//异步复位
begin
if(!reset)//低电平有效
begin//复位
min<=8'H00;
end
else if (pluse_flag ==1'b1)
begin
if(cnt>8'd59)//用于确定一分钟的分辨率
begin
cnt=0;
if(min[3:0]==4'B1001)//分的低四位是9
begin
min[3:0]<=4'B0000;//清零
if(min[7:4]==4'B0101)//分的高四位是5
min[7:4]<=4'B0000;//清零
else
min[7:4]<=min[7:4]+4'B0001;//分高四位非5加1
end
else
min[3:0]<=min[3:0]+4'B0001;//分的低四位不是9加一
end
else
begin
cnt=cnt+1'b1;
end
end
end
assign time_enable=((min[7:0]>8'b0000_0010)?1'b1:1'b0) ;//标志位为1代表时间超过两分钟,开始计费
endmodule
所以你是想要改成等待两分钟后再开始计时的方案吗?
不知道你这个问题是否已经解决, 如果还没有解决的话: