Periféricos I Controlador de pantalla VGA

Documentos relacionados
Módulos aritméticos I

Laboratorio 8: Controlador VGA

Para sincronizar video: Sincronización horizontal y Sincronización vertical.

Practica No. 1 Circuitos Secuenciales

AUTOMATIZACIÓN INDUSTRIAL

Periféricos II Teclado y ratón PS2

LABORATORIO DE TECNOLOGÍA DE COMPUTADORES PRÁCTICA 7

Arquitectura de Computadoras Practica No. 1 Circuitos Secuenciales

CONEXIÓN DEL HARDWARE AL COMPUTADOR PERSONAL

Electrónica Digital II. Contadores

Dpto. de Electrónica 2º GM - EMTT. Tema 10 Dispositivos de entrada y Salida

1 CAJA NEGRA R300 DUAL CAM

Arquitectura de Computadores I - Tutorial sobre Max+Plus II

Manual de Usuario. Cuadros Horarios. Profesores

Sistemas Elec. Digitales. Instrumentación del laboratorio. Pag INSTRUMENTACIÓN DEL LABORATORIO.

Segunda práctica de VHDL

Generador de Etiquetas

PRACTICA No. 4 CONSTRUCTOR VIRTUAL

(Scaras)

Práctica 3 Captura Esquemática

Vemos, pues, que esta forma de organizar los datos es mucho más potente que utilizando las tabulaciones u otros métodos.

4.1. Circuitos Digitales Configurables

Gracias por adquirir nuestro Grabador de Viaje R300

Tutorial para asociaciones de pacientes

PRÁCTICA 18: SUMADOR SECUENCIAL CON QUARTUS II

2. PANTALLA ALFANUMÉRICA DE LCD (HITACHI HD44780U)

Supervisor v4.6. Apéndice 1. Herramientas automatizadas de gestión remota

Práctica nº 6. Implementación sobre circuitos programables.

SISTEMAS ELECTRÓNICOS DIGITALES

1.1 Introducción. 1 Manual del usuario

Manual. Cámara IP PTZ 6702AL CÁMARA IP PTZ I405Z

Unidad 5. Tablas. La celda que se encuentra en la fila 1 columna 2 tiene el siguiente contenido: 2º Celda

kit mínimo de FPGA/ALTERA Cyclone ll. EP2C5T144C8, USB BLASTER y DC 5V

Guía para realizar el primer diseño con el Max+Plus II

UNIVERSIDAD DE ALCALÁ. E.U.P. DEPARTAMENTO DE ELECTRÓNICA.

Introducción a la Planilla de Cálculo Open Office Calc. Cuaderno de Ejercicios

PRÁCTICA 4: INTRODUCCIÓN A LA SIMULACIÓN Y A LA

Modulo de desarrollo. Spartan 3 Starter Kit

Configuración del Ratón

Quartus II. Dr. Andrés David García García. Departamento de Mecatrónica. TE.1010 Sistemas Digitales

CARDV R300 GPS HD 480P DOBLE LENTE

MICROSOFT EXCEL MICROSOFT EXCEL Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

INSTITUTO POLITÉCNICO NACIONAL

Reproducción de una Imagen en un Monitor VGA Utilizando un FPGA

MONITOR. Página 1 / 10. E178FPb. colores. Mayor. mm Diseño. con el sistema de. Vista frontal

Manual de usuario de Kiva

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria

Instalación del programa. Creación de una vivienda nueva Se debe ejecutar el programa: Configurador.exe

Español Capítulo 1: Introducción TVGo A31 TVGo A31 1,1 Contenido del embalaje

Programa ALTERA destinado a Universidades

1. Qué es App Inventor 2? 2. Requisitos para utilizar AI2

Generación de informes de venta en FARMATIC Generación de informe año en curso

1 Características de la pedalera

TRABAJO 1: CONSTRUCCIÓN Y SIMULACIÓN DE CIRCUITOS COMBINACIONALES SENCILLOS CON CIRCUITOS INTEGRADOS ESTANDAR

Trabajar con Tablas. capítulo 07

Dispositivos y Sistemas Programables Avanzados

CONTROLADOR DE TIMBRE AUTOMÁTICO

5.2 MONITORES MONITORES II PEI 09/10

1. Introducción. 2. Procedimiento. 3. Descripción del controlador de luces de tráfico

Manual de usuario MetaTrader 4 TraderNovo:

Crear y gestionar cuentas de usuario en Windows 8

Manual de Funcionamiento Sonido, Video e Imágenes

Operación de Microsoft Excel. Opciones generales de la página. Guía del Usuario Página 95. Centro de Capacitación en Informática

TEMA 1: Concepto de ordenador

En esta lección vamos a ver más utilidades y opciones sobre la

Más sobre la edición de hojas

Laboratorio virtual para la programación de FPGAs

Práctica 2: Montaje de un circuito combinacional usando puertas lógicas

La Ventana de Inicio. capítulo 04

Practica Nº4 Multiplexores

1) Busca por Internet por qué están dispuestas así las teclas del teclado.

XILINX XC2S50. Joaquín Olivares

GUÍA PRACTICA 0. Uso del IDE BASCOM

Ejercicios de repaso. 1.- Diseñe un contador asíncrono ascendente módulo 16 utilizando 74XX76. Debe poseer RESET externo.

UNIDAD 3. CANALES Y MÁSCARAS CAPAS - FILTROS

Laboratorio. Instalación de Visual Studio Community. Back To Basics Instalando Visual Studio Community. Versión: 1.0.

MANUAL DEL USUARIO. RaySafe Visor de dosis

LABORATORIO DE DISEÑO DIGITAL

MODIFICACIÓN DE CONTENIDO

EJERCICIO 11 DE EXCEL EXCEL EJERCICIO 11 GRÁFICOS

Microprocesador MS-1 de control de las lámparas LED Agropian System V 1.0 Varsovia 2016

Practica 1 (3.5 %) 1. Realice el diseño y montaje de un R_S discreto activo en bajo.

Dispositivos de Entrada/Salida

Curso Robótica Práctica

UNIVERSIDAD DE ANTIOQUIA DEPARTAMENTO INGENIERÍA ELECTRÓNICA AUTOMATIZACIÓN CON PLC

Configuración de página e Impresión. Excel 2007

Bienvenido al módulo de formación sobre programación de DriveAP. Para ver en forma de texto las notas del presentador, haga clic en el botón Notas de

VISUALIZADOR MULTILÍNEA ALPHANUMÉRICO EXTERIOR DMME3XXXX DMME5XXXX DMME8XXXX

TAREA DE SIMULACIÓN-TS1: CONSTRUCCIÓN Y SIMULACIÓN DE CIRCUITOS COMBINACIONALES SENCILLOS CON CIRCUITOS INTEGRADOS ESTANDAR

Guía de uso Tarjeta Nexys 2 FPGA Spartan-3E

MANEJO DE LAS HOJAS DE CÁLCULO

Guía Electronic Workbench

CYNTHIA PATRICIA GUERRERO SAUCEDO

Model Viewer WhitePaper Octubre de 2006

WINDOWS 98/Me CONFIGURACIÓN DE WINDOWS III. Sistema

Elizabeth Fonseca Chavez, Mario Alfredo Ibarra Carrillo, Julio Cesar Sosa Savedra, Luz Noé Oliva Moreno, Ruben Ortega Gonzalez

EXCEL I UNIDAD 1 EMPEZANDO A TRABAJAR CON EXCEL (SEMANA 1)

Creación y modificación de tablas

GUÍA DEL CURSO DE INICIACIÓN A ARDUINO KIT DE ARDUINO DE LA XUNTA DE GALICIA

Formato de una presentación

Transcripción:

Práctica 1 Periféricos I Controlador de pantalla VGA 1 Introducción La señal VGA contiene 5 señales activas. Dos señales de sincronismo horizontal y vertical compatibles con los niveles lógicos TTL y activas a nivel bajo. Respectivamente indican el cambio de línea y de cuadro. Las restantes tres líneas RGB son líneas analógicas cuyos valores oscilan 0,3V (ausencia de señal) y 1,0 V (máxima intensidad de rojo, verde y azul respectivamente). De esta manera, combinando diversas intensidades de las componentes RGB se construyen los colores. En un monitor tradicional de computador el tubo de rayos catódicos es el elemento de mayor tamaño. La pantalla contiene puntos de fósforo rojo, verde y azul que emiten luz cuando son bombardeados por un haz de electrones. La parte trasera contiene un cátodo que se calienta a una temperatura de unos 800º, de forma que emiten tres haces de electrones (uno por caca color) que inciden sobre la pantalla de fósforo. Delante del cátodo se sitúa la rejilla de control que actúa sobre la intensidad de los haces. Éstos deben orientarse para que lleguen a cualquier punto de la pantalla. Esta orientación se logra mediante planos de deflexión horizontal y vertical. Adicionalmente una rejilla denominada máscara de sombras garantiza que cada rayo incida sobre los puntos de fósforo de su color. El rápido refresco de la pantalla consigue engañar al ojo humano siempre que supere los 30Hz, produciendo la impresión de una imagen fija. Si adicionalmente se pretenden representar imágenes en movimiento es recomendable aumentar esta frecuencia hasta los 60Hz. En los monitores de computadores esta frecuencia de refresco no es inferior a 60Hz y muchas veces es superior. Figura 1: Corte transversal de un monitos de rayos catódicos En una pantalla VGA la pantalla contiene 640x480 elementos pictóricos (picture elements = píxel). Los haces recorren la pantalla empezando por la esquina superior izquierda desde el punto de vista frontal de monitor. Para generar el cambio de línea y Práctica I: Periféricos I. Controlador de pantalla VGA. 1/5

de pantalla el controlador VGA debe generar las señales de sincronismo. La figura 2 muestra un esquema de los tiempos implicados para una frecuencia de refresco de 60Hz (1 pantalla cada 16,6 ms) con una resolución de 640x480 puntos. Figura 2: Señales RGB y de sincronismo en la señal VGA En la práctica se va a utilizar la tarjeta educacional de Altera UP2 y el programa Max+plus II bajo Windows 2000. La tarjeta dispone de la CPLD EPM7128SLC84 y la FPGA EPF10K70RC240. Ambas son medianamente grandes y permiten implementar sistemas complejos. Adicionalmente la tarjeta dispone de diversas interfaces de entrada/salida ya soldadas en la propia placa. De esta manera ya están montados 4 botones, 24 interruptores, 4 displays 7 segmentos, 1 salida VGA, 1 entrada PS2 y conectores de expansión para acceder a todos los pines de ambos dispositivos programables. Los pines RGB de la interfaz VGA han sido conectados a las salidas TTL de la FPGA mediante un sencillo circuito con un resistencia y un diodo. Con esta conexión los pines RGB tienen dos tonos correspondientes a ausencia o presencia de color. De esta manera se evitan los conversores D/A, disponiendo por el contrario de sólo 2 3 =8 colores (salvo que se utilicen técnicas de mezclado de color). En la práctica se va a proponer implementar un controlador VGA en modo texto y que se realicen diversos experimentos que mostrarán la corrección de la interfaz de video implementada. 2 Trabajo de laboratorio Para generar una señal VGA se ha de llevar la cuenta de la posición de los haces RGB y en función de ésta consultar los valores gráficos que se deben mostrar. Un diseño clase incluiría: diversos contadores (de punto, de caracteres, de líneas y de columnas), una memoria de video (donde se almacena y actualiza la información que va a mostrarse y una memoria ROM que guarde la representación de los caracteres alfanuméricos. El módulo más importante es el formado por contadores que va a generar las señales de sincronismo y las señales RGB. Práctica I: Periféricos I. Controlador de pantalla VGA. 2/5

El primer paso es bajar el fichero sincronismo_vga.zip de la página web de la asignatura, descomprimirlo en c:\tmp. A continuación se debe invocar la herramienta Max+plus II. Este programa se ejecuta bajo Windows (en el laboratorio Windows 2000). A continuación se debe abrir el diseño base ya preparado que incluye el bloque VGA_SYNC. Para ello en Max+pus II se escogerá File > Open Aparecerá una ventana de diálogo donde se seleccionará Graphic editor File. Y se escogerá el fichero sincronismo_vga.gdf. Posteriormente se validará la ventana, con lo que aparecerá el editor gráfico con el diseño que se muestra en la figura 3. Figura 3: Módulo generador del sincronismo VGA A continuación se salvará el diseño con otro nombre individualizado. El nombre estará formado por un identificador de la práctica (P1AEC), un identificador del grupo de laboratorio (el número de grupo de laboratorio) y el número de la pareja en el laboratorio. Todo separado por guiones de subrayado. Por ejemplo: P1AEC_G7_P10.gdf File > Save as Una vez hecho esto se debe especificar que el diseño presente en la ventana activa va a ser el nivel más alto del proyecto. Para ello, y dejando la ventana del esquema activa se debe activar: File>Project>Set Project to current file El nombre del fichero, con el camino completo, debe aparecer en la parte superior de la ventana junto al logotipo y nombre de la herramienta. Ahora ya se está en disposición de empezar a experimentar con el controlador VGA. Una primera inspección del bloque ayudará a entender el funcionamiento del controlador. Para ello se debe pinchar dos veces en el bloque. Se abrirá una ventana de tecto con el código VHDL del módulo. Es importante leer el código y entender el funcionamiento para poder implementar el resto de bloques que se piden el la sesión. El código tiene bastantes comentarios y sabiendo que el reloj es de 25MHz y observando la temporización de las señales VGA en la figura 2 se puede entender su significado. Viendo la estructura del esquema es fácil adivinar cual será el comportamiento de la pantalla. En todos los puntos la señal roja estará activa y la verde y azul no, con lo que la pantalla será de un rojo uniforme. Para probar el diseño se debe compilar y programar Práctica I: Periféricos I. Controlador de pantalla VGA. 3/5

la FPGA. Por defecto el proyecto ya debe tener la asignación de dispositivo y de pines correcta. No está de más comprobarlo con: Assign>Device Assign>Pin Location Chip A partir de aquí ya se puede abrir el compilador: Max+plus II>Compiler Al ejecutarse START no deben aparecer errores, aunque si algún warning cuyo significado debe entenderse. Una vez se ha compilado el diseño (se ha generado la lista de conexiones de la FPGA) debe programarse ésta utilizando el cable ByteBlaster(MV) que estará conectado al puerto paralelo del computador LPT1, y al conector especial de la tarjeta UP2. La FPGA es de tecnología SRAM con lo que no contendrá ninguna información de las sesiones anteriores si esta se ha desconectado. El programador se abrirá con: Max+plus II>Programmer En el caso de que no detecte el conector con la ventana del programador activa se puede seleccionar: Options>Hardware Setup Una vez la interfaz de programación sea correcta dentro de la ventana de programación bastará con pulsar configure para que se descargue la lista de conexiones. Una vez programada la FPGA se podrá ver el funcionamiento del controlador VGA implementado sin más que conmutar la entrada al monitor con la salida VGA de la tarjeta. El resultado debe ser el descrito: toda la pantalla roja. A continuación se va a introducir la utilización de una memoria ROM como generador de caracteres gráficos. El bloque ROM que se va a utilizar también está predefinido y se debe introducir en el esquema. Para ello se insertará el símbolo mediante dos pulsaciones del botón izquierdo y seleccionando el fichero CHAR_ROM. Se propone montar un esquema como el que aparece en la figura 4. Con esta configuración se construye un pantalla en modo texto con 30 líneas x 40 columnas, con 64 caracteres definidos en la ROM en una matriz de 8x8 puntos. Sin embargo al no utilizar los bits menos significativos de las filas y las columnas en el direccionamiento se duplica el grosor de estos caracteres produciendo unos perfiles más grandes y claros. Si se monta el esquema de la figura 4, se compila y programa la FPGA se mostrará un patrón de filas de caracteres. Es importante entender el funcionamiento del circuito para poder hacer las siguientes partes de la sesión. El fichero que describe el contenido de la ROM tiene extensión.mif y un formato bastante intuitivo. Se pueden modificar los caracteres a voluntad sin más que editar este fichero. Práctica I: Periféricos I. Controlador de pantalla VGA. 4/5

Figura 4: Esquema con la ROM de caracteres A partir del diseño anterior es posible implementar un diseño algo más complejo que muestre caracteres predefinidos por la pantalla. De esta manera se propone: A) Implementar un diseño que muestre el nombre + el primer apellido de un miembro de la pareja en la zona central de la pantalla. Los caracteres se imprimirán en blanco sobre fondo negro y no debe aparecer ningún carácter adicional en la pantalla. B) En este caso el nombre se desplazará a lo largo de las filas de arriba abajo, a modo de salva-pantallas. Cambiando de fila una vez por segundo. Una forma sencilla de realizar el apartado A (sin implementar una memoria de video) consiste en diseñar un bloque combinacional que en función de la fila y la columna genere o un blanco o un carácter de los que forman el nombre. El apartado B requiere un bloque que además de realizar la función del apartado A lleve la cuenta de los pulsos de reloj transcurridos para poder mover el nombre como se indica. La funcionalidad de los bloques se realizará en VHDL. Para ello abrirá un editor de texto VHDL mediante File>New Se seleccionará Text Editor File con la extensión.vhd (por defecto es.tdf). Una vez creado el bloque se generará un símbolo con: File>Create default symbol Esta acción lanzará el compilador de la herramienta que verificará que la sintaxis es correcta y que no hay errores. Una vez generado el símbolo (que no aparecerá inicialmente en la pantalla) se incluirá de la misma manera que ya se ha descrito. Práctica I: Periféricos I. Controlador de pantalla VGA. 5/5