实战训练2 基于verilog按键消抖设计.docx
《实战训练2 基于verilog按键消抖设计.docx》由会员分享,可在线阅读,更多相关《实战训练2 基于verilog按键消抖设计.docx(4页珍藏版)》请在三一办公上搜索。
1、实战训练2 基于verilog按键消抖设计实战训练2 基于verilog按键消抖设计 键盘的分类 键盘分编码键盘和非编码键盘。键盘上闭合键的识别由专用的硬件编码器实现,并产生键编码号或键值的称为编码键盘,如计算机键盘。而靠软件编程来识别的称为非编码键盘。 在单片机组成的各种系统中,用的最多的是非编码键盘。也有用到编码键盘的。非编码键盘有分为:独立键盘和行列式键盘。 按键在闭合和断开时,触点会存在抖动现象: 从上面的图形我们知道,在按键按下或者是释放的时候都会出现一个不稳定的抖动时间的,那么如果不处理好这个抖动时间,我们就无法处理好按键编码,所以如何才能有效的消除按键抖动呢? 经典的verilo
2、g键盘扫描程序 /当三个独立按键的某一个被按下后,相应的LED被点亮;再次按下后,LED熄灭,按键控制LED亮灭 timescale 1ns/1ns module keyscan( clk, rst_n, sw1_n, sw2_n, sw3_n, /output led_d3, led_d4, led_d5 ); input clk; /主时钟信号,48MHz input rst_n; /复位信号,低有效 input sw1_n,sw2_n,sw3_n; /三个独立按键,低表示按下 output led_d3,led_d4,led_d5; / - reg 19:0 cnt; /计数寄存器 /发
3、光二极管,分别由按键控制 always (posedge clk or negedge rst_n) if (!rst_n) cnt = 20d0; else /异步复位 cnt = cnt + 1b1; reg 2:0 low_sw; always (posedge clk or negedge rst_n) if (!rst_n) low_sw = 3b111; else if (cnt = 20hfffff) /满20ms,将按键值锁存到寄存器low_sw中 low_sw = sw3_n,sw2_n,sw1_n; / - reg 2:0 low_sw_r; /每个时钟周期的上升沿将low
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实战训练2 基于verilog按键消抖设计 实战 训练 基于 verilog 按键 设计

链接地址:https://www.31ppt.com/p-3435458.html