一、前言电子密码锁的使用体现了人们的消费水平、保安意识和科技水平的提高,而且避开了携带甚至丢失钥匙的麻烦
目前设计密码锁的方法很多,例如传统的 PCB 板设计、用 PLC 设计或者单片机设计等等
而用 VHDL 可以更加快速、灵活地设计出符合各种要求的密码锁,优于其他设计方法
VHDL 是一种符合 IEEE标准的硬件描述语言,其最大的特点是借鉴高级程序语言的功能特性,对电路的行为与结构进行高度的抽象化、法律规范化的形式描述,并对设计的不同层次、不同领域的模拟验证与综合优化等处理,使设计过程延到高度自动化
二、方案设计 密码锁的的构成主要由密码输入、密码设置、比较控制和报警部分组成,此外密码锁必须能够保存已设置的密码,因而需要一个寄存器来保存密码,同时由于控制电路和报警电路要用到不同的时钟,因而需要一个时序产生电路来生成需要的不同信号,采纳分频方法实现
根据密码锁的电路特点,选用的是实验箱的模式 6 电路,根据电路功能,在这里设计的密码锁以 4 位 2 进制代码作为密码的电子密码锁
其原理框图如下所示:图一、电子密码锁原理框图三、功能模块的实现1、时序电路 在密码锁的电路中,输入计时、报警计时需要的 1HZ 的时钟脉冲信号,而驱动蜂鸣器工作需要的很高频率的脉冲信号,因而这里采纳输入一个高频脉冲(1024HZ)信号来驱动蜂鸣器,采纳分频的方法得到 1HZ 的计时脉冲,程序如下:process(clk_1k) variable cnt1:integer:=0;beginif rising_edge(clk_1k) thenif cnt1=512 thenclk_1〈=not clk_1;cnt1:=0;else cnt1:=cnt1+1;end if;end if;end process;程序说明:clk_1k 为输入的 1024HZ 高频脉冲,cnt 为分频得到的 1HZ 计