Verilog-按键消抖程序.doc

Verilog-按键消抖程序.doc

ID:57307379

大小:41.00 KB

页数:4页

时间:2020-08-11

Verilog-按键消抖程序.doc_第1页
Verilog-按键消抖程序.doc_第2页
Verilog-按键消抖程序.doc_第3页
Verilog-按键消抖程序.doc_第4页
资源描述:

《Verilog-按键消抖程序.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、按键消抖一、程序(50mhz)modulexiaodou(clk,clr,key1,key2,key3,key4,key5,key_out1,key_out2,key_out3,key_out4,key_out5);inputclk,clr;inputkey1,key2,key3,key4,key5;outputkey_out1,key_out2,key_out3,key_out4,key_out5;//-------------------------------------------------reg[4:0]key_rst;reg[4:0]key_rst_n;reg

2、[19:0]cnt;reg[4:0]key_next;reg[4:0]key_next_n;regd1,d2,d3,d4,d5;wire[4:0]key_flag;wire[4:0]key_out_n;reg[23:0]count1;regcount_flag;always@(posedgeclkornegedgeclr)//getthefistvaluebeginif(!clr)beginkey_rst<=5'b11111;endelsebeginkey_rst<={key5,key4,key3,key2,key1};endend//-------------------

3、--------------------always@(posedgeclkornegedgeclr)beginif(!clr)beginkey_rst_n<=5'b11111;endelsebeginkey_rst_n<=key_rst;endend//----------------------------------------assignkey_flag=key_rst_n&(~key_rst);//--------------jishu-------------------always@(posedgeclkornegedgeclr)beginif(!clr)be

4、gincnt<=20'd0;endelseif(key_flag)begincnt<=20'b0;endelsebegincnt<=cnt+1'b1;endend//-----------------20msafter-------------always@(posedgeclkornegedgeclr)beginif(!clr)beginkey_next<=5'b11111;endelseif(cnt==20'hfffff)beginkey_next<={key5,key4,key3,key2,key1};endend//-------------------------

5、---------always@(posedgeclkornegedgeclr)beginif(!clr)beginkey_next_n<=5'b11111;endelsebeginkey_next_n<=key_next;endend//-------------------------------------------assignkey_out_n=key_next_n&(~key_next);//--------------------------------------always@(posedgeclkornegedgeclr)beginif(!clr)begi

6、nd1<=1'b1;d2<=1'b1;d3<=1'b1;d4<=1'b1;d5<=1'b1;count_flag<=1;endelse//应led止显示一个时钟周期,我们观测不到,begin//此处有个计数延时,目的是led灯显示能够持续一段时间if(key_out_n[0])begind1<=1'b0;count_flag<=1'b0;endelseif(count1==24'hffffff)begind1<=1'b1;count_flag<=1;endif(key_out_n[1])begind2<=1'b0;count_flag<=1'b0;endelseif(cou

7、nt1==24'hffffff)begind2<=1'b1;count_flag<=1;endif(key_out_n[2])begind3<=1'b0;count_flag<=1'b0;endelseif(count1==24'hffffff)begind3<=1'b1;count_flag<=1;endif(key_out_n[3])begind4<=1'b0;count_flag<=1'b0;endelseif(count1==24'hffffff)begind4<=1'b1;count_flag<=1;en

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。