Vhdl. Prodesador De Una Vitroceramica.

Páginas: 9 (2221 palabras) Publicado: 21 de mayo de 2012
Manuel Corrales Rodriguez
2º Grado Ingenieria Electronica Industrial
Práctica Nº4: Diseño de un procesador de control parra una placa vitroceramica de cocina mediante un dispositivo lógico programable.

Se desea diseñar el control de una placa vitrocerámica de cocina. La placa consta de 4 fuegos (resistencias) y una botonera de control tal y como se muestra en la figura.


Elfuncionamiento de la placa es el siguiente:
Cuando el usuario pulsa el botón de encendido (ON), la vitrocerámica debe encenderse. Seguidamente, el usuario elige el fuego que quiere activar mediante el pulsador EF (Elegir Fuego). En el display de la vitrocerámica (visualizador situado más a la izquierda) deberán aparecer de forma cíclica los números desde el 1 hasta el 4. El usuario, una vez que puedever en el display el número del fuego que quiere modificar, suelta el pulsador EF, pasando seguidamente a pulsar el botón “MAS” o el “MENOS” hasta que fije el nivel de calor (entre 0 y 9) en ese fuego. En cualquier momento el usuario puede elegir un fuego y modificar su nivel calorífico. Una vez que el usuario pulse de nuevo el botón ON, la vitrocerámica se apagará y pondrá a 0 todos los fuegos.El circuito de control debe ser un procesador de propósito específico que use como unidad operativa. Que constará de los siguientes elementos:
• Contadores de nivel de fuego (CONT1 a CONT4): Cada uno de estos contadores de década pueden contar hacia delante o hacia atrás, y cada uno almacena el nivel de intensidad fijado a cada fuego.
• Contador que permite elegir el fuego sobre elque actuar (CONTF). Este contador cuenta de 1 a 4 y permite visualizar sobre qué fuego queremos actuar.
• Decodificador para habilitar uno de los contadores de nivel de fuego. Este contador habilita sólo el contador de nivel de fuego del fuego elegido por el usuario (que es el que obtenemos de la salida de CONTF).
• Multiplexor que muestra el número de fuego elegido o bien un cero, en el caso deque la vitrocerámica se encuentre apagada.

Las salidas de esta unidad operativa son:
• A, B, C, D: Niveles de intensidad (4 bits en BCD) de cada uno de los fuegos.
• Numero_fuego: Valor en binario del número de fuego elegido o cero en el caso de que la vitrocerámica esté apagada.

Las entradas son señales de control que debe recibir desde la unidad de control a diseñar:
•Reloj_1hz: Es necesario diseñar un circuito que obtenga a partir del reloj de la placa de desarrollo (50 Mhz) un reloj de un ciclo/s (1 Hz) que se aplicará a todos los contadores, para que esa sea la frecuencia de cambio.
• Activar_elegir_fuego: Esta línea debe valer ‘1’ cuando el usuario quiere elegir un fuego para modificar su valor de intensidad.
• Activar_vitro: Esta línea es activa a nivelbajo. Debe valer ‘0’ cuando queramos activar la vitrocerámica (es decir, cuando, estando apagada, el usuario pulsa ON para encenderla)
• Habilitar_deco: esta línea debe valer ‘1’ cuando el usuario quiera modificar el nivel de intensidad del fuego elegido (pulsando los botones ‘MAS’ y ‘MENOS’).
• UD: Línea que debe valer ‘1’ cuando queramos elevar el nivel de intensidad de un fuego, y ‘0’ paradisminuirlo.

1. En primer lugar diseñamos cada uno de los elementos de la unidad operativa descritos anteriormente, en VHDL. Y los simulamos uno a uno para comprobar su correcto funcionamiento.

a. Contador de 1 a 4.
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.all;
USE IEEE.NUMERIC_STD.all;

ENTITY Contador_1a4 IS
PORT (clk : IN std_logic;
SR : INstd_logic;
E: IN std_logic;
count : OUT std_logic_vector(2 DOWNTO 0)
);
END Contador_1a4;

ARCHITECTURE arch1 OF Contador_1a4 IS
SIGNAL cnt : UNSIGNED(2 DOWNTO 0):="001";

BEGIN

pSeq : PROCESS (clk, SR) IS
BEGIN
IF SR = '1' THEN
cnt <= (others => '0');
ELSIF clk'event AND...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • vitrocerámicas
  • Vhdl
  • Vhdl
  • Vhdl
  • VHDL
  • vhdl
  • Vhdl
  • vhdl

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS