BCD码计数器设计Verilog代码Quartus DE2开发板

名称:BCD码计数器设计Verilog代码Quartus  DE2开发板

软件:Quartus

语言:Verilog

代码功能:

研究目标:采用EDA技术,以硬件描述语言 Verilog HDL为系统逻辑描述语言,在QUARTUS工具软件环境下,采用自顶向下的设计方法,由各个基本模块共同构建一个基于FPGA的BCD码计数器设计。该计数器具有置数和复位功能,并可以根据外部的拨码开关来选择加1计数还是减1计数,并能在数码管上面正确显示。

BCD码计数器.jpg

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

本代码已在DE2开发板验证,DE2开发板如下,其他开发板可以修改管脚适配:DE2开发板.png

演示视频:

设计文档:

设计文档.doc

1. 工程文件


2. 程序文件





3. 程序编译


4. RTL图


5. 仿真图

整体仿真图



分频模块

计数控制模块

显示模块



部分代码展示:

//计数控制模块
module bcd_counter(
input clk_in,//50MHz
input clk_1Hz,//计数时钟
input rst_n,//复位按键
input load_n,//置数按键
input [3:0] h_in,//高位置数
input [3:0] l_in,//低位置数
input [3:0] cnt_sw,//计数控制开关,4个拨码开关
output [3:0] bcd_h,//bcd计数高位
output [3:0] bcd_l //bcd计数低位
);
reg [3:0] bcd_high;//bcd计数高位
reg [3:0] bcd_low; //bcd计数低位
always@(posedge clk_in or negedge rst_n)
if(!rst_n)begin//复位按键
bcd_high<=4'd0;
bcd_low<=4'd0;
end
else if(!load_n)//置数按键
begin//复位按键
bcd_high<=h_in;//高位置数
bcd_low <=l_in;//低位置数
end
else if(clk_1Hz)//计数时钟
case(cnt_sw)//计数控制开关,4个拨码开关
4'b1000://加1计数
if(bcd_high==4'd9 && bcd_low==4'd9)//计数到99
begin
bcd_high<=4'd0;
bcd_low <=4'd0; 
end
else if(bcd_low==4'd9)//计数到9
begin
bcd_high<=bcd_high+4'd1;//十位加1
bcd_low <=4'd0; 
end
else
begin
bcd_high<=bcd_high;//
bcd_low <=bcd_low+4'd1;//个位加1 
end

代码文件(付费下载):



1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » BCD码计数器设计Verilog代码Quartus DE2开发板

注册为本站会员,充值100得150,详情咨询客服

目前为止共有 *** 位优秀的会员加入! 立刻加入会员