设计九按键扫描电路



《设计九按键扫描电路》由会员分享,可在线阅读,更多相关《设计九按键扫描电路(4页珍藏版)》请在文档大全上搜索。
1、实验七按键阵列扫描控制电路设计一、设计要求按键是数字设备的输入部件,是人工干预数字系统的主要手段。操作者可以通过按键向系统输入数据、指令等二进制信息。1. 设计要求本设计要求实现一个按键阵列判断电路,并用七段数码管显示该按键的标识。 当有键按下时,显示其标识符,并保持显示符直到新的按键作用。如果多个按键同时闭合, 只响应最先作用的按键。2. 硬件环境设计对象的实现环境与所采用的FPGA开发装置有关,本节以 LP2900为例,说明采用按键阵列扫描的设计原理和实现方法。LP2900开发装置上有“ 09,“* ,“#共12个键构成的3行4列按键阵列。FPGA 与按键阵列如图1所示。FPGA通过端口
2、RK1RK3读取键阵列的行线状态 X0X2 ;通过3 线-8线译码器控制键阵列的列线 Y0Y3 。 74138的译码输入由FPGA端口 DE3DE1控制。按键扫描原理1 按键状态判断数字电路中,按键的闭合和断开状态可以通过其控制的逻辑电平判断。图2 (a)电路将按键闭合、断开转换成代表“ 0 或“1二值逻辑的低电平和高电平,然后判断电路输出X的电平即可了解按键的通、断状态。比方图 2中,假设测得X的电平为“1,说明按键断 开;测得为“ 0,那么表示按键闭合。由于按键一般为机械开关,其触点的合、断有弹性抖动,如图2 ( b)所示,抖动时间约510ms。为了保证按键动作一次电路只判断到一次状态电平
3、改变,防止误判断,需要采 用消抖动措施。采用根本 RS触发器可以对X的电平信号整形,实现消抖动。+5VRih图2按键状态判断原理2.按键阵列判断假设需要判断的按键较多,为节省信号端口资源,一般将按键分成行、列两组连接成阵列形式,十六个按键的阵列如图3( a)所示。每个按键跨接在一条行线Xi和一条列线 Yj间,当按键闭合时,行线与列线接通。 每条行线都通过一个电阻上拉到 +5V电位,当行线上 的所有按键都未闭合时,行线一定为高电平。当某条列线为低电平时,根据行线电平可判断该列线上各键的状态。比方,当Yi为低电平时,如果四条行线X。、Xi、X2、X3的状态为“ 1011,可判 Kii键闭合,Koi
4、, K21,K31 键断开;假设 X。、Xi、X2、X3的状态为“ 0101 ,那么可判断Koi、K21键闭合。RR1 1 .KoiKq2 K03 咯W Xo懂.K12KisF XLR聲聴1 1RK31W x3Yg(a) 4X4键阵列电路(b)扫描信号波形图3按键阵列扫描原理3. 按键扫描判断采用状态机可自动逐个扫描按键通断情况,状态机的模等于或大于按键个数。每个状态可以使键阵列的一条列线Yj为低电平,通过判断行线 Xi的电平来了解按键 Kj的开关状态:当Kj键闭合,Xi为低电平;反之,Xi为高电平。对于图3 ( a)所示的键阵列电路,状 态机控制产生如图 3 (b)所示的四列负脉冲顺序扫描信