Академический Документы
Профессиональный Документы
Культура Документы
TECLADO MATRICIAL
SISTEMAS DIGITALES
Introduccin
El Codigo BCD:
PROCEDIMIENTO.
1. Se realizo la descripcin de cada un de
las tablas de verdad de cada circuito a
implemntar (circuito 1,circuito2 y siete
segmentos)
2. De los mapas de karnauagh se hizo la
respectiva simplificacin de funciones
boleanas para la implementacion de los
circuitos.
3. Se implementaron y se empaquetaron
cada uno de los circuitos en el programa
xilin para su respectivo unin a los
circuitos, divisor de frecuencia y cdigo
matricial.
4. Se comprobaron cada uno
de los
cicuitos
para
su
correcto
funcionamiento.
El displays
segmentos,
es
un componente que se utiliza para la
representacin de nmeros en muchos
dispositivos electrnicos. Cada vez es ms
frecuente encontrar LCDs en estos equipos
(debido a su bajsima demanda de energa),
todava hay muchos que utilizan el display de
7 segmentos por su simplicidad. Este
elemento se ensambla oarma de manera que
se pueda activar cada segmento (diodo LED)
por separado logrando de esta manera
combinar los elementos y representar todos
los nmeros en el display (del 0 al 9). El
display de 7 segmentos ms comn es el
de color, por su facilidad de visualizacin.
OBJETIVO DE LA PRCTICA
Tiempo
t1
t2
t3
t4
Genera
0001
0010
0100
1000
Z0
0
0
1
1
Z1
0
1
0
1
Diseo circuito 1
Z0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
A
B
C
D
Z0
0
0
0
0
X
0
0
0
1
0
0
0
1
0
0
0
0
1
1
0
0
1
0
0
1
0
1
0
1
0
0
1
1
0
0
0
1
1
1
0
1
0
0
0
1
1
0
0
1
0
1
0
1
0
0
1
0
1
1
0
1
1
0
0
1
1
1
0
1
0
1
1
1
0
0
1
1
1
1
0
Tabla 2. Tabla de verdad del circuito 1.
Z1
X
0
1
0
0
0
1
0
1
0
1
0
0
0
1
0
Para Z1
ab\cd
00
01
11
10
BD
Z1= C D+
00
X
1
1
1
00
X
0
0
1
01
0
0
0
0
01
0
0
0
0
11
0
0
0
0
11
0
0
0
0
N
D
#
0
*
C
9
8
7
B
6
5
4
A
3
2
1
Y0= AC + CD+ AB D+ A B D
Z0= CD
Z1
Z2
Z3
Y0
Y1
Y2
Y3
0
0
0
1
1
0
1
0
0
1
1
1
1
1
0
1
0
0
0
0
0
0
1
1
1
1
1
0
1
0
0
1
1
0
0
1
0
1
1
0
0
1
1
1
0
1
0
0
0
1
1
1
0
1
1
1
0
0
0
1
0
1
1
0
0
1
0
1
1
0
0
1
0
0
1
0
1
0
1
1
0
1
0
0
1
0
0
1
0
1
0
1
0
1
0
0
1
1
1
1
0
0
0
1
0
1
1
1
0
0
0
1
Tabla 3. Tabla de verdad del circuito 2.
11
1
0
0
0
10
0
1
0
0
11
1
1
0
1
10
0
0
0
1
11
1
1
0
0
10
0
0
1
0
11
10
Para Y1
10
0
0
0
0
ab\cd
00
01
00
1
1
01
1
0
11
0
0
10
0
1
D+ ACD+
CD + A B C
Y1= B
A
10
1
1
1
1
Para Y2
ab\cd
00
01
00
0
1
01
0
0
11
1
1
10
1
1
BD
Y2= A C+ AB D+ A CD + A
Para Y3
ab\cd
Diseo circuito 2
3
00
01
00
01
11
10
Y3=
1
0
0
1
1
1
1
0
0
1
1
0
Para Sg
0
0
0
1
S g=
+ A BD
BD + ABC
Resultados
Siete segmentos
Y0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
Y1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
Y2 Y3 Sa Sb Sc Sd
0
0
1 1
1 1
0
1
0 1
1 0
1
0
1 1
0 1
1
1
1 1
1 1
0
0
0 1
1 0
0
1
1 0
1 1
1
0
1 0
1 1
1
1
1 1
1 0
0
0
1 1
1 1
0
1
1 1
1 1
1
0
1 1
1 0
1
1
0 0
1 1
0
0
1 0
0 1
0
1
0 1
1 1
1
0
1 0
0 1
1
1
1 0
0 0
Tabla 3. Tabla de verdad.
Se
1
0
1
0
0
0
1
0
1
0
1
1
1
1
1
1
Sf
1
0
0
0
1
1
1
0
1
1
1
1
1
0
1
1
Sg
0
0
1
1
1
1
1
0
1
1
1
1
0
1
1
1
Tenemos siete salidas Sa, Sb, Sc, Sd, Se, Sf, Sg para obtener el
circuito lo simplificamos atravez de mapas de karnagh:
Para Sa
A
. B . D+ A . B. C
B . D+ A . C+ B .C + A . D+
Para Sb
Sb=
. C . D+ A C D
A . B+ B . D+ A . C . D+ A
Para Sc
Sc=
. D+ A . B+ A B
A .C + A . D+ C
Para Sd
+ A . B . D+ B . C . D+B . C . D+ B .C . D
Sd= A . C
Para Se
Para Sf
Sf=
A B+
AD + A
BC
B C +C D+
A . C+ A . B
Se= B . D+C . D+
A B+
A . C+ A
. B C
C . D+B D+
4
else
counter <= counter + 1;
temporal <= temporal;
end if;
end if;
end process;
end Behavioral;
if (x='0') then
siguiente<=s3;
else
siguiente<=s1;
end if;
when s3 =>
Z<="0001";
if (x='0') then
siguiente<=s0;
else
siguiente<=s2;
end if;
end case;
CDIGO FMS
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity FSM_main is
Port ( x : in STD_LOGIC;
clk : in STD_LOGIC;
reset : in STD_LOGIC;
Z : out STD_LOGIC_VECTOR (3 downto 0));
end FSM_main;
end process;
architecture Moore of FSM_main is
end Moore;
type estados is (s0,s1,s2,s3);
signal actual, siguiente: estados := s0;
begin
Concluciones.
Se tuvieron problemas en laimplementacion delcircuito
completo,ya que al hacer la respectiva implementacin en la
tarjeta nomostrabaningun resultado correspondiente a la
tecla, presionada.Para realizar la correccin ,primero se
comprob que la asignacin del teclado y el display fuera
correcta probndolo de manera individual cada uno de los
circuitos, el cual no mostraron ningn error.
Bibliografa
Boylestad, R. (s.f.). Electrnica, Teora de Circuitos .
Obtenido de
ftp://ftp.unicauca.edu.co/Facultades/FIET/DEIC
/Materias/Electronica_Basica/electronica_teoria_
de_circuitos_6_ed_boylestad.pdf
Buedo, S. L. (2012). Introduccin al lenguaje descripcin
de hardware VDHL. Obtenido de
http://www.iearobotics.com/tmp/seminariosvhdl.pdf
process(actual,x)
begin
case actual is
when s0 =>
Z<="1000";
if (x='0') then
siguiente<=s1;
else
siguiente<=s3;
end if;
when s1 =>
Z<="0100";
if (x='0') then
siguiente<=s2;
else
siguiente<=s0;
end if;
when s2 =>
Z<="0010";