基于eda技术的电子密码锁的设计内容摘要:

统时钟脉冲(它是系统内部所有时钟脉冲的源头,且其频率最高)、弹跳消除取样信号、键盘扫描信号。 当一个 系统中需使用多种操作频率的脉冲波形时,最方便的方法之一就是利用一 计数器来产生各种需要的频率。 也就是先建立一个 N 位计数器, N 的大小根据电路的需求决定, N 的值越大,电路可以分频的次数就越多,这样就可以获得更大的频率变化,以便提供多种不同频率的时钟信号。 若输入时钟为 CLK, N位 计数器的输出为 Q[N1..0],则 Q(0)为 CLK 的 2 分频脉冲信号, Q(1)为 CLK的 4 分频脉冲信号, Q(2)为 CLK 的 8 分频脉冲信号 „„ Q(N1)为 CLK 的 2N分频脉冲信号; Q(5 DOWNTO 4)取得的是一个脉冲波形序列,其值依 00- 01- 10- 11- 00- 01 周期性变化,其变化频率为 CLK 的 32 分频。 我们利用以上规律即可得到各种我们所需要频率的信号或信号序列。 SIGNAL CLK: STD_LOGIC。 电路工作时钟脉冲 SIGNAL C_KEYBOARD: STD_LOGIC_VECTOR(1 DOWNTO 0)。 键扫信号 “ 00011011” 寄存器 SIGNAL C_DEBOUNCE: STD_LOGIC。 去抖时钟信号 2.键盘扫描电路 扫描电路的作用是用来提供键盘扫描信号的,扫描信号变化的顺序依次为1110- 1101- 1011- 0111- 1110„„ 依序的周而复始。 扫描时依序分别扫描四列按键,当扫描信号为 1110 时扫描 KY3 这一排按键;当扫描信号为 1101 室,扫描 KY2 这一排按键;当扫描信号为 1011 时,扫描 KY1 这一排按键;当扫描信号 为 0111 时,扫描 KY0 这一排按键。 每扫描一排按键就检查一次是否有键被按下,如果这排没有按键被按下就忽略,反之,如果出现被按下的键则立刻进行按键编码的动作,且将编码的结果储存于寄存器中。 扫描信号发生器 COUNTER : BLOCK IS SIGNAL Q: STD_LOGIC_VECTOR(5 DOWNTO 0)。 SIGNAL SEL: STD_LOGIC_VECTOR (3 DOWNTO 0)。 1110110110110111 BEGIN PROCESS (CLK_1K) IS BEGIN IF CLK_1K39。 EVENT AND CLK_1K =39。 139。 THEN Q = Q+1。 END IF。 C_DEBOUNCE = Q(2)。 去抖时钟信号 , 大约 125 Hz C_KEYBOARD = Q(6 DOWNTO 5)。 产生键扫信号 ***“00011011”, 大约 16 Hz C_DEBOUNCE = Q(1)。 仿真时用 C_KEYBOARD = Q(5 DOWNTO 4)。 仿真时用 CLK = Q(0)。 END PROCESS。 3.弹跳消除电路 由于设计采用的矩阵式键盘是机械开关结构,因此在开关切换的瞬间会在接触点出现信号来回弹跳的现象,对于电子密码锁这种灵敏度较高的电路这种弹跳将很可能会造成误动作输入,从而影响到密码锁操作的正确性。 弹跳现象产生的原因是,虽然每次只是按下按键一次然后放掉,然而实际产生的按键信号却不知跳动一次,经过取样信号的检查后,将会造成误判断,以为键盘按了两 次。 图 弹跳现象产生错误的抽样结果 如果调整抽样频率,弹跳现象就可以获得改善。 图 调整抽样频率后得到的抽样结果 因此必须加上弹跳消除电路,避免误操作信号的发生。 特别要注意的是,弹跳消除电路所使用的脉冲信号的频率必须比其他电路使用的脉冲信号的频率更高;通常将扫描电路的工作频率定在 24Hz 左右,而将弹跳消除电路的工作频率定在 128Hz 左右,其工作频率通常是前者的 4 倍或者更高。 DEBOUNUING : BLOCK IS BEGIN U1: DEBOUNCING PORT MAP (D_IN = KEY_IN(0) , D_OUT = C(0), CLK = C_DEBOUNCE)。 U2: DEBOUNCING PORT MAP (D_IN = KEY_IN(1) , D_OUT = C(1), CLK = C_DEBOUNCE)。 U3: DEBOUNCING PORT MAP (D_IN = KEY_IN(2) , D_OUT = C(2), CLK = C_DEBOUNCE )。 密码锁控制电路 控制锁的控制电路是整个电路的控制中心,主要 完成对数字按键输入和功能按键输入的相应控制。 1.数字按键输入的响应控制 ( 1)如果按下数字键,第一个数字会从显示其的最右端开始显示,此后每新按一个数字时,显示器上的数字必须左移一格,以便将新的数字显示出来。 ( 2)假如要更改输入的数字,可以按倒退按键来清除前一个输入的数字,或者按清除键清除所有出入的数字,再重新输入四位数。 ( 3)当输入的数字键超过预设位数时,电路不予理会,而且不再显示以后的数字。 ( 1)清除键:清除所有的输入数字,即作归零动作。 ( 2)激活电锁键:按下此键时可 将密码锁的门上锁。 ( 3)解除电锁键:按下此键会检查输入的密码是否正确,若。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。