INFORME DE LABORATORIO DE DISEÑO DE CIRCUITOS DIGITALES
CONTROL PARA CAMINO DE ACCESO DE UN SEMAFORO
INTEGRANTES:
JORGE MIGUEL MALDONADO GONZALEZ - 201521054 EFRAIN PATIÑO –
UNIVERSIDAD DEL MAGDALENA FACULTAD DE INGENIERÍA PROGRAMA DE INGENIERÍA ELECTRÓNICA DISEÑO DE SISTEMAS DIGITALES SANTA MARTA, D.T.C.H. 2019-I
INTRODUCION
En el presente informe, encontraremos plasmadas la experiencia de laboratorio del curso de Diseños de Sistema Digitales, en donde se realizó un diseño para la detección del cruce de vehículos en un semáforo el cual se controlará con la lógica propuesta en el problema presentado y el programa determina cuando haya paso en el carril y en la implementación en la FPGA muestra la lógica presentada mediante de leds. En el desarrollo de este laboratorio se demostró los conocimientos adquiridos en el desarrollo del curso Diseño de Sistemas Digitales, y también se utilizó una FPGA para la implementación del diseño realizado.
PROBLEMA PRESENTADO
ANALISIS DEL PROBLEMA
PROCEDIMIENTO Para el desarrollo de nuestro diseño de circuito, se declararon cuatro entradas A, B, C y D, como los sensores el Utilizando las salidas de los sensores A, B, C y D como entradas diseñe un circuito lógico para controlar los semáforos E/O y N/S y que pasen a ALTO cuando la luz correspondiente se debe poner verde.
CODIGO ESTRUCTURAL: library IEEE; use IEEE.STD_LOGIC_1164.ALL; -- Uncomment the following library declaration if using -- arithmetic functions with Signed or Unsigned values --use IEEE.NUMERIC_STD.ALL; -- Uncomment the following library declaration if instantiating -- any Xilinx primitives in this code. --library UNISIM; --use UNISIM.VComponents.all; entity punto3 is Port ( A : in STD_LOGIC; B : in STD_LOGIC; C : in STD_LOGIC; D : in STD_LOGIC; E_O : out STD_LOGIC; N_S : out STD_LOGIC); end punto3; architecture Behavioral of punto3 is begin process(A,B,C,D) begin if A='0' and B='0' and C='1' and D='1' then E_O <= '1'; elsif A='0' and B='0' and C='1' and D='0' then E_O <= '1'; elsif A='0' and B='0' and C='0' and D='1' then E_O <= '1'; elsif A='1' and B='1' and C='0' and D='0' then E_O <= '1'; elsif A='1' and B='0' and C='0' and D='0' then N_S <= '1'; elsif A='0' and B='1' and C='0' and D='0' then N_S <= '1';
elsif A='0' and B='0' and C='0' and D='0' then E_O <= '1'; else E_O <= '0'; N_S <= '0'; end if; end process; end Behavioral; CODIGO COMPORTOMENTAL: library IEEE; use IEEE.STD_LOGIC_1164.ALL; -- Uncomment the following library declaration if using -- arithmetic functions with Signed or Unsigned values --use IEEE.NUMERIC_STD.ALL; -- Uncomment the following library declaration if instantiating -- any Xilinx primitives in this code. --library UNISIM; --use UNISIM.VComponents.all; entity semaforo_compuerta is Port ( A : in STD_LOGIC; B : in STD_LOGIC; C : in STD_LOGIC; D : in STD_LOGIC; E_O : out STD_LOGIC; N_S : out STD_LOGIC); end semaforo_compuerta; architecture Behavioral of semaforo_compuerta is begin E_O <= (C and B) or ((not(A)) and (not(B))); N_S <= (B and (not(C)) and (not(D))) or (A and (not(C)) and (not(D))); end Behavioral;
CONCLUSIONES Luego de haber realizado nuestro laboratorio, podemos concluir que los conceptos adquiridos en el curso de Diseño de Sistemas Digitales son fundamentales para el desarrollo profesional en el campo de la ingeniería electrónica. Con este laboratorio, afianzamos nuestros conocimientos, en la creación e implementación de diseños digitales, lo cual nos muestra físicamente el comportamiento de nuestros programas y lo que queremos decirle a la FPGA ya que queríamos demostrar el comportamiento del semáforo a través de una serie de condiciones ya establecidas y así mismo poder simularlo.