有谁有eda电子密码锁

来源:百度知道 编辑:UC知道 时间:2024/05/26 10:51:01
采用vhdl语言编写的,最好有各个单元的源程序。谢谢!
我的邮箱是qpw0628@163.com

不知道合用不,自己改改吧

1、设计一个密码锁的控制电路,当输入正确代码时,输出开锁信号以推动执行机构工作,用红灯亮、绿灯熄灭表示关锁,用绿灯亮、红灯熄灭表示开锁;
2、在锁的控制电路中储存一个可以修改的4位二进制代码,当开锁按钮开关的输入代码等于储存代码时,开锁;
3、 从第一个按钮触动后的30秒内若未将锁打开,则电路长报警5S,若输入密码错误1或2次,则每次短报警1S,若输错三次密码则长报警。

library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity lock is
port(clk_1k:in std_logic; --1024HZ频率输入管脚
enter_2,enter_1: in std_logic; --设密码确认及输入密码确认
datain:in std_logic_vector(3 downto 0); --密码数据输入
speaker:out std_logic; --喇叭
led_g,led_r:out std_logic); --绿灯及红灯
end entity lock;

architecture behave of lock is
signal ram:std_logic_vector(3 downto 0);
signal judge:std_logic;
signal clk:std_logic;
signal turn_on,turn_off:std_logic;
begin
process(Clk_1k)
variable clk_count:std_logic_vector(8 downto 0):="000000000";