Lectura De Un Teclado Matricial En Vhdl

1245 palabras 6 páginas
LABORATORIO Nº 3
LECTURA DE UN TECLADO MATRICIAL EN VHDL

1. OBJETIVO GENERAL * Diseñar en vhdl un código que lea un teclado matricial.

1.1 OBJETIVOS * Implementar la lectura de un teclado matricial a un display 7 segmentos. * Combinar un diagrama en esquemático con un codigo en vhdl.

2. DISEÑO DEL PROGRAMA

FIGURA 2
CONFIGURACION INTERNA DEL TECLADO
COLUMNAS
FILAS
FIGURA 1
TECLADO MATRICIAL

Para realizar esta practica utilizamos un teclado matricial de 4 x 4 (figura 1), es decir de cuatro filas y cuatro columnas, que nos da un total de 16 teclas, para manejar el teclado es necesario tener líneas de entrada y líneas de salida, en este caso se utilizo las líneas de entrada como las columnas, y las líneas de
…ver más…

iento de tecla pulsada

ent_tecla<=
"0000" when corre_fil="1---" and corre_col="--1-" and act='1' else--0
"0001" when corre_fil="---1" and corre_col="---1" and act='1' else--1
"0010" when corre_fil="---1" and corre_col="--1-" and act='1' else--2
"0011" when corre_fil="---1" and corre_col="-1--" and act='1' else--3
"0100" when corre_fil="--1-" and corre_col="---1" and act='1' else--4
"0101" when corre_fil="--1-" and corre_col="--1-" and act='1' else--5
"0110" when corre_fil="--1-" and corre_col="-1--" and act='1' else--6
"0111" when corre_fil="-1--" and corre_col="---1" and act='1' else--7
"1000" when corre_fil="-1--" and corre_col="--1-" and act='1' else--8
"1001" when corre_fil="-1--" and corre_col="-1--" and act='1' else--9
"1010" when corre_fil="---1" and corre_col="1---" and act='1' else--A
"1011" when corre_fil="--1-" and corre_col="1---" and act='1' else--b
"1100" when corre_fil="-1--" and corre_col="1---" and act='1' else--C
"1101" when corre_fil="1---" and corre_col="1---" and act='1' else--d
"1110" when corre_fil="1---" and corre_col="---1" and act='1' else--*
"1111" when corre_fil="1---" and corre_col="-1--" and act='1' ; --#

end Behavioral;

DECODIFICADOR BCD entity decodificador is Port ( ent_cod: in STD_LOGIC_VECTOR (3 downto 0); sal_dec : out STD_LOGIC_VECTOR (6 downto 0)); end decodificador;

architecture Behavioral of decodificador is begin sal_dec<=
"0000001" when ent_cod="0000"

Documentos relacionados