电子密码锁的EDA设计

2016-05-30 00:00:00少芬 EDA技术培训

  随着社会物质财富的日益增长,安全防盗已成为全社会关注的问题。EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。

  EDA在通信行业(电信)里的另一个解释是企业数据架构,EDA给出了一个企业级的数据架构的总体视图,并按照电信企业的特征,进行了框架和层级的划分。 EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪60年代中期从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。利用EDA工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出IC版图或PCB版图的整个过程的计算机上自动处理完成。现在对EDA的概念或范畴用得很宽。包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有EDA的应用。目前EDA技术已在各大公司、企事业单位和科研教学部门广泛使用。例如在飞机制造过程中,从设计、性能测试及特性分析直到飞行模拟,都可能涉及到EDA技术。

  1 电子密码锁的基本功能

  电子密码锁主要实现的功能包括:

  (1)数码输入:按下一个数字键,其对应的数字就显示在最右边的数码管上,同时将先前输入的所有数字向左移动一位。设计密码为4位,系统只能显示前4位输人的数码。

  (2)数码清除:当按下清除键时,清除前面输入的所有值,并显示为“----”。

  (3)密码解除:按下55#键,可以将电子密码锁的旧密码解除。

  (4)密码更改:将旧密码解除之后,可以进行密码更改。输入任意四位密码数字,再按#号就可以将输入的数码当作新的密码。

  (5)密码上锁:输入新的密码之后,按下11#键,可以进行密码上锁操作。

  (6)密码解锁:按下99#键,再输入数码;如果输入与系统储存密码一致,密码锁就能开启;否则不能解锁。

  2 电子密码锁的结构原理

  2.1 电子密码锁的整体结构

  电子密码锁的整体结构如图1所示,它包括密码锁输入模块、控制模块和显示模块等。

电子密码锁的EDA设计

  2.2 密码锁输入模块

  密码锁输入模块的电路框图如图2所示,它由时序产生电路、键盘扫描电路、弹跳消除电路、键盘译码电路和按键存储电路组成。

电子密码锁的EDA设计

  时序产生电路用于产生电路中三种不同频率的工作脉冲波形,包括系统时钟信号、弹跳消除取样信号和键盘扫描信号。

  键盘电路可提供键盘扫描信号。该信号由ky3~ky0进入键盘,其变化的顺序为1110-1101-1011-0111-1110……周而复始。扫描信号 0111代表扫描的为*、0、#这一排按键,当*这个按键被按下时,由kx2~kx0读出的值为011。按键位置的数码关系如表1所列。

电子密码锁的EDA设计

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

电子密码锁的EDA设计

  对于键盘译码电路,由于图2中的键盘按键分为数字按键和功能按键,每一个按键可负责不同的功能,而键盘所产生的输出(也就是扫描回复信号)却无法直接拿来用作密码锁控制电路的输入,所以必须由键盘译码电路来规划每个按键的输出形式,以便执行相应的动作。

  键盘存储电路可将每次扫描产生的新按键数据存储下来,因此新数据可能会覆盖前面的数据,所以需要一个按键存储电路,以将整个键盘扫描完毕的结果记录下来。

  图4所示是密码锁输入模块的仿真波形,图中,数字键数据“0、1、2、3、4、5、6、7、8、9”和功能键数据“0100、0001”所得到的输出不同,由此可证明密码锁输入模块的正确性。

电子密码锁的EDA设计

[EDA技术培训]相关推荐

[EDA技术培训]相关栏目推荐
查看更多
上一篇:PCB文件PROTEL转换ALLEGRO的技巧 下一篇:LabView开发嵌入式应用的技巧