正数倒数计时器设计Verilog代码Quartus仿真
名称:正数倒数计时器设计Verilog代码Quartus仿真
软件:Quartus
语言:Verilog
代码功能:
从5开始,拨动开关1,开始倒计时543210—秒一变拔动开关2,开始正向增加5.6.7.8.9.10—秒一变
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
1. 工程文件

2. 顶层block图

3. 模块代码



4. 程序编译

5. 仿真图


部分代码展示:
//按键控制倒计时 module down_time( input clk_in,//时钟 input reset,//复位 input clk_1Hz,//1秒使能信号 input key_1,//开关1 input key_2,//开关2 output [3:0] time_cnt//时间 ); reg [1:0] state=2'd0; //定义状态 parameter s_idle=2'd0; parameter s_sub=2'd1; parameter s_add=2'd2; parameter s_end=2'd3; reg [3:0] count=4'd5;//计数器 always@(posedge clk_in or posedge reset) if(reset)//复位 state<=s_idle;//空闲状态 else case(state) s_idle: if(key_1)//开关1 state<=s_sub;//递减状态 else if(key_2)//开关2 state<=s_add;//递增状态 else state<=s_idle;//空闲状态 s_sub://递减状态 if(count==4'd0)//减到0 state<=s_end;//结束 else state<=s_sub;//递减状态 s_add://递增状态 if(count==4'd10)//加到10 state<=s_end;//结束 else state<=s_add;//递增状态 s_end://结束 state<=s_idle;//空闲状态 default:; endcase always@(posedge clk_in or posedge reset) if(reset)//复位 count<=4'd5;//起始值为5 else if(state==s_sub && clk_1Hz)//递减状态/1秒使能信号 count<=count-1;//递减 else if(state==s_add && clk_1Hz)//递增状态/1秒使能信号 count<=count+1;//递增 else ; assign time_cnt=count;//时间 endmodule
代码文件(付费下载):
![]()
1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 正数倒数计时器设计Verilog代码Quartus仿真
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 正数倒数计时器设计Verilog代码Quartus仿真