• 方案介绍
  • 相关推荐
申请入驻 产业图谱

脉冲按键电话8位显示的电话按键显示器Verilog代码

05/24 09:25
745
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

名称:脉冲按键电话8位显示的电话按键显示器(代码在文末下载)

软件:QuartusII

语言:Verilog

代码功能:

1、 设计一个具有8位显示的电话按键显示器;

2、能准确地反映按键数字;

3、显示器显示从低位向高位前移,逐位显示按键数字,最低位为当前输入位;

4、 设置一个“重拨”键,按下此键,能显示最后一次输入的电话号码;

5、 挂机2秒后或按熄灭按键,熄灭显示器显示。

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

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

睿智FPGA开发板用户手册1.8版.pdf

板子.jpg

设计文档:

工程文件

程序文件

程序编译

RTL图

管脚分配:

4184528f-16a5-4b92-8c51-017319784b87.png

部分代码展示:

//按键电话显示
module?phone_num(
input?clk,
input?rst_n,//复位
input?key0_in,//按键输入
input?key1_in,//按键输入
input?key2_in,//按键输入
input?key3_in,//按键输入
input?key4_in,//按键输入
input?recall_key,//重播键
input?close_key,//挂机键
input?dark_key,//熄灭键
output?[7:0]?DIG,//数码管位选
output?[7:0]?SEG//数码管段选
);
wire?[3:0]?key_number;//输入数
wire?[31:0]?phone_number;//电话号码
wire?key0;
wire?key1;
wire?key2;
wire?key3;
wire?key4;?
//4个按键消抖模块
key4?i_key4(
.?clkin(clk),
.?key0_in(key0_in),//输入
.?key1_in(key1_in),//输入
.?key2_in(key2_in),//输入
.?key3_in(key3_in),//输入
.?key4_in(key4_in),//输入
.?key0(key0),//消抖后按键
.?key1(key1),//消抖后按键
.?key2(key2),//消抖后按键
.?key3(key3),//消抖后按键
.?key4(key4)?//消抖后按键
);
//控制模块
num_ctrl?i_num_ctrl(
.?clk(clk),
.?rst_n(rst_n),//复位
.?key0(key0),
.?key1(key1),
.?key2(key2),
.?key3(key3),
.?key4(key4),
.?recall_key(recall_key),//重播键
.?close_key(close_key),//挂机键
.?dark_key(dark_key),//熄灭键
.?key_number(key_number),//输入数量
.?phone_number(phone_number)//电话号码
);
//显示模块
segment?i_segment(
.?clk(clk),
.?key_number(key_number),//输入数量
.?phone_number(phone_number),//电话号码
.?DIG(DIG),//数码管位选
.?SEG(SEG)//数码管段选
);
endmodule

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=276

相关推荐