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

4x4矩阵键盘设计VHDL代码Quartus仿真

08/14 08:27
853
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-240RQG342404.doc

共1个文件

名称:4x4矩阵键盘设计VHDL代码Quartus仿真

软件:Quartus

语言:VHDL

代码功能:

4x4矩阵键盘设计

1、设计4x4矩阵键盘控制代码;

2、可以通过键盘依次输入4位数;

3、将输入的数据显示在4个数码管上。

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

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. 仿真图

矩阵键盘模块仿真

数据移位模块仿真

数码管显示模块仿真

部分代码展示:

LIBRARY ieee;
   USE ieee.std_logic_1164.all;
   --矩阵键盘
ENTITY key_4x4 IS
   PORT (
      clk_100KHz  : IN STD_LOGIC;
      reset       : IN STD_LOGIC;
      L_row       : IN STD_LOGIC_VECTOR(3 DOWNTO 0);--行 
      H_col       : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);--列 
      key_number  : OUT STD_LOGIC_VECTOR(15 DOWNTO 0)--按键键值
   );
END key_4x4;
ARCHITECTURE trans OF key_4x4 IS
   
   CONSTANT s_L_all        : INTEGER := 0;
   CONSTANT s_L_row1       : INTEGER := 1;
   CONSTANT s_L_row2       : INTEGER := 2;
   CONSTANT s_L_row3       : INTEGER := 3;
   CONSTANT s_L_row4       : INTEGER := 4;
   CONSTANT s_LH           : INTEGER := 5;
   
   SIGNAL state            : INTEGER:= s_L_all;--状态标志 
   SIGNAL key_flag         : STD_LOGIC := '0';--按键标志位 
   SIGNAL H_col_reg        : STD_LOGIC_VECTOR(3 DOWNTO 0) := "0000";--寄存扫描列值 
   SIGNAL L_row_reg        : STD_LOGIC_VECTOR(3 DOWNTO 0) := "0000";--寄存扫描行值 
   SIGNAL H_and_L : STD_LOGIC_VECTOR(7 DOWNTO 0);
   
   -- Declare intermediate signals for referenced outputs
   SIGNAL H_col_sig      : STD_LOGIC_VECTOR(3 DOWNTO 0);
   SIGNAL key_number_sig : STD_LOGIC_VECTOR(15 DOWNTO 0);

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

  • 2-240RQG342404.doc
    下载

相关推荐