7 Segmentos
7 Segmentos
7 Segmentos
MULTIPLEXOR BCD DE 7
SEGMENTOS
Dennys Alejandro – Endara
Valdiviezo
dennys.endara@unach.edu.ec,
Kevin David – Duchi
Caguana
kevin.duchi@unach.edu.ec
Franklin Adrián – Escobar
Méndez
franklin.escobar@unach.edu.ec.
RESUMEN
El presente informe de laboratorio tiene como objetivo
principal la implementación de BCD de 7 segmentos,
combinando con la tarjeta Zybo con los switches, botones,
pulsadores para de esa manera dar resultados en el
digitalizador que se ha armado en el protoboard. Todos los
resultados obtenidos se ven reflejados gracias a la
programación y a las ecuaciones realizadas en el laboratorio
Figura 1 (VIVADO)
con el programa Vivado.
Vivado es un software de diseño de circuitos
integrados desarrollado por Xilinx, una empresa
KEYWORDS. – Zybo Z7, Digitalizador de 7 segmentos,
líder en tecnología de FPGA. Este software es
Protoboard.
utilizado por ingenieros y diseñadores para crear y
I. Introducción programar circuitos digitales complejos en
Es un display de siete segmentos números en binario que van dispositivos FPGA de Xilinx.
desde el 0 al 9. Es un sencillo circuito que se puede
encadenar con otros para mostrar los dígitos que sean Vivado ofrece una amplia gama de herramientas
necesarios. Esto es lo que se llama un decodificador BCD de de diseño y verificación, incluyendo un editor de
4 bits para un display de 7 leds, en este caso. que es un código, simulador de circuitos, generador de
circuito que convierte las señales de entrada de 4 bits en una bloques IP, depurador y analizador de
señal de salida de 7 bits. Un decodificador es un circuito rendimiento. También proporciona una interfaz
lógico que convierte un código binario de entrada de n bits gráfica de usuario intuitiva que facilita el diseño y
en m líneas de salida de tal manera que exclusivamente una la implementación de los proyectos.
de esas líneas se activa (por uno o por cero) para una
combinación de entrada. Una de las características más destacadas de
Vivado es su capacidad para optimizar el
Las de entrada son números en binario del 0 al 9. Mientras rendimiento del circuito mediante la utilización de
que las de salida simplemente encienden o apagan los técnicas avanzadas de síntesis y optimización.
segmentos para pintar el número que toque. Esto permite a los diseñadores crear circuitos más
eficientes y rápidos, lo que se traduce en un mejor
Cada una de las salidas digitales (a, b, c, d, e, f, g) se puede rendimiento del sistema final.
representar en una tabla de verdad como se muestra en la Como programar en vivado
2
Para programar en Vivado, sigue estos pasos:
Figura 4 (Display de 7
segmentos)
En el Algebra de Boole esta es una suma. Esta
compuerta permite que con cualquiera de sus entradas
que este en estado binario 1, su salida pasara a un
estado 1 también. No es necesario que todas sus
entradas estén accionadas para conseguir un estado 1 a
la salida, pero tampoco causa algún inconveniente.
3
Para lograr un estado 0 a la salida, todas sus entradas deben pueden servir como guía, pero siempre debes de
estar en el mismo valor de 0. Se puede interpretar como dos manejar cada situación en el momento ya que cada
interruptores en paralelo, que sin importar cual se accione, diseño tiene sus propias especificaciones y
características específicas.
será posible el paso de la corriente.
Código de programación en VHDL
Para polarizar un display cátodo común, siga estos pasos:
entity DisplayBCD is
1. Identifique la ubicación de los pines del display Port ( D : in STD_LOGIC;
cátodo común. Por lo general, los pines se encuentran en la C : in STD_LOGIC;
parte inferior del dispositivo y están numerados de izquierda B : in STD_LOGIC;
a derecha. A : in STD_LOGIC;
2. Conecte el pin 1 del display al polo negativo de una y0 : out STD_LOGIC;--a
fuente de alimentación de corriente continua (CC), y y1 : out STD_LOGIC;--b
conecte un resistor de 220 ohmios al pin 2. El otro extremo y2 : out STD_LOGIC;--c
del resistor debe conectarse al polo positivo de la fuente de y3 : out STD_LOGIC;--d
alimentación. y4 : out STD_LOGIC;--e
3. 3. Conecte el pin 3 a través de una resistencia de 1 y5 : out STD_LOGIC;--f
kilohmio al polo positivo de la fuente de alimentación. y6 : out STD_LOGIC);--g
4. Conecte el pin 4 a través de una resistencia de 1 end DisplayBCD;
kilohmio al polo negativo de la fuente de alimentación. architecture Behavioral of DisplayBCD is
5. Conecte el pin 5 a través de una resistencia de 1 begin
kilohmio a un potenciómetro, y conecte el otro extremo del y0<=((NOT B AND NOT D)OR(B AND D)OR C OR
potenciómetro al polo positivo de la fuente de alimentación. A);
6. Ajuste el potenciómetro para obtener el brillo deseado y1<=((NOT C AND NOT D) OR (C AND D) OR
en el display cátodo común. (NOT B));
Es importante tener en cuenta que las especificaciones para y2<= B OR D OR (NOT C);
polarizar un display cátodo común pueden variar según la y3<=(NOT B AND C)OR(B AND NOT C AND
marca y modelo del dispositivo, por lo que es recomendable D)OR(C AND NOT D)OR(NOT B AND NOT D);
consultar el datasheet del fabricante para obtener Y4<=(C and not D)or(not B and not D);--CD'+B'D'
información específica. y5<=(not C and not D)or (B and not C)or(B and not
D)or A;
III. Procedimiento y6<=(not B and C)or(B and not C)or(C and not D)or
Procedimiento para empezar programar en VHDL A;
orientado a sistemas digitales
1. Crear un proyecto: En Vivado, crea un nuevo proyecto y Codigo del XDC
selecciona la placa de desarrollo y las características que
necesitas para tu sistema digital. ##Switches
2. Crear un archivo VHDL: Crea un archivo VHDL en el LVCMOS33 } [get_ports { D }];
proyecto y nómbralo según tu necesidad, luego escríbelo con LVCMOS33 } [get_ports { C }];
un editor de texto o con ayuda de alguna herramienta LVCMOS33 } [get_ports { B }];
especifica de diseño de circuitos. LVCMOS33 } [get_ports { A }];
3. Diseñar el circuito: En el archivo VHDL, empieza a escribir Tabla de BCD (7 segmentos)
la descripción del circuito de tu sistema digital, utilizando los
componentes específicos de VHDL.
4. Simulación del circuito: Una vez que vinculaste nueva
funcionalidad a tú archivo VHDL, procede a simularla para
ver si todo funciona bien y si se cumplen los requisitos del
sistema.
5. Implementación: Después de la simulación, implementa el
circuito en tu placa de desarrollo digital. Vivado sintetizará el
diseño VHDL, generará un mapa de bits y transferirá el diseño
a la placa de FPGA.
6. Prueba: Ahora que tu sistema digital está instalado en tu
placa de desarrollo, debes probarlo y verificar que funcione
correctamente.
7. Depuración: Si hay errores o defectos en el comportamiento
del sistema digital, depura el código VHDL para corregirlos.
8. Iteraciones: Repite los pasos anteriores de diseño,
simulación, implementación, pruebas y depuración. Esto
ayudará a mejorar la calidad del sistema digital implementado
poco a poco.
Es importante mencionar que estos son pasos generales que te Ecuaciones para la elaboración de la programación
4
de las salidas
1. B'D'+BD+C+A
2. C'D'+CD+B'
3. B+D+C'
4. B'C+BC'D+CD'+B'D' Simulación
5. CD'+B'D'
6. C'D'+BC'+BD'+A
7. B'C+BC'+CD'+A
o Ejercicio
Diagrama Lógico
5
IV. Conclusiones
La implementación del comparador de 4 bits en
VHDL es una tarea relativamente sencilla para
aquellos que tienen conocimientos básicos de
programación en VHDL y el uso de herramientas
de diseño digital como Vivado. La clave del éxito
es tener una comprensión clara de los requisitos y
objetivos del diseño, así como una sólida
comprensión de las puertas lógicas, los
multiplexores y otros componentes digitales
básicos.
VI. Biografías
Dennys Alejandro Endara Valdiviezo, tengo 19 años,
nací en la Ciudad de Riobamba el
16 de febrero del 2004, siempre me
ha gustado la rama de la
electrónica, mis estudios los realicé
en el colegio Santo Tomás Apostol
Riobamba (Salesianos),
actualmente estoy estudiando
Ingeniería en
telecomunicaciones en la
Universidad Nacional de
Chimborazo (UNACH).
VII. Bibliografía
[1] (accedido el 18 de abril de 2023).
[2] KAIZEN Instituto de Investigación. "Punta lógica
con voltímetro". Instituto de Investigación Kaizen –
Aprendokaizen
Online. https://www.aprendokaizen.online/punta-
logica- con-voltimetro/ (accedido el 18 de abril
de 2023).
[3] "DIG-800: Entrenador de electrónica digital -
MONDRAGON LINGUA-ALECOP".
MONDRAGON LINGUA-
ALECOP. https://www.alecop.com/equipamiento-
didactico/areas/electrotecnia/equipos-didacticos-de-
electronica-basica-serie-800/equipo-didactico-de-
electronica-digital-dig-800/ (accedido el 18 de abril
de 2023).
[4] Digilent. (s.f.). Zybo Z7: Zynq-7000 ARM/FPGA
SoC Development Board. Recuperado el 12 de
mayo de 2021
[5] Xilinx. (s.f.). Vivado Design Suite. Recuperado el
12 de mayo de 2021
[6] Chen, H., Li, X., & Wang, Y. (2017). A high-
frequency JFET amplifier design based on
LTspice. Journal of Physics: Conference Series,
841(1), 012031. doi: 10.1088/1742-
6596/841/1/012031
2