名称:脉冲按键电话8位显示的电话按键显示器(代码在文末下载)
软件:QuartusII
语言:Verilog
代码功能:
1、 设计一个具有8位显示的电话按键显示器;
2、能准确地反映按键数字;
3、显示器显示从低位向高位前移,逐位显示按键数字,最低位为当前输入位;
4、 设置一个“重拨”键,按下此键,能显示最后一次输入的电话号码;
5、 挂机2秒后或按熄灭按键,熄灭显示器显示。
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
本代码已在睿智FPGA开发板验证,开发板如下,其他开发板可以修改管脚适配:
睿智FPGA开发板用户手册1.8版.pdf
设计文档:
工程文件
程序文件
程序编译
RTL图
管脚分配:
部分代码展示:
//按键电话显示 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
阅读全文
745