Verilog-按键消抖程序.pdf

上传人:hg158****2095 文档编号:73580117 上传时间:2023-02-19 格式:PDF 页数:6 大小:358.67KB
返回 下载 相关 举报
Verilog-按键消抖程序.pdf_第1页
第1页 / 共6页
Verilog-按键消抖程序.pdf_第2页
第2页 / 共6页
点击查看更多>>
资源描述

《Verilog-按键消抖程序.pdf》由会员分享,可在线阅读,更多相关《Verilog-按键消抖程序.pdf(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 a 按键消抖 一、程序(50mhz)module xiaodou(clk,clr,key1,key2,key3,key4,key5,key_out1,key_out2,key_out3,key_out4,key_out5);input clk,clr;input key1,key2,key3,key4,key5;output key_out1,key_out2,key_out3,key_out4,key_out5;/-reg 4:0 key_rst;reg 4:0 key_rst_n;reg 19:0 cnt;reg 4:0 key_next;reg 4:0 key_next_n;reg d

2、1,d2,d3,d4,d5;wire4:0 key_flag;wire 4:0 key_out_n;reg 23:0 count1;reg count_flag;always(posedge clk or negedge clr)/get the fist value begin if(!clr)begin key_rst=5b11111;end else begin key_rst=key5,key4,key3,key2,key1;end end/-a always(posedge clk or negedge clr)begin if(!clr)begin key_rst_n=5b1111

3、1;end else begin key_rst_n=key_rst;end end/-assign key_flag=key_rst_n&(key_rst);/-jishu-always(posedge clk or negedge clr)begin if(!clr)begin cnt=20d0;end else if(key_flag)begin cnt=20b0;end else begin cnt=cnt+1b1;end end/-20ms after-always(posedge clk or negedge clr)begin if(!clr)begin key_next=5b1

4、1111;end else if(cnt=20hfffff)a begin key_next=key5,key4,key3,key2,key1;end end/-always(posedge clk or negedge clr)begin if(!clr)begin key_next_n=5b11111;end else begin key_next_n=key_next;end end/-assign key_out_n=key_next_n&(key_next);/-always(posedge clk or negedge clr)begin if(!clr)begin d1=1b1;

5、d2=1b1;d3=1b1;d4=1b1;d5=1b1;count_flag=1;end else /应 led 止显示一个时钟周期,我们观测不到,begin /此处有个计数延时,目的是 led 灯显示能够持续一段时间 if(key_out_n0)begin d1=1b0;count_flag=1b0;end else if(count1=24hffffff)begin d1=1b1;count_flag=1;end a if(key_out_n1)begin d2=1b0;count_flag=1b0;end else if(count1=24hffffff)begin d2=1b1;cou

6、nt_flag=1;end if(key_out_n2)begin d3=1b0;count_flag=1b0;end else if(count1=24hffffff)begin d3=1b1;count_flag=1;end if(key_out_n3)begin d4=1b0;count_flag=1b0;end else if(count1=24hffffff)begin d4=1b1;count_flag=1;end if(key_out_n4)begin d5=1b0;count_flag=1b0;end else if(count1=24hffffff)begin d5=1b1;

7、count_flag=1;end end end assign key_out1=d1?1b1:1b0;assign key_out2=d2?1b1:1b0;assign key_out3=d3?1b1:1b0;assign key_out4=d4?1b1:1b0;assign key_out5=d5?1b1:1b0;always(posedge clk or negedge clr)/计数延时,具体时间没有计算 begin if(!clr)a begin count1=0;end else if(count_flag=1b0)begin count1=count1+1b1;end else begin count1=0;end end endmodule 二、框图 a

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁