HDL语言及源代码
摘 要:本文介绍一种利用 EDA 技术 和 VHDL 语言 ,在 MAX+PLUSⅡ环境下,设计了一种新型的智能密码锁。它体积小、功耗低、价格便宜、安全可靠,维护和升级都十分方便,具有较好的应用前景。
随着社会物质财富的日益增长,安全防盗已成为全社会问题。人们对锁的要求越来越高,既要安全可靠地防盗,又要使用方便。弹子锁由于结构上的局限已难以满足当前社会管理和防盗要求,特别是在人员经常变动的公共场所,如办公室、宾馆等地方。电子密码锁由于其自身的优势,越来越受到人们的青睐 ,但是目前使用的电子密码锁大部分是基于单片机用分离元件实现的,其成本较高且可靠性得不保证。本文采用先进的 EDA 技术,利用 MAX +PLUXⅡ工作平台和 VHDL 语言,设计了一种新型的智能密码锁。该密码锁具有密码预置和误码报警等功能,用一片 FPGA 芯片实现,从而大大简化了系统结构,降低了成本,提高了系统的保密性和可靠性。采用这种器件开发的数字系统,其升级与改进极其方便。
1、 智能密码锁的设计要求
该密码锁的密码由六位十进制数字组成,初始设定“000000” 。可由用户任意设置密码,密码输入正确时开锁,连续三次输入错误密码时系统报警。
2、 智能密码锁的总体结构
智能密码锁的系统结构框图由图1所示,它分成两大部分:控制器和处理器。整个系统的输入信号只有一个时钟脉冲CP ,输出信号有锁开信号OPEN 和报警信号ALERT。控制器中的所有按键按下时均为低电平,即低电平有效。 RESET 为 “密码设定” 信号,CLR 为 “清零” 信号,OK 为“确定”信号, TRY 为“开锁”信号,CNT 表示上一位密码正确时,控制器给出的可进行下一位二进制密码比较的信号,OPEN 为控制器给出的锁开信号, ERROR 为控制器给出的密码错误信号。处理器中有三个计数器,计数器C1用来记录输入的二进制密码比较到了第几位,计数器C2 用来记录输入的密码有几次错误,计数器C3 用来记录键入的是第几位十进制密码。密码锁可通过键盘设置6位十位进制数密码,按“确定”按键OK= 1 后,通过BCD 编码器变成24位二进制数存入寄存器1 ;详情:基于VHDL语言的智能密码锁设计
全部0条评论
快来发表一下你的评论吧 !