这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界» 论坛首页» DIY与开源设计» 电子DIY» 分享一个FPGA矩阵键盘实例

共4条 1/1 1 跳转至

分享一个FPGA矩阵键盘实例

助工
2014-11-06 22:16:37 打赏
最近学习了一个FPGA检测矩阵键盘的实例,分享给大家。
`timescale 1ns / 1ps module KEY4(clk,A,B,R); input clk; input [3:0] A; output [3:0] B; output [3:0] R;//开发板的数码管有译码电路,直接输出二进制数即可。 reg [1:0] c; reg [3:0] R,B; always@(posedge clk) begin c<=c+1; case(c) 0: B=4'B0111; 1: B=4'B1011; 2: B=4'B1101; 3: B=4'B1110; endcase case({B,A}) 8'B0111_1110 : R=4'H0; 8'B0111_1101 : R=4'H1; 8'B0111_1011 : R=4'h2; 8'B0111_0111 : R=4'h3; 8'B1011_1110 : R=4'H4; 8'B1011_1101 : R=4'H5; 8'B1011_1011 : R=4'H6; 8'B1011_0111 : R=4'H7; 8'B1101_1110 : R=4'H8; 8'B1101_1101 : R=4'H9; 8'B1101_1011 : R=4'HA; 8'B1101_0111 : R=4'HB; 8'B1110_1110 : R=4'HC; 8'B1110_1101 : R=4'HD; 8'B1110_1011 : R=4'HE; 8'B1110_0111 : R=4'HF; endcase end endmodule




关键词: FPGA

院士
2014-11-07 10:11:22 打赏
2楼
感谢~~~

助工
2014-11-07 19:02:49 打赏
3楼

juzhengjianpan

这是实验现象:http://v.youku.com/v_show/id_XODIwNzY3Nzgw.html

矩阵键盘很常用,检测按键按下的原理比较简单。(我的开发板上是有上啦电阻的,)首先向B端口轮流输出4位二进制1110,1101,1011,0111.如果有按键按下,A端口就会输出相应的电平。比如向B端口输入1110时,按下按键,检测到A端口为1110,则按键码{B,A}为1110_1110。就可表示相应的按键按下。当然,这代码没加消抖,还有改进空间。


菜鸟
2014-12-27 12:35:08 打赏
4楼
感谢楼主、

共4条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册]