• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

基于FPGA的6位的电子密码锁VHDL代码Quartus AX301开发板

07/18 11:24
530
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-240304145319301.doc

共1个文件

名称:基于FPGA的6位的电子密码锁VHDL代码Quartus  AX301开发板

软件:Quartus

语言:VHDL

代码功能:

6位的电子密码锁:

1.每按下一个数字键,就输入一个数字,并在显示器上显示该数值,同时将先前输入的数据左移。此外,包含密码清除(密码右移),密码更改(可以通过按键修改新密码),密码上锁和密码解除(按下解除首先检查密码是否正确,密码正确就开锁)功能。

2.密码连续错误3次报警。

3.使用4x4矩阵键盘输入数字。

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

本代码已在AX301开发板(加4x4矩阵键盘)验证,AX301开发板如下,其他开发板可以修改管脚适配:

AX301开发板.png

设计文档:

1、工程文件

2、程序文件

3、程序编译

4、RTL图

5、管脚分配

6、仿真图

报警仿真

密码输入仿真

控制仿真

部分代码展示:

LIBRARY ieee;
   USE ieee.std_logic_1164.all;
--显示模块
ENTITY display IS
   PORT (
      clk       : IN STD_LOGIC;
      password  : IN STD_LOGIC_VECTOR(23 DOWNTO 0);--输入密码
      HEX0      : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--数码管显示密码
      HEX1      : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--数码管显示密码
      HEX2      : OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--数码管显示密码
      HEX3      : OUT STD_LOGIC_VECTOR(7 DOWNTO 0) --数码管显示密码
   );
END display;
--一共4位密码--输入数据显示
ARCHITECTURE behave OF display IS
BEGIN
   --数码管译码
   PROCESS (clk)
   BEGIN
      IF (clk'EVENT AND clk = '1') THEN
         CASE password(15 DOWNTO 12) IS--密码第1位
            WHEN "0000" =>
               HEX3 
               HEX3 
               HEX3 
               HEX3 
               HEX3 
               HEX3 
               HEX3 
               HEX3 
               HEX3 
               HEX3 
         END CASE;
      END IF;
   END PROCESS;
   --数码管译码
   PROCESS (clk)
   BEGIN
      IF (clk'EVENT AND clk = '1') THEN
         CASE password(11 DOWNTO 8) IS--密码第2位
            WHEN "0000" =>
               HEX2 
               HEX2 
               HEX2 
               HEX2 
               HEX2 
               HEX2 
               HEX2 
               HEX2 
               HEX2 
               HEX2 
         END CASE;
      END IF;
   END PROCESS;
   --数码管译码
   PROCESS (clk)
   BEGIN
      IF (clk'EVENT AND clk = '1') THEN
         CASE password(7 DOWNTO 4) IS--密码第3位
            WHEN "0000" =>
               HEX1 
               HEX1 
               HEX1 
               HEX1 
               HEX1 
               HEX1 
               HEX1 
               HEX1 
               HEX1 
               HEX1 
         END CASE;
      END IF;
   END PROCESS;

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=682

  • 2-240304145319301.doc
    下载

相关推荐