电子密码锁的EDA设计与实现
时序产生电路用于产生电路中三种不同频率的工作脉冲波形,包括系统时钟信号、弹跳消除取样信号和键盘扫描信号。
键盘电路可提供键盘扫描信号。该信号由ky3~ky0进入键盘,其变化的顺序为1110-1101-1011-0111-1110……周而复始。扫描信号0111代表扫描的为*、0、#这一排按键,当*这个按键被按下时,由kx2~kx0读出的值为011。按键位置的数码关系如表1所列。

弹跳消除电路可避免误操作发生。由于设计中采用的矩阵式键盘是机械开关结构,因此,在开关切换的瞬间,会在接触点出现信号来回弹跳的现象。为使电子密码锁可靠工作,必须加上弹跳消除电路。弹跳消除电路采用软件延时的方法消除抖动,其仿真波形如图3所示。从图3中可以看出,若采样信号连续两次或超过两次检测到高电平信号,说明按键状态确实发生了变化,此时电路输出一个时钟周期的按键信号;否则当作抖动处理而不予理会,以此来消除抖动。

对于键盘译码电路,由于图2中的键盘按键分为数字按键和功能按键,每一个按键可负责不同的功能,而键盘所产生的输出(也就是扫描回复信号)却无法直接拿来用作密码锁控制电路的输入,所以必须由键盘译码电路来规划每个按键的输出形式,以便执行相应的动作。
键盘存储电路可将每次扫描产生的新按键数据存储下来,因此新数据可能会覆盖前面的数据,所以需要一个按键存储电路,以将整个键盘扫描完毕的结果记录下来。
图4所示是密码锁输入模块的仿真波形,图中,数字键数据“0、1、2、3、4、5、6、7、8、9”和功能键数据“0100、0001”所得到的输出不同,由此可证明密码锁输入模块的正确性。

评论