CONEXIÓN DE UNA PANTALLA LCD A UN MICROCONTROLADOR

Tamaño: px
Comenzar la demostración a partir de la página:

Download "CONEXIÓN DE UNA PANTALLA LCD A UN MICROCONTROLADOR"

Transcripción

1 CONEXIÓN DE UNA PANTALLA LCD A UN MICROCONTROLADOR ALUMNOS: José Hipólito Pascual José Luis Fernández Enrique Silvestre Mario Pozo José Ignacio Seguí 1

2 INDICE 1-Introducción 2- Qué es un LCD? 2.1-Los caracteres del LCD 2.2-Diversidad de módulos LCD 3-Tipos de memorias del LCD 3.1-DD RAM (Display Data Ram) 3.2-CG RAM (carácter generator RAM) 4-Interface con el exterior y funcionamiento del módulo 4.1-Asignación de pines 4.2-Interface del display con un microcontrolador 4.3-El bus de datos 4.4-El bus de control 4.5-Conectando un módulo LCD a un Microprocesador PIC16F84 o PIC16F87x 4.6-Secuencia de inicialización del módulo LCD 4.7-Tiempos mínimos requeridos para que una instrucción o un dato puedan ser ejecutados 5-Comandos del LCD y ejemplo de programa 2

3 1-Introducción Antes de aparecer los módulos LCD, se utilizaban los Displays de siete segmentos para poder mostrar la información. Tenían una gran limitación de poder mostrar los caracteres alfa numéricos y símbolos especiales, también consumían demasiada corriente y ocupaban demasiado espacio físico. Posteriormente aparecieron otros tipos de displays mas complejos que podían mostrar algunos caracteres y símbolos; pero tenían de igual manera mucho consumo de corriente y espacio físico ocupaban también bastante espacio físico. Finalmente aparecieron los módulos LCD o pantallas de cristal liquido la cual tiene la capacidad de mostrar cualquier carácter alfa numérico. Estos dispositivos ya vienen con su pantalla y toda la lógica de control preprogramada en la fabrica y lo mejor de todo es que el consumo de corriente es mínimo y no hace falta realizar tablas especiales como se hacia anteriormente con los displays de siete segmentos. Las aplicaciones de los módulos LCD son infinitas ya que pueden ser aplicados en la informática, comunicaciones, telefonía, instrumentación, robótica, automóviles, equipos industriales, etc. 2- Qué es un LCD? La definición mas clara de un LCD es: una pantalla de cristal liquido que visualiza unos ciertos caracteres. Para poder hacer funcionar un LCD, debe de estar conectado a un circuito impreso en el que estén integrados los controladores del display y los pines para la conexión del display. Sobre el circuito impreso se encuentra el LCD en sí, rodeado por una estructura metálica que lo protege. En total se pueden visualizar 2 líneas de 16 caracteres cada una, es decir, 2x16=32 caracteres. A pesar de que el display sólo puede visualizar 16 caracteres por línea, puede almacenar en total 40 por línea. Es el usuario el que especifica qué 16 caracteres son los que se van a visualizar. Tiene un consumo de energía de menos de 5mA y son ideales para dispositivos que requieran una visualización pequeña o media. 3

4 2.1-Los caracteres del LCD El LCD dispone de una matriz de 5x8 puntos para representar cada carácter. En total se pueden representar 256 caracteres diferentes. 240 caracteres están grabados dentro del LCD y representan las letras mayúsculas, minúsculas, signos de puntuación, números, etc... Existen 8 caracteres que pueden ser definidos por el usuario. En la siguiente tabla se muestran los caracteres mas importantes que es capaz de representar la pantalla LCD. No estan representados los caracteres correspondientes a los códigos desde el $80 hasta el $FF, que corresponden a símbolos extraños. Los códigos comprendidos entre el 0 y el 7 están reservados para que el usuario los defina. Código Carac. Código Carac. Código Carac. Código Carac. Código Carac. Código Carac. $20 Espacio $30 0 $40 $50 P $60 ` $70 p $21! $31 1 $41 A $51 Q $61 a $71 q $22 $32 2 $42 B $52 R $62 b $72 r $23 # $33 3 $43 C $53 S $63 c $73 s $24 $ $34 4 $44 D $54 T $64 d $74 t $25 % $35 5 $45 E $55 U $65 e $75 u $26 & $36 6 $46 F $56 V $66 f $76 v $27 $37 7 $47 G $57 W $67 g $77 w $28 ) $38 8 $48 H $58 X $68 h $78 x $29 ( $39 9 $49 I $59 Y $69 I $79 y $2A * $3A : $4A J $5A Z $6A j $7A z $2B + $3B ; $4B K $5B [ $6B k $7B { $2C, $3C < $4C L $5C $6C l $7C $2D - $3D = $4D M $5D ] $6D m $7D } $2E. $3E > $4E N $5E ^ $6E n $7E $2F / $3F? $4F O $5F - $6F o $7F 4

5 2.2-Diversidad de módulos LCD En la actualidad existe una gran variedad de versiones, clasificadas en dos grupos. El primer grupo esta referido a los módulos LCD de caracteres (solamente se podrán presentar caracteres y símbolos especiales en las líneas predefinidas en el modulo LCD) y el segundo grupo esta referido a los módulos LCD matriciales ( Se podrán presentar caracteres, símbolos especiales y gráficos). Los módulos LCD varían su tamaño físico dependiendo de la marca; por lo tanto en la actualidad no existe un tamaño estándar para los módulos LCD. 3-Tipos de memorias del LCD Un dispositivo LCD dispone de dos tipos de memorias ambas independientes. Estas memorias se denominan DD RAM y CG RAM. 3.1-DD RAM (Display Data Ram) Es la memoria encargada de almacenar los caracteres de la pantalla que se esten visualizando en ese momento, o bien, que esten en una posición no visible. El display tiene una capacidad de 2 lineas horizontales por 40 caracteres cada una, de los cuales solo seran visibles 2 lineas de 16 caracteres cada una. La DDRAM tiene un tamaño de 2x40=80 bytes. Una vez conocida la disposición de almacenamiento del display, es facil pensar en un display de 2 líneas de 40 caracteres sobre el que se desplaza una ventana de 2 líneas por 16 caracteres como se muestra en el dibujo. El orden de cuante de los caracteres seria empezando de izquierda a derecha, de tal modo que el carácter 1 seria el primero de la izquierda y el 40 seria el situado más a la derecha. Para localizar los caracteres se utilizan dos coordenadas (X,Y) siendo Y el 5

6 valor vertical comprendido entre 1 y 2 (valor de línea) y X el valor horizontal (1-40) que indicara el carácter. En el ejemplo de arriba, vemos la frase ALUMNOS DE TELEMATICA EPSA, pero en el display solo se visualizaria TELEMÁTICA EPSA que corresponderia a los 16 caracteres visibles. Para visualizar toda la información almacenada en el display, podremos tratar al recuadro de 2 líneas por 16 caracteres como si se tratara de una ventana móvil. Cuando inicializamos el LCD la pantalla tendría un aspecto como el de la siguiente figura. (7,1). En este ejemplo, la letra E estaria situada en la posición (16,1) y la letra A en la El mapa de memoria de la DD RAM esta constituido por dos bloques de 40 bytes cada uno. El primer bloque corresponde con los 40 caracteres de la línea 1 y el segundo bloque con los de la línea 2. Las direcciones en hexadecimal $00-$27 están asociadas con las posiciones de almacenamiento del display (1,1) a (40,1), y las direcciones $40-$67 con las de almacenamiento (1,2) a (40,2). A continuación vemos el mapa de memoria DDRAM. 6

7 3.2-CG RAM (carácter generator RAM) La CG RAM contiene los caracteres qque pueden ser definidos por el usuario, es decir que pueden ser personalizados. Está formada por 64 posiciones, con direcciones $00-$3F. Cada posición es de 5 bits. Le memoria esta dividida en 8 bloques que corresponden a los posibles caracteres creados por el usuario que van del 0 al 7 como se muestra en el dibujo. 7

8 Cada carácter esta constituido por una matriz de 5 columnas por 8 filas. De este modo un 1 indica un punto de la matriz encendido, y un 0 apagado como se ve en lea siguiente figura. A continuación si quisiéramos almacenar este carácter en la posición 0 de la CG RAM, tendríamos que almacenar cada una de las líneas de 5 bits en las direcciones de la CG RAM que van de la $00 hasta la $07 como se veia en el mapa de memoria CG RAM. 4-Interface con el exterior y funcionamiento del módulo 4.1-Asignación de pines 8

9 A continuación podemos ver la asignación de pines en una pantalla LCD Los pines 1 y 2, son los utilizados para la alimentacón del módulo LCD. La tensión utilizada es de 5 voltios. El pin 3 se utiliza para ajustar el contraste de la pantalla LCD. Por medio de un potenciómetro regularemos la intensidad de los caracteres, a mayor tensión mayor intensidad. Se suele utilizar un potenciómetro de unos 10 o 20 k, que regulara la misma tensión que se utiliza para la alimentación. El pin 4 se utiliza para indicar al bus de datos si la información que le llega es una instrucción o por el contrario es un carácter. Si RS=0 indicara que en el bus de datos hay presente una instrucción, y si RD=1, indicará que tiene un carácter alfanumérico. El pin 5 es el de escritura o lectura. Si esta a 0 el módulo escribe en pantalla el dato que haya en el bus de datos, y si esta a 1 leeremos lo que hay en el bus de datos. El pin 6 es el indicado de hacer que el módulo LCD funcione, o por el contrario no acepte ordenes de funcionamiento. Cuando E=0 no se podrá utilizar el display y cuando E=1 se podran trnsferir datos y realizar las demás operaciones. Las pines del 7 al 14 son los del bus de datos. 4.2-Interface del display con un microcontrolador 9

10 Las conexiones entre un microcontrolador y una pantalla LCD, serán la del bus de datos de 8 bits y las de los pines de control, es decir, E, RS y R/W. Debido a esto, el microcontrolador deberá utilizar 11 bits para controlar la pantalla. 4.3-El bus de datos El bus de datos de un módulo LCD puede funcionar como un bus de 8 bits o como un bus multiplexado de 4 bits. Esto permitiria ahorrar 4 patillas al microcontrolador utilizado pero complicaria mucho el control del LCD ya que habría que multiplexar y demultiplexar los datos. Si se realizara la multiplexación, solo utilizadiamos los pines del D4 al D7, y primero se retransmitirían los bits más significativos y luego los menos significativos. 4.4-El bus de control Esta formado por las señales RS, R/W y E. Su función se explica en el punto 4.1 sobre el funcionamiento de los pines. 4.5-Conectando un módulo LCD a un Microprocesador PIC16F84 o PIC16F87x 10

11 Seguidamente vamos a ver como utilizar un modulo LCD con un microcontrolador modelo PIC16F84. La arquitectura de un microprocesador Z-80 es uno de los componentes que ha determinado un avance en cuanto a simplificación de componentes. El programa que se utiliza en este caso tiene las rutinas de tiempo calculadas con un cristal de 4 Mhz. Las rutinas de tiempo establecidas en el programa serían mucho mas cortas si el cristal utilizado fuese mayor de 4 Mhz, en cambio si la velocidad del cristal fuese menor a 4 Mhz, las rutinas serían bastante mas largas. Por lo tanto, el cristal que se gaste va a condicionar al módulo LCD, pudiendo ocasionar problemas de velocidad y saturación. Declaración de constantes Es una serie de constantes utilizadas por el programa. En la siguiente tabla vemos un código de algunas constantes reservadas por el propio microcontrolador PIC 16F84 y también otras de uso personal. Se trata de unos comandos dirigidos al ensamblador. La sección amarilla representa los registros de funciones especiales del microcontrolador, la sección naranja representa los Bits del puerto "A" destinados al bus de control del modulo LCD y finalmente la sección verde representa las constantes que definirán los tiempos de las rutinas de temporización. DECLARACION DE CONSTANTES. CODIGO COMENTARIO PORTB EQU 0X06 Dirección del puerto B TRISB EQU 0X06 Configurador del puerto B para I/O. PORTA EQU 0X05 Dirección del puerto A TRISA EQU 0X05 Configurador del puerto A para I/O. STATUS EQU 0X03 Dirección del registro STATUS. LCD_E EQU 2 Bit del puerto A para control de E. LCD_RW EQU 1 Bit del puerto A para control de R/W. LCD_RS EQU 0 Bit del puerto A para control de RS. RETARDO1 EQU 0X0D Constante del temporizador 1 RETARDO2 EQU 0X00 Constante del temporizador 2 Reserva de Memoria RAM El PIC16F84 tiene disponible 68 Bytes de memoria RAM. La memoria comienza desde la dirección 0X0C ( Posición numero 13 del mapa de registros ) y termina en la posición 0X4F ( Posición numero 80 del mapa de registros ). 11

12 La instrucción ORG le indica al ensamblador donde debe comenzar a reservar la memoria RAM que a continuación declaramos. En este caso, tan solo necesitamos dos bytes de memoria RAM. RESERVA DE MEMORIA RAM CODIGO COMENTARIO ORG 0X0C Inicio de los registros de Uso general CONT1 RES 1 Reserva un Byte para la Variable CONT1 CONT2 RES 1 Reserva un Byte para la Variable CONT2 Configuración de los Puertos El siguiente código le dice al microcontrolador PIC16F84 que el puerto "A" con sus cinco líneas y el puerto "B" con sus ocho líneas serán configurados como salidas para nuestro pequeño experimento. CONFIGURACION DE LOS PUERTOS CODIGO COMENTARIO ORG 0X00 BSF STATUS,5 Cambio al banco 1 MOVLW b' ' MOVWF TRISA Configura todo el puerto A como salida. MOVLW b' ' MOVWF TRISB Configura todo el puerto B como salida BCF STATUS,5 Cambio al banco 0 12

13 Programa Principal La sección en color rosa representan las instrucciones necesarias para la inicialización del modulo LCD. La sección en color verde representa el programa que se encargara de escribir la palabra "IRLANDES". En la columna de COMENTARIO del programa PROGRAMA PRINCIPAL CODIGO COMENTARIO CALL TEMPO2 Llamada de subrutina de tiempo de 15 milisegundos. Esta Subrutina es solicitada en el momento que se enciende el circuito para esperar que el modulo LCD estabilice sus voltajes internos. Este comando carga en el acumulador del PIC16F84 el número binario que representa el comando en el modulo LCD para trabajar con un bus de datos de 8 Bits. Posteriormente a esta instrucción se ejecuta MOVLW b' ' una subrutina llamada LCDI ( LCD INSTRUCCION) que estará encargada de colocar el dato en el modulo LCD ( Bus de datos ) y ejecuta la secuencia requerida para el bus de control del modulo LCD. Llamada de una subrutina que estará encargada de colocar el dato en el modulo CALL LCDI LCD ( Bus de datos ) y ejecuta la secuencia requerida para el bus de control del modulo LCD. Este comando carga en el acumulador del PIC16F84 el numero binario que representa el comando en el modulo LCD para trabajar con Activación de dos líneas en el modulo MOVLW b' ' LCD. Posteriormente a esta instrucción se ejecuta una subrutina llamada LCDI que fue explicada en la instrucción numero 2 de esta misma tabla. Llamada de una subrutina que estará encargada de colocar el dato en el modulo CALL LCDI LCD ( Bus de datos ) y ejecuta la secuencia requerida para el bus de control del modulo LCD. Este comando carga en el acumulador del PIC16F84 el numero binario que representa el comando en el modulo LCD para trabajar con encendido de la pantalla y el cursor en MOVLW b' ' el modulo LCD. Posteriormente a esta instrucción se ejecuta una subrutina llamada LCDI que fue explicada en la instrucción numero 2 de esta misma tabla. Llamada de una subrutina que estará CALL LCDI encargada de colocar el dato en el modulo LCD ( Bus de datos ) y ejecuta la secuencia 13

14 requerida para el bus de control del modulo LCD. Este comando carga en el acumulador del PIC16F84 el numero binario que representa el comando en el modulo LCD para trabajar con el desplazamiento del cursor a la MOVLW b' ' derecha Posteriormente a esta instrucción se ejecuta una subrutina llamada LCDI que fue explicada en la instrucción numero 2 de esta misma tabla. Llamada de una subrutina que estará encargada de colocar el dato en el modulo CALL LCDI LCD ( Bus de datos ) y ejecuta la secuencia requerida para el bus de control del modulo LCD. MOVLW "I" Coloca el carácter ASCII en W CALL LCDC Rutina para escribir un carácter en el LCD. MOVLW "R" Coloca el carácter ASCII en W CALL LCDC Rutina para escribir un carácter en el LCD. MOVLW "L" Coloca el carácter ASCII en W CALL LCDC Rutina para escribir un carácter en el LCD. MOVLW "A " Coloca el carácter ASCII en W CALL LCDC Rutina para escribir un carácter en el LCD. MOVLW "N" Coloca el carácter ASCII en W CALL LCDC Rutina para escribir un carácter en el LCD. MOVLW "D" Coloca el carácter ASCII en W CALL LCDC Rutina para escribir un carácter en el LCD. MOVLW "E" Coloca el carácter ASCII en W CALL LCDC Rutina para escribir un carácter en el LCD. MOVLW "S" Coloca el carácter ASCII en W CICLO GOTO CICLO Subrutinas Subrutina para ejecutar una Instrucción. Es la hemos llamado LCDI y se encarga de la configuración del bus de control del módulo LCD, para ejecutar una instrucción presente en el bus de datos. La instrucción es inmediatamente ejecutada por el modulo LCD cuando se activa el ENABLE. Esta subrutina es utilizada por el programa principal solamente cuando se requiere dar una Instrucción al modulo LCD. SUBRRUTINA LCDI: ( EJECUCION DE UNA INSTRUCCION ) CODIGO: COMENTARIO LCDI BCF PORTA,LCD_RWColoca "0" en el Pin RW. BCF PORTA,LCD_RS Coloca "0" en el Pin RS. 14

15 BSF PORTA,LCD_E Coloca "1" en el Pin E MOVWF PORTB Coloca el contenido de "W" en el bus de datos del modulo LCD. BCF PORTA,LCD_E Coloca "0" en el Pin E CALL TEMPO1 Llamada de una subrutina de tiempo de 40 micro segundos. RETURN Finaliza la Rutina de tiempo. Subrutina para escribir un dato o un carácter en el modulo LCD. Esta subrutina configura el bus de control del modulo LCD para escribir un dato que esta presente en el bus de datos del modulo LCD. El dato se escribe en la pantalla inmediatamente cuando se activa el ENABLE. Esta subrutina es utilizada por el programa principal solamente cuando se quiere escribir un carácter en el modulo LCD. SUBRRUTINA LCDC: ( ESCRIBIR UN DATO O CARACTER ) CODIGO: COMENTARIO LCDC BCF PORTA,LCD_RWColoca "0" en el Pin RW. BSF PORTA,LCD_RS Coloca "1" en el Pin RS. BSF PORTA,LCD_E Coloca "1" en el Pin E MOVWF PORTB Coloca el contenido de "W" en el bus de datos del modulo LCD. BCF PORTA,LCD_E Coloca "0" en el Pin E CALL TEMPO1 Llamada de una subrutina de tiempo de 40 micro segundos. RETURN Finaliza la Rutina de tiempo. Subrutina de 58 microsegundos. Es solicitada cuando se ejecuta una instrucción o un dato para dar el tiempo necesario que requiere el modulo LCD para finalizar el proceso. Esta subrutina denominada TEMPO1 tiene una curación de 58 microsegundos basados en un cristal de 4 Mhz. SUBRRUTINA DE TIEMPO ( TEMPO1 ) CODIGO: COMENTARIO TEMPO1 MOVLW RETARDO1 MOVWF CONT1 CICLOT1 NOP DECFSZ CONT1,1 GOTO CICLOT1 RETURN 15

16 Subrutina de milisegundos. Esta subrutina de tiempo es utilizada solamente cuando se enciende la pantalla para la estabilización de los voltajes. Esta subrutina denominada TEMPO2 tiene una duración de milisegundos basados en un cristal de 4 Mhz. SUBRRUTINA DE TIEMPO ( TEMPO2 ) CODIGO: COMENTARIO TEMPO2 MOVLW RETARDO2 MOVWF CONT2 CICLOT2 CALL TEMPO1 DECFSZ CONT2,1 GOTO CICLOT2 RETURN Conexión gráfica de un modulo LCD a un Microcontrolador PIC16F84.. Esquema del circuito 16

17 4.6-Secuencia de inicialización del modulo LCD La secuencia de inicialización para cualquier módulo LCD es imprescindible, y debe ser operada en la pantalla del módulo. La inicialización se basa en una serie de instrucciones introducidas por nosotros y posteriormente procesadas por el módulo LCD para su funcionamiento normal. Las instrucciones que están dentro de la inicialización solamente se ejecutan después que se enciende el modulo LCD y no podrán ser cambiadas posteriormente. Ejemplos de instrucciones que solo podrán ejecutarse cuando inicializamos el módulo LCD: - Selección de la longitud del bus de datos ( 4 Bits / 8 Bits ). - Activar el numero de líneas que se visualizaran en el modulo LCD. - Encender el Modulo LCD. Las siguientes instrucciones también podrán ser colocadas en la inicialización, con la diferencia que podrán ser cambiadas en cualquier parte del programa. - Mantener el mensaje fijo y desplazar el cursor. - Desplazar el mensaje y mantener el cursor fijo. - Hacer que el carácter señalado parpadee o no. El módulo ejecuta automáticamente una secuencia de inicio interna en el instante de aplicarle la tensión, y hay unos requisitos de estabilidad. El tiempo mínimo que tarda en estabilizarse la tensión entre 0,2 y 4,5 voltios debe estar comprendido entre 0,1 y 10 milisegundos. Por otro lado el tiempo mínimo de desconexión debe ser de 0,1 milisegundos antes de volver a conectar. 17

18 La secuencia de inicio ejecutada es la siguiente: 1. Se ejecuta el comando CLEAR DISPLAY borrando la pantalla. El flag BUSY se mantiene a "1" (ocupado) durante 15 ms hasta que finaliza la inicialización. 2. Se ejecuta el comando FUNCTION SET, que establece el interfaz con el Bus de datos. Se elige por defecto el tamaño del bus de datos a 8 bits (DL=1) y el número de renglones del display en 1 (N=0). 3. Se ejecuta el comando DISPLAY ON/OFF CONTROL, que hace que el display que en OFF (D=0); también cursor en OFF (C=0) y sin parpadeo del cursor en (B=0) 4. Se ejecuta el comando ENTRY MODE SET, que establece la dirección de movimiento del cursor con autoincremento del cursor (I/D=1) y modo normal, no desplazamiento, del display (S=0). Si la conexión de la alimentación no reúne las condiciones que exige el módulo LCD, habría que realizar la secuencia de inicialización por software. En cualquier caso, es importante enviar al LCD la primera instrucción de trabajo después de que hayan transcurrido 15 ms, para completar dicha secuencia de inicialización. SECUENCIA TIPICA DE INICIALIZACION DEL LCD En la siguiente figura se ha representado en un diagrama la secuencia de inicialización del LCD para trabajar con un bus de datos de 8 ó 4 bits. Para el caso de 8 bits no hay ningún problema, sin embargo el caso de 4 bits es un poco más complejo. Después de encender el LCD aparecerá la linea superior un poco más oscura que la inferior. Esto quiere decir que el display no ha sido inicializado todavía. En el caso de 4 bits sólo se conectan los 4 bits mas significativos del LCD, dejando los otros 4 al aire. Al enviar el código 2 (Bits ) el display se configura para trabajar a 4 bits. Se puede observar cómo la linea superior deja de estar más oscura que la inferior. A partir de este momento las transferencias hay que realizarlas en dos partes: primero se envían los 4 bits mas significativos y después los 4 bits menos significativos. Para confirmar que la transferencia es a 4 bits hay que enviar el código $28; primero los bits y después los bits De aquí en adelante la inicialización es igual tanto para 8 bits como para 4, con la salvedad de que en el segundo caso hay que enviar los datos multiplexados. 18

19 4.7-Tiempos mínimos requeridos para que una instrucción o un dato puedan ser ejecutados. Los Pines de control ( E, RS y E/W ) están relacionados ya que por medio de ellos podemos especificar la opción de ejecutar una instrucción o leer / escribir un dato en la pantalla o la memoria RAM; sin embargo existe una condición importante que deberá tomarse en cuenta referida directamente al tiempo necesario que se necesita para cambiar de un estado a otro en los pines de control. ( E, RS y R/W ). En el caso de que este tiempo sea mas pequeño que el tiempo mínimo requerido, entonces el modulo LCD no tendrá el tiempo suficiente para responder a las instrucciones solicitadas por el usuario y por consecuencia se perderán los datos o instrucciones según sea el caso. Es decir, no debemos obviar la velocidad propia del módulo LCD con la propia del microcontrolador que estemos utilizando, ya que si no se tiene en cuenta la velocidad del microprocesador y esta sobrepasa la del módulo LCD, éste último no tendrá capacidad suficiente como para ir procesando y ejecutando todo el flujo, y por lo tanto perderemos información. Para ello los programas o los circuitos electrónicos que manejan un módulo LCD deberán respetar los siguientes diagramas de tiempo: 19

20 Diagrama de tiempo para una Instrucción: Si se quiere enviar una instrucción al módulo LCD, colocamos el comando en el bus de datos ( pines del 7 al 14 ). Posteriormente se ejecuta el diagrama de tiempo requerido para una instrucción en los pines de control. Este diagrama de tiempo es muy sencillo de entender, tan solo usted deberá colocar: el Pin RS = 0, el Pin R/W = 0 y el Pin E = 0. Luego, se cambia el estado del Pin E a 1, debiendo permanecer en dicho estado al menos durante 450 ns. De no ser así el módulo LCD no podrá aceptar el comando Diagrama de tiempo para escribir un Dato: En el caso de querer escribir un dato al módulo LCD, colocamos el dato en el bus ( pines del 7 al 14 ) como antes. Y entonces ejecutamos el diagrama de tiempo requerido para escribir un dato en los pines de control. Ponemos el Pin RS = 1, el Pin R/W = 0 y el Pin E = 0. Cuando ya terminemos este proceso, se cambia el estado del Pin E = 1, debiendo permanecer en dicho estado al menos durante 450 ns. De no ser así el módulo LCD no podrá aceptar el comando Diagrama de tiempo para leer un Dato: En el caso de querer leer un dato de la pantalla LCD o de la memoria LCD, los pines de control hay que configurarlos así; Pin RS = 1, Pin R/W = 1 y el Pin E = 0. 20

21 Seguidamente cambiamos el Pin E a 1, debiendo permanecer en dicho estado al menos durante 450 ns. De no ser así el módulo LCD no podrá aceptar la instrucción. Notas comunes - El pin E debe estar inicialmente en el estado lógico 0, para posteriormente conmutar a 1, permaneciendo mínimo 450 ns. - Cuando el Pin "E" del modulo LCD tiene el flanco de bajada, se ejecuta la instrucción o el dato presente en el bus de control. En la siguiente figura vemos los cronogramas correspondientes a una operación de escritura y otra de lectura de una forma un poco mas básica. Como ya hemos dicho con anterioridad los tiempos mínimos se deben respetar. Las operaciones de lectura y escritura son muy sencillas. Se ha supuesto que las transmisiones de los datos se realizaban a 8 bits. 21

22 DIAGRAMA DE MONITORIZACIÓN DE UNA LCD 22

23 5-Comandos del LCD y ejemplo de programa La forma de controlar un el LCD es a traves de comandos que se envian al registro de control del a LCD, seleccinado al poner la señal RS (Register Select, selecciona el registro interno que se va a leer o escribir) a nivel bajo(0). Cuando lo que se quiere es imprimir caracteres en el display o enviar información a la CG RAM para definir caracteres se selecciona el registro de datos poniendo RS a nivel alto (1). Existe un controlador de direcciones para la DD RAM y orto para la CG RAM, el cual contienela direccion a la que se va a acceder. Modificando el control de direcciones es posible acceder a cualquier posición de la CG RAM como de la DD RAM. Cada vez que se realiza una acceso a memoria, el contador de direcciones se incrementa o se decrementa automáticamente, según como se haya configurado el LCD. Al LCD le lleva cierto tiempo procesar cada comando enviado. Por ello, para que se ejecute el comando especificado es necesario asegurarse de que el comando anterior ha finalizado. Existen 2 estrategias para realizar esto: -La primera se basa en leer del display el bit ocupado. Si este bit se encuentra a 1 quiere decir que el LCD esta ocupado procesando el comando anterior y por tanto no puede procesar nuevos comandos. -La segunda estrategia, menos elegante pero mas comoda de implementar, consiste en realizar una pausa antes de volver a enviar el siguiente comando. Los tiempos maximos que tarda el display en procesar los comandos estan especificados por el fabricante y tienen un valor tipico de 40µs. Si se realiza una pausa 23

24 mayor o igual a esta se tiene la garantia de que el display ha terminadote ejecutar el comando. RESUMEN DE COMANDOS: DESCRIPCION DE LOS COMANDOS: -Borrar display: Este comando borra todas las posiciones del display virtual y se situa el display real en la posición inicial, en la que se visualizan las posiciones desde la (1,1) hasta la (16,1) y desde la (1,2) hasta la (16,2). El cursor se situa en la posición (1,1). El comando seria $01 y su tiempo de ejecución 1.64 ms. -Cursor a Home: Enviar el cursor a la posición (1,1). El display se situa en la posicion inicial. Comando $02 y el tiempo de ejecución 1.64ms. -Estabecer modo de funcionamiento: Actualiza el contador de direcciones en la forma especificada y establece si el display realiza los desplazamientos o no. Estas acciones se llevan a cabo cada vez que se realizan una lectura o escritura en el display. Cuando I/D=1, el controlador de direcciones se incrementa, lo que provoca que el cursor avance hacia la derecha cada vez que se imprime un carácter en el display. Cuando I/D=0 el contador se decrementa y el cursor se mueve hacia la izquierda al imprimir. Con S=1 se indica al LCD que debe mover el display una posición a la derecha cada vez que se imprime un carácter. Con S=0 el display 24

25 debe de permanecer quieto al imprimir. El comando es I/D S y su T.E.=40µs -Control ON/OFF: Es la funcion encargada de activar o desactivar el display, el cursor y el parpadeo. 1. Display ON/OFF: D=1 activar el LCD. Cuando D=0 el LCD funciona normalmente pero no se visualiza ninguna información. Es posible realizar impresiones, enviar comandos, pero nada quedara reflejado en pantalla. Solo cuando D=1 se puede ver algo en el display 2. Cursor ON/OFF: C=1 activa el Curso y al contrario, C=0 no se mueve. 3. Parpadeo ON/OFF: B=1 hace que los caracteres situados en la posición del cursor parpadeen. B=0 no hay parpadeo. El comando es D C B y su codigo tipico $0E, su T.E:=40µs -Desplazamiento del cursor/display: Desplaza una posición el cursor o el display. Con S/C=1 se mueve el display, S/C=0 no. R/L=1 desplaza a la derecha y R/L=0 a la izquierda. El Comando es S/C R/L 0 0 y su T.E.= 40µs. -Modo de transferencia de la informacio: Selecciona el bus de datos del display para trabajar a 8 bits (DL=1) o a 4 bis (DL=0). Su comando es 0 0 1DL y su T.E.=40µs. -Acceso a posiciones concretas de la CG RAM: Da acceso a las direcciones de la A5 a la A0 de la CG RAM. Esta es la direccion que se copia en el contador de direcciones de la CG RAM. La siguiente escritura en el registro de datos display (RS=1) se copiara en la posición indicada de la CG RAM. Su comando 0 1 A5 A4 A3 A2 A1 A0 y su T.E.=40µs -Acceso a posiciones concretas de la DD RAM: Es el mismo funcionamiento que en la orden anterior. Después de dicha instrucción el registro de datos se grabara en la posición indicada de la DD RAM.su comando 1 A6 A5 A4 A3 A2 A1 A0) y su T.E.=40µs Secuencia tipica de inicializacion del LCD: Para trabajar con el bus de datos de 8 bits no hay ningun problema. Pero para un bus de datos de 4 bits es un poco mas complejo. Despues de encender el LCD aparecera la linea superior un poco mas oscura que la inferior. Esto quiere decir que el display no ha sido inicializado todavía. En el caso de 4 bits solo se conectan 4 bits mas significativos del LCD, dejando los otros 4 al aire. Al enviar el codigo 2 (bits ) el display se configura para trabajar a 4 bits. Se puede observar como la linea superior deja de estar mas oscura que la inferior. A partir de ese momento las tranferencias hay que realizarlas en dos partes: primero se envian 4 bits mas significativos y después los 4 bits menos significativos. Para confirmar que la transferencia es a 4 bits hay que enviar el codigo $28 ; primero los bits y después los bits De aquí en adelante la inicializacion es igual tanto para 8 bits como para 4, con la salvedad de que en el segundo caso hay que enviar los datos multiplexados. 25

26 26

27 Ejemplo de programa 27

28 28

29 29

30 30

Modulo LCD MODULO LCD

Modulo LCD MODULO LCD MODULO LCD Las pantallas de cristal líquido LCD o display LCD (Liquid Cristal Display) consta de una matriz de caracteres (normalmente de 5x7 o 5x8 puntos) distribuidos en una, dos, tres o cuatro líneas

Más detalles

Pantallas de Cristal Líquido

Pantallas de Cristal Líquido Pantallas de Cristal Líquido A diferencia de los display de 7 segmentos, las pantallas LCD tienen la capacidad de mostrar caracteres alfanuméricos. Consta de una matriz de caracteres (5X7 puntos) distribuidos

Más detalles

MODULO LCD MODULO LCD. Pág.1

MODULO LCD MODULO LCD.  Pág.1 MODULO LCD www.teleline.terra.es/personal/fremiro Pág.1 INTRODUCCIÓN MODULO LCD Las siguientes páginas intentan dar una breve descripción del funcionamiento del módulo LCD incluido en el sistema de evaluación

Más detalles

DISPLAYS DE CRISTAL LIQUIDO

DISPLAYS DE CRISTAL LIQUIDO DISPLAYS DE CRISTAL LIQUIDO INDICE MANUAL DE REFERENCIA DEL LCD 1.- INTRODUCCION 2.- CARACTERISTICAS DEL DISPLAY 2.1.- Aspecto físico 2.2.- Alimentación 2.3.- Los caracteres del LCD 2.4.- La memoria del

Más detalles

LCD ING. DIEGO CHACON MDHD

LCD ING. DIEGO CHACON MDHD LCD ING. DIEGO CHACON MDHD LCD: Display de Cristal Líquido (Liquid Crystal Display) Los Display LCD son visualizadores pasivos, esto significa que no emiten luz como el visualizador o display alfanumérico

Más detalles

Periféricos Básicos Visualizador LCD

Periféricos Básicos Visualizador LCD Periféricos Básicos Visualizador LCD Es frecuente la necesidad de mostrar mensajes que tienen que ver con el estado de algo o el valor de un instrumento de medida electrónico. Para estos casos la utilización

Más detalles

Centro Universitario de Ciencias Exactas e Ingenierías DIVISION DE ELECTRONICA Y COMPUTACION

Centro Universitario de Ciencias Exactas e Ingenierías DIVISION DE ELECTRONICA Y COMPUTACION SISTEMA DE SEGURIDAD PARA CASA HABITACION González Padilla Carlos Efraín, Hernández García Edgar Aureliano, López Seda Celia Cristina, Vázquez Domínguez Armando. e-mail: legardenfx@hotmail.com, autenticotequila@hotmail.com,

Más detalles

Capítulo 4 Interfase Humana

Capítulo 4 Interfase Humana Capítulo 4 Interfase Humana Para poder interactuar con cualquier máquina con la cual se trabaje se necesita una interfase, a través de la cual el usuario puede saber cual es el status actual de la máquina

Más detalles

El módulo LCD Ejemplos de funcionamiento

El módulo LCD Ejemplos de funcionamiento SISTEMAS ELECTRÓNICOS Y AUTOMÁTICOS PRACTICAS DE MICROCONTROLADORES PIC PRÁCTICA 7: El módulo LCD El módulo LCD Ejemplos de funcionamiento - 1 - 1. Objetivos: - Conocer el funcionamiento y programación

Más detalles

Diagrama a bloques 2

Diagrama a bloques 2 Arquitectura 1 Diagrama a bloques 2 Diagrama a bloques 3 Diagrama a bloques 4 Diagrama a bloques 5 Unidad aritmética-lógica La unidad Aritmética Lógica se encarga de realizar las operaciones Suma, Resta,

Más detalles

O B J E T I V O I N T R O D U C C I O N M A R C O T E O R I C O

O B J E T I V O I N T R O D U C C I O N M A R C O T E O R I C O O B J E T I V O Realizar un contador decimal que se exhiba en un display de 7 segmentos, cada número deberá estar exhibido durante un segundo. I N T R O D U C C I O N En la mayoría de los sistemas electrónicos

Más detalles

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

2. PANTALLA ALFANUMÉRICA DE LCD (HITACHI HD44780U) 2. PANTALLA ALFANUMÉRICA DE LCD (HITACHI HD44780U) Este controlador de la casa Hitachi se usa para mostrar caracteres alfanuméricos en paneles LCD de matriz pasiva (los típicos que se pueden encontrar

Más detalles

PRÁCTICA 6: Gobierno del display 7 segmentos

PRÁCTICA 6: Gobierno del display 7 segmentos SISTEMAS ELECTRÓNICOS Y AUTOMÁTICOS PRACTICAS DE MICROCONTROLADORES PIC PRÁCTICA 6: Gobierno del display 7 segmentos Display 7 segmentos - 1 - Ingeniería de Sistemas y Automática 1. Objetivos: Gobierno

Más detalles

LCDsalfanuméricos. La mayoría están basados en el controlador Hitachi HD44780

LCDsalfanuméricos. La mayoría están basados en el controlador Hitachi HD44780 LCDsalfanuméricos La mayoría están basados en el controlador Hitachi HD4478 Máximo 2 líneas de 4 caracteres Algunas pantallas están «plegadas» y tienen 4 líneas de 2 caracteres El controlador sólo tiene

Más detalles

- FUNDAMENTOS TEÓRICOS - EJEMPLOS DE APLICACIÓN. 09/01/2009 Ing. José A. Picón - - (0416)

- FUNDAMENTOS TEÓRICOS - EJEMPLOS DE APLICACIÓN. 09/01/2009 Ing. José A. Picón -  - (0416) MICROPROCESADORES Y MICROCONTROLADORES - FUNDAMENTOS TEÓRICOS - EJEMPLOS DE APLICACIÓN 09/01/2009 Ing. José A. Picón - www.joseapicon.com.ve - (0416) 9519990 Informes de Laboratorio Entregar informe con

Más detalles

DISPLAYS DE CRISTAL LÍQUIDO (LCD) PARA CARACTERES

DISPLAYS DE CRISTAL LÍQUIDO (LCD) PARA CARACTERES VISUALIZADORES DE INFORMACIÓN EN SISTEMAS BASADOS EN MICROCONTROLADORES: DISPLAYS DE CRISTAL LÍQUIDO (LCD) PARA CARACTERES 1 NOCIONES BÁSICAS: Qué son los cristales líquidos? Son sustancias que presentan

Más detalles

Registros SFR vistos hasta ahora: Microcontroladores PIC

Registros SFR vistos hasta ahora: Microcontroladores PIC Registros SFR vistos hasta ahora: Microcontroladores PIC Microcontroladores PIC: Timer Características del Timer TMR0: Cumple básicamente la función de contador de eventos (o divisor de frecuencia). El

Más detalles

PRACTICA 4. REALIZAR ENCENDIDO-APAGADO DE DIODOS LED

PRACTICA 4. REALIZAR ENCENDIDO-APAGADO DE DIODOS LED PRACTICA 4. REALIZAR ENCENDIDO-APAGADO DE DIODOS LED DESCRIPCIÓN. En esta práctica vamos a realizar el encendido y apagado de diodos led. Para ellos iremos activando y desactivando las salidas de la puerta

Más detalles

PANTALLAS DE CRISTAL LÍQUIDO (LCD)

PANTALLAS DE CRISTAL LÍQUIDO (LCD) VISUALIZADORES DE INFORMACIÓN PARA SISTEMAS BASADOS EN MICROCONTROLADORES: PANTALLAS DE CRISTAL LÍQUIDO (LCD) 1 NOCIONES BÁSICAS: Qué son los cristales líquidos? Son sustancias que presentan características

Más detalles

MANEJO DE DISPLAY LCD (Versión 1.1)

MANEJO DE DISPLAY LCD (Versión 1.1) MANEJO DE DISPLAY LCD (Versión 1.1) Prof: Bolaños D. Si bien mucas aplicaciones donde debemos mostrar información podemos resolverlas con display de 7 segmentos, estos presentas algunas limitaciones importantes,

Más detalles

Sistemas con Microprocesadores I

Sistemas con Microprocesadores I Sistemas con Microprocesadores I 1 Microcontroladores Introducción Harvard vs. von-neumann Clasificación del procesador Segmentado o Pipeline Ortogonal vs. No ortogonal 2 Microcontroladores PIC Siglas

Más detalles

MICROCONTROLADOR PIC DE MICROCHIP

MICROCONTROLADOR PIC DE MICROCHIP MICROCONTROLADOR PIC DE MICROCHIP PIC16F877-28-PIN 8-BIT CMOS FLASH MICROCONTROLLER PIC16F877: ESTRUCTURA INTERNA Bus de Datos Bus de Datos (programa) Registro de trabajo (acumulador) Conversor A/D Contador/Temporizador

Más detalles

PIC MICRO ESTUDIO Reloj en tiempo real RTCU2 Clave: 719 www.electronicaestudio.com

PIC MICRO ESTUDIO Reloj en tiempo real RTCU2 Clave: 719 www.electronicaestudio.com PIC MICRO ESTUDIO Reloj en tiempo real RTCU2 Clave: 719 www.electronicaestudio.com Guía de Operación Reloj en tiempo real Modulo: RTCU2iempo real Clave: 719 El modulo 719 Reloj en tiempo real- utiliza

Más detalles

INFORMÁTICA INDUSTRIAL. 3º INGENIERÍA TÉCNICA INDUSTRIAL. ESPECIALIDAD ELECTRÓNICA BOLETÍN 1. CURSO 2003/04

INFORMÁTICA INDUSTRIAL. 3º INGENIERÍA TÉCNICA INDUSTRIAL. ESPECIALIDAD ELECTRÓNICA BOLETÍN 1. CURSO 2003/04 INFORMÁTICA INDUSTRIAL. 3º INGENIERÍA TÉCNICA INDUSTRIAL. ESPECIALIDAD ELECTRÓNICA BOLETÍN 1. CURSO 20/04 1. Se colocan tres interruptores en las líneas RA0, RA1 y RA2 de la puerta A de un PIC16F84. Y

Más detalles

+5V 8K2 1K5. Arduino. Display LCD

+5V 8K2 1K5. Arduino. Display LCD DISPLAY LCD Un display LCD (Liquid Cristal Display) es una pequeña pantalla para mostrar caracteres a través de una matriz de puntos luminosos. Estos displays tienen unos pines para conectarlos a un microcontrolador,

Más detalles

GESTION DE UN LCD USANDO CCS COMPILER (PICC)

GESTION DE UN LCD USANDO CCS COMPILER (PICC) GESTION DE UN LCD USANDO CCS COMPILER (PICC) La mayoría de displays de cristal líquido se usan con controlador del tipo HD44780, con un número de líneas variable y una cantidad de caracteres también variable,

Más detalles

Práctica 6. Control de LCD 16x2 con PIC 16F84A.

Práctica 6. Control de LCD 16x2 con PIC 16F84A. Práctica 6 Control de LCD 16x2 con PIC 16F84A. Eduardo V. Abad Descripción de las características y funcionamiento del LCD 44780 Las pantallas de cristal líquido (LCD) se han popularizado mucho en los

Más detalles

PROYECTOS EN VHDL PARA CONTROL DE MONITOR VGA DESDE UNA FPGA

PROYECTOS EN VHDL PARA CONTROL DE MONITOR VGA DESDE UNA FPGA PROYECTOS EN VHDL PARA CONTROL DE MONITOR VGA DESDE UNA FPGA Sergio Noriega 2017 TABLA DE CÓDIGOS ASCII Internacionalmente se estandarizó un código para para la representación de caracteres visibles para

Más detalles

PIC 16F87X. Juan González. Escuela Politécnica Superior Universidad Autónoma de Madrid. Flir Networked Systems. Flir Networked Systems

PIC 16F87X. Juan González. Escuela Politécnica Superior Universidad Autónoma de Madrid. Flir Networked Systems. Flir Networked Systems PIC 16F87X Juan González Escuela Politécnica Superior Universidad Autónoma de Madrid Andrés Prieto-Moreno Flir Networked Systems Curso de microcontroladores PIC. Semana del 25-29 Mayo 2009. Ricardo Gómez

Más detalles

DISPLAYS DE CRISTAL LIQUIDO FUNCIONAMIENTO Y CONEXION A LA TARJETA CT6811

DISPLAYS DE CRISTAL LIQUIDO FUNCIONAMIENTO Y CONEXION A LA TARJETA CT6811 DISPLAYS DE CRISTAL LIQUIDO FUNCIONAMIENTO Y CONEXION A LA TARJETA CT6811 GRUPO J&J, 1997 2 INDICE PARTE 1: MANUAL DE REFERENCIA DEL LCD 1.- INTRODUCCION 2.- CARACTERISTICAS DEL DISPLAY 2.1.- Aspecto físico

Más detalles

Una vez comprendido el funcionamiento teórico del dispositivo SRF04 el

Una vez comprendido el funcionamiento teórico del dispositivo SRF04 el CAPÍTULO 4 Obtención Electrónica De La Distancia 4.1. Análisis y planteamiento del problema. Una vez comprendido el funcionamiento teórico del dispositivo SRF04 el planteamiento principal ahora se divide

Más detalles

Bucles: o Bucles infinitos o Bucles finitos o Bucles anidados Medir tiempos con MPLAB Ejemplos y ejercicios

Bucles: o Bucles infinitos o Bucles finitos o Bucles anidados Medir tiempos con MPLAB Ejemplos y ejercicios SISTEMAS ELECTRÓNICOS Y AUTOMÁTICOS PRACTICAS DE MICROCONTROLADORES PIC PRÁCTICA 3: Bucles Bucles: o Bucles infinitos o Bucles finitos o Bucles anidados Medir tiempos con MPLAB Ejemplos y ejercicios -

Más detalles

Microprocesadores. Introducción al Lenguaje C - Parte IV. Prof. Luis Araujo. Universidad de Los Andes

Microprocesadores. Introducción al Lenguaje C - Parte IV. Prof. Luis Araujo. Universidad de Los Andes Introducción al Lenguaje C - Parte IV Universidad de Los Andes Funciones Las funciones son porciones de código que devuelven un valor y permiten descomponer el programa en módulos que se llaman entre ellos

Más detalles

Práctica 5MODBUS: Bus Modbus

Práctica 5MODBUS: Bus Modbus Práctica 5MODBUS: Bus Modbus 1 Objetivos El objetivo de esta práctica es la utilización y la programación de una red Modbus. El alumno debe ser capaz de: Diferenciar los tres niveles fundamentales de la

Más detalles

CODIGO EN ASSEMBLER TRANSMISOR. list p=16f876 ;selecion de pic

CODIGO EN ASSEMBLER TRANSMISOR. list p=16f876 ;selecion de pic TRANSMISOR CODIGO EN ASSEMBLER list p=16f876 ;selecion de pic radix hex ; codigo hex indf equ 0h ;direcionamiento indirecto tmro equ 1h ;contador de tiempo real pc equ 2h ;contador del programa status

Más detalles

SUPER CONTROLADOR DE SERVOS S310175

SUPER CONTROLADOR DE SERVOS S310175 SUPER CONTROLADOR DE SERVOS S310175 Controlador para servos con retroalimentación del par motor No es necesario realizar modificaciones a los servos Características: Sus ocho salidas independientes de

Más detalles

Practica de PIC 16F84

Practica de PIC 16F84 Practica de PIC 16F84 Los PIC son circuitos que pueden controlar dispositivos y diferentes sistemas, son como los PLC (controles lógico programable), además debo decir que es un circuito que tiene todas

Más detalles

ARQUITECTURA DEL PIC16F84A

ARQUITECTURA DEL PIC16F84A ARQUITECTURA DEL PIC16F84A Arquitectura interna del PIC16F84A CPU ALU Decodificador de Instrucciones - Buses Registro de trabajo W PC Contador de Programa Organización de la memoria Memoria de Programa

Más detalles

lunes 10 de agosto de 2009 par de mensajes en los renglones de la pantalla #INCLUDE ;DECLARO LA LIBRERIA

lunes 10 de agosto de 2009 par de mensajes en los renglones de la pantalla #INCLUDE ;DECLARO LA LIBRERIA Mexatronica Sitio que colecciona informacion acerca de todos los temas de ingenieria y nuevas tecnologias. Mecatronica, microcontroladores, minirobotica, sensores, instrumentacion, control, lunes 10 de

Más detalles

2.1. Código ASM de Programación para el PIC

2.1. Código ASM de Programación para el PIC 2.1. Código ASM de Programación para el PIC PROGRAMA PARA MOVER UNA ARAÑA SEGUN 3 POSICIONES DE LUZ, CON ESTO SE PUEDE HACER QUE CON ALGUNA COMBINACION AVANCE, SE DETENGA, GIRE ALA IZQUIERDA, GIRE A LA

Más detalles

Termostato electrónico con PIC y LCD

Termostato electrónico con PIC y LCD COMETARIO TECNICO Termostato electrónico con PIC y LCD Por el Departamento de Ingeniería de Electrónica Elemon S.A. 1N4148 El circuito centra su funcionamiento en el micro controlador PIC16F870 el cual

Más detalles

RECURSOS FUNDAMENTALES

RECURSOS FUNDAMENTALES RECURSOS FUNDAMENTALES Los recursos que se considerarán son : Temporizadores Puertos de E/S La Palabra de Configuración EEPROM de datos 1 TEMPORIZADORES Una labor habitual en los programas de control suele

Más detalles

MICROCONTROLADORES (III)

MICROCONTROLADORES (III) Prof. Manuel Rivas MICROCONTROLADORES (III) Pautas generales de programación Operaciones con datos Operaciones aritméticas Operaciones de comparación Subrutinas Selección múltiple Configuración de puertos

Más detalles

V = 3,4567 V M:4,45V m:0,23v

V = 3,4567 V M:4,45V m:0,23v Práctica 10 Módulo de conversión A/D: voltímetro digital Fecha: 28 de Abril de 2005 Se pretende realizar un programa que se encargue de efectuar la medida continua de una tensión analógica comprendida

Más detalles

Módulo LCD HD44780 de de Hitachi

Módulo LCD HD44780 de de Hitachi Módulo LCD HD4478 de de Hitachi y el el µc µc85 Módulo LCD HD4478 de de Hitachi E R / W D-D7 D-D7 VDD Vo Vss Controlador Controlador del del LCD LCD HD4478 HD4478 Manejador Manejador Del Del LCD LCD Manejador

Más detalles

Tema 4. Organización de la memoria

Tema 4. Organización de la memoria Tema 4 Organización de la memoria 1 ARQUITECTURA DEL PIC16F84 Tema 4. Organización de la memoria Memoria de programa tipo ROM Flash de 1024 registros de 14 bits Memoria de datos dividida en dos áreas:

Más detalles

MANUAL DE USUARIO Serial LCD Backpack V2 MCI-MA-0150 REV. A

MANUAL DE USUARIO Serial LCD Backpack V2 MCI-MA-0150 REV. A MANUAL DE USUARIO Serial LCD Backpack V2 MCI-MA-0150 REV. A Ingeniería MCI Ltda. Luis Thayer Ojeda 0115 of. 1105, Providencia, Santiago, Chile. MANUAL DE USUARIO SERIAL LCD BACKPACK V2 Página 2 de 9 Ingeniería

Más detalles

Manejo LCD Gráfico DSM

Manejo LCD Gráfico DSM Manejo LCD Gráfico DSM Christopher Orihuela Sosa 10/09/07 Índice Introducción...1 Hardware...2 LCD...3 patillaje...4 tabla de instrucciones...5 Timings...6 Organización de la pantalla...8 Circuito completo...9

Más detalles

Nelson David Muñoz Politécnico CJIC TUTORIAL DISPLAYS

Nelson David Muñoz Politécnico CJIC  TUTORIAL DISPLAYS 1 TUTORIAL DISPLAYS OBJETIVOS Familiarizarse con el manejo de displays de 7 segmentos por medio de microcontroladores. Crear y manipular variables y vectores de constantes. Realizar la implementación física

Más detalles

Teclado Matricial. Ing. Diego Chacón

Teclado Matricial. Ing. Diego Chacón Teclado Matricial Ing. Diego Chacón Teclado 4x4 y PIC16f877A Uno de los periféricos bastante util que usamos en algunos proyectos con microcontroladores es teclado matricial. Normalmente los encontramos

Más detalles

CODIGO EN ASSEMBLER ;************************************************************************

CODIGO EN ASSEMBLER ;************************************************************************ RECEPTOR CODIGO EN ASSEMBLER ;************************************************************************ list p=16f84a ;selecion de pic radix hex ; codigo hex pc equ 02h status equ 03h portb equ 06h PORTA

Más detalles

SISTEMA MÍNIMO BASADO EN EL PIC16F84

SISTEMA MÍNIMO BASADO EN EL PIC16F84 PRÁCTICA 0 CIRCUITO BASE SISTEMA MÍNIMO BASADO EN EL PIC16F84 1 PRÁCTICA 1_1 COMPUERTA AND DE TRES ENTRADAS Hardware X0 X1 X2 Y 2 Comportamiento esperado INICIO Configurar Puerto A como entradas y Puerto

Más detalles

Registros de desplazamiento

Registros de desplazamiento Registros de desplazamiento Definición de registro de desplazamiento básico Tipos de registro de desplazamiento Configuraciones específicas Aplicaciones más típicas VHDL Ejercicio propuestos Definición

Más detalles

TUTORIAL II parte A. Observemos el diagrama de pines del microcontrolador 16F877A:

TUTORIAL II parte A. Observemos el diagrama de pines del microcontrolador 16F877A: 1 TUTORIAL II parte A OBJETIVOS Conocer el manejo de puertos del microcontrolador 16F877A, registros TRIS y PORT. Familiarizarse con las principales instrucciones del lenguaje y la estructura de un programa

Más detalles

UNIDAD 6 PANTALLAS LCD (LIQUID-CRYSTAL DISPLAY)

UNIDAD 6 PANTALLAS LCD (LIQUID-CRYSTAL DISPLAY) UNIDAD 6 PANTALLAS LCD (LIQUID-CRYSTAL DISPLAY) Objetivo y Programa de la Unidad 6 Objetivo de la presentación En esta Unidad vamos a hablar de la pantalla LCD como periférico de salida: te va a permitir

Más detalles

MEMORIA EJERCICIO 1 EJERCICIO 2

MEMORIA EJERCICIO 1 EJERCICIO 2 MEMORIA EJERCICIO 1 Determinar el mapa de memoria de un procesador con 16 señales de bus de direcciones, una señal de asentimiento de bus de direcciones AS, una señal de lectura R, otra de escritura W

Más detalles

[CURSO BÁSICO DE PIC TABLAS]

[CURSO BÁSICO DE PIC TABLAS] 2009 GRUPO ESTUDIANTIL INVENTRONICA Joel Oswaldo Campos Pérez [CURSO BÁSICO DE PIC ] En esta sección explicaremos que son las tablas, para que se usan y como se hacen. Se describe un ejercicio completo

Más detalles

Capítulo No. 07 Pantalla de Caracteres LCD

Capítulo No. 07 Pantalla de Caracteres LCD Capítulo No. 07 Pantalla de Caracteres LCD Sistema de Desarrollo para MC, modelo MDK-B28-150 - Introducción. En capítulos anteriores, se han utilizado como dispositivos de visualización los diodos LED

Más detalles

Programación y Aplicaciones de los Microcontroladores PIC16FXXX (Nivel Básico) ING. EULER DEZA FIGUEROA

Programación y Aplicaciones de los Microcontroladores PIC16FXXX (Nivel Básico) ING. EULER DEZA FIGUEROA Programación y Aplicaciones de los Microcontroladores PIC16FXXX (Nivel Básico) ING. EULER DEZA FIGUEROA ESTRUCTURA Y CONTENIDO: SESIONES DE CLASE CONTENIDOS PRACTICA PRIMERA (5 horas ) SEGUNDA (5 horas

Más detalles

Medidas de Distancia mediante Rayos Infrarrojos

Medidas de Distancia mediante Rayos Infrarrojos Medidas de Distancia mediante Rayos Infrarrojos Con un nuevo módulo sensor de proximidad. La casa Sharp ha fabricado un nuevo sensor, en la forma del módulo GP2D02 que, con la ayuda de un microcontrolador,

Más detalles

PROBLEMA 1 (2.5 puntos): SOLUCIÓN

PROBLEMA 1 (2.5 puntos): SOLUCIÓN PROBLEMA 1 (2.5 puntos): SOLUCIÓN Diseñe un microprocesador con las siguientes características: 16KB de memoria de datos. 8KB de memoria de programa. Juego de 128 instrucciones de 16 bits. Bus de datos

Más detalles

Apéndice A. Programas y Diagramas de Bloques para los Microprocesadores

Apéndice A. Programas y Diagramas de Bloques para los Microprocesadores Apéndice A Programas y Diagramas de Bloques para los Microprocesadores 120 Microprocesador PIC16F84A (Transmisor): Figura A.1 Diagrama de bloques del PIC16F84A en transmisor ;***********************************Transmisor.asm********************************

Más detalles

Carrera: Técnico Superior en Técnicas Digitales. Alumnos: Emiliano Teseo y José Luis Fernández

Carrera: Técnico Superior en Técnicas Digitales. Alumnos: Emiliano Teseo y José Luis Fernández Carrera: Técnico Superior en Técnicas Digitales Instituto: CENT 57 Trabajo final Año 2005 Alumnos: Emiliano Teseo y José Luis Fernández 1 ILUMINACION PARA VIDRIERAS Descripción general (Guía para el usuario)

Más detalles

SISTEMAS ELECTRÓNICOS DIGITALES

SISTEMAS ELECTRÓNICOS DIGITALES SISTEMAS ELECTRÓNICOS DIGITALES PRÁCTICA 6 SISTEMA DE ENCRIPTACIÓN 1. Objetivos - Estudio del funcionamiento de memorias RAM y CAM. - Estudio de métodos de encriptación y compresión de datos. 2. Enunciado

Más detalles

PRÁCTICA 2: Programas básicos. Tipos de direccionamiento.

PRÁCTICA 2: Programas básicos. Tipos de direccionamiento. SISTEMAS ELECTRÓNICOS Y AUTOMÁTICOS PRACTICAS DE MICROCONTROLADORES PIC PRÁCTICA 2: Programas básicos. Tipos de direccionamiento. Tipos de direccionamiento Ejemplos y ejercicios - 1 - 1. Objetivos - Introducir

Más detalles

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERIA MECANICA Y ELECTRICA INGENIERIA EN COMUNICACIONES Y ELECTRÓNICA ACADEMIA DE COMPUTACIÓN

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERIA MECANICA Y ELECTRICA INGENIERIA EN COMUNICACIONES Y ELECTRÓNICA ACADEMIA DE COMPUTACIÓN INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERIA MECANICA Y ELECTRICA UNIDAD CULHUACAN INGENIERIA EN COMUNICACIONES Y ELECTRÓNICA ACADEMIA DE COMPUTACIÓN LABORATORIO DE CIRCUITOS DIGITALES

Más detalles

CAPÍTULO 2. ARQUITECTURA Y COMPONENTES.

CAPÍTULO 2. ARQUITECTURA Y COMPONENTES. CAPÍTULO 2. ARQUITECTURA Y COMPONENTES. 2.1. ARQUITECTURA DEL SISTEMA. Vamos a proporcionar en este apartado una visión general de la arquitectura del sistema, para que así el lector pueda obtener una

Más detalles

(Scaras)

(Scaras) Guía Rápida RCX240 (Scaras) Índice de contenidos 1. Descripción del terminal RPB-E 2. Pantalla del terminal RPB-E 3. Teclado y Bloques de teclas del terminal RPB-E 4. Parada de emergencia 5. Reset de

Más detalles

DESCRIPCIÓN DE LAS INSTRUCCIONES

DESCRIPCIÓN DE LAS INSTRUCCIONES Todas las instrucciones del PIC cumplen las siguientes condiciones: Las instrucciones son simples y rápidas. Todas tienen un tiempo de ejecución de un ciclo de instrucción (cuatro ciclos de reloj) a excepción

Más detalles

EXPERIMENTO 7. Display de Cristal Líquido

EXPERIMENTO 7. Display de Cristal Líquido EXPERIMENTO 7 Display de Cristal Líquido 7.1 Propósito: Aprender a desplegar texto programado a un Display de Cristal Líquido mediante la utilización del microcontrolador Z8 PLUS. 7.2 Material Utilizado:

Más detalles

Microcontrolador PIC16F84: Arquitectura

Microcontrolador PIC16F84: Arquitectura Microcontrolador PIC16F84: Arquitectura La arquitectura del PIC es tipo Harvard: Mem. de Programa (instrucciones) (tipo FLASH) Control DIR DATOS µp (tipo RISC, pipeline de 2 etapas) Control DIR DATOS 14

Más detalles

Examen 22 de Febrero 2006

Examen 22 de Febrero 2006 Problema 1 Examen 22 de Febrero 2006 La dirección de marketing de una conocida empresa de desodorantes ha decidido entregar un regalo con cada desodorante en spray. Para ello ha sido encargada la construcción

Más detalles

DISPLAY LCD MICROPROCESADORES

DISPLAY LCD MICROPROCESADORES Módulo LCD HD4478 de de Hitachi Módulo LCD HD4478 de de Hitachi E R / W D-D7 D-D7 VDD Vo Vss Controlador Controlador del del LCD LCD HD4478 HD4478 Manejador Manejador Del Del LCD LCD Manejador Manejador

Más detalles

P1.0,... P1.7 7 EN3 EN2

P1.0,... P1.7 7 EN3 EN2 Ing. O. Richer Microprocesadores I Práctica #7 Manejo de un Display Trabajo en grupo. Conecte al microcontrolador 8051 un display formado por 5 dígitos a base de LED s de siete segmentos, como se muestra

Más detalles

Tema: Uso de pantalla matricial LCD y teclado matricial con eliminación de rebote.

Tema: Uso de pantalla matricial LCD y teclado matricial con eliminación de rebote. 1 Facultad: Ingeniería Escuela: Electrónica Asignatura: Microcontroladores Lugar de ejecución: Laboratorio de microprocesadores, Edif. 3 Electrónica. Tema: Uso de pantalla matricial LCD y teclado matricial

Más detalles

Cómo gobernar un display LCD alfanumérico basado en el controlador HD44780

Cómo gobernar un display LCD alfanumérico basado en el controlador HD44780 Cómo gobernar un display LCD alfanumérico basado en el controlador HD44780 Descarga desde: http://eii.unex.es/profesores/jisuarez/descargas/ip/lcd_alfa.pdf José Ignacio Suárez Marcelo Universidad de Extremadura

Más detalles

Tutoría 2. Banco de memoria de 8 y 16 bits (8086)

Tutoría 2. Banco de memoria de 8 y 16 bits (8086) Tutoría 2. Banco de memoria de 8 y 16 bits (8086) RESUMEN Cuando el procesador opera en modo mínimo, éste genera las señales de control para la memoria y los dispositivos de E/S. [1, pág. 292]. Para utilizar

Más detalles

UNIVERSIDAD NACIONAL DE COLOMBIA SEDE BOGOTÁ FACULTAD DE INGENIERÍA INGENIERÍA MECATRÓNICA

UNIVERSIDAD NACIONAL DE COLOMBIA SEDE BOGOTÁ FACULTAD DE INGENIERÍA INGENIERÍA MECATRÓNICA UNIVERSIDAD NACIONAL DE COLOMBIA SEDE BOGOTÁ FACULTAD DE INGENIERÍA INGENIERÍA MECATRÓNICA INTRODUCCIÓN AL PIC NOMENCLATURA ARQUITECTURA. TEMPORIZACIÓN. SET DE INSTRUCCIONES. MODOS DE DIRECCIONAMIENTO.

Más detalles

Jesús Alberto Díaz Carmona Ingeniería en Informática. Curso 2005/06. Diseño de Sistemas Basados en Microprocesador

Jesús Alberto Díaz Carmona Ingeniería en Informática. Curso 2005/06. Diseño de Sistemas Basados en Microprocesador Jesús Alberto Díaz Carmona Ingeniería en Informática. Curso 2005/06. Diseño de Sistemas Basados en Microprocesador Descripción El proyecto se trata de un sistema de cámaras de vigilancia en circuito cerrado,

Más detalles

Proyecto Final: Controlador de Acuarios

Proyecto Final: Controlador de Acuarios Universidad Nacional de Rosario Facultad de Ciencias Exactas, Ingeniería y Agrimensura Escuela de Ingeniería Electrónica Informática Electrónica Proyecto Final: Controlador de Acuarios Cristian Martinez

Más detalles

Practica 1: It s alive!

Practica 1: It s alive! Pág.: 1 Practica 1: It s alive! 1.1 - Objetivo El objetivo de esta primera práctica es plantear un problema sencillo, que requiera implementar el hardware básico de un microcontrolador y comprobar su funcionamiento

Más detalles

Introducción. Modo monitor. Cuaderno técnico 4: Grabación de microcontroladores PIC

Introducción. Modo monitor. Cuaderno técnico 4: Grabación de microcontroladores PIC Cuaderno técnico 4: Grabación de microcontroladores PIC [Introducción] [Modo monitor] [Arquitectura] [Autores] [Licencia] [Download] [Links] [Noticias] Introducción Los microcontroladores PIC se graban

Más detalles

LCD. Las pantallas de cristal líquido o módulos LCD, como. Módulo. con interface serial

LCD. Las pantallas de cristal líquido o módulos LCD, como. Módulo. con interface serial Módulo Módulo LCD con interface serial LCD con interface serial EDISON DUQUE C. Este módulo permite mostrar, en una pantalla de cristal líquido, los mensajes que son enviados desde una computadora o un

Más detalles

Práctica de Arquitectura de Computadores Sistemas de Entrada/Salida: Entrada/Salida Programada Curso 2016/2017

Práctica de Arquitectura de Computadores Sistemas de Entrada/Salida: Entrada/Salida Programada Curso 2016/2017 Práctica de Arquitectura de Computadores Sistemas de Entrada/Salida: Entrada/Salida Programada Curso 2016/2017 Antonio Pérez Ambite Santiago Rodríguez de la Fuente Departamento de Arquitectura y Tecnología

Más detalles

LABORATORIO DE SISTEMAS DIGITALES II

LABORATORIO DE SISTEMAS DIGITALES II LABORATORIO DE STEMAS DIGITALES II PRÁCTICA 4 UTILIZACIÓN DE PERIFERICOS EXTERS Y COMUNICACIONES SERIE Departamento de Sistemas Electrónicos y de Control Curso 2005/2006 INDICE 1.- INTRODUCCIÓN....2 2.-

Más detalles

Arquitectura Interna del 8088

Arquitectura Interna del 8088 Arquitectura Interna del 8088 Intel diseñó el 8088/8086 para realizar al mismo tiempo las principales funciones internas de transferencia de datos y búsqueda de instrucciones. Para conseguir esto, el 8088

Más detalles

Introducción al uso de los Controladores Lógicos Programables (PLC).

Introducción al uso de los Controladores Lógicos Programables (PLC). UNIVERSIDAD DE LOS ANDES FACULTAD DE INGENIERÍA ESCUELA DE INGENIERÍA ELÉCTRICA DEPARTAMENTO DE CIRCUITOS Y MEDIDAS LABORATORIO DE SISTEMAS DE CONTROL Introducción al uso de los Controladores Lógicos Programables

Más detalles

SERVOS v1.0 INTRODUCCIÓN

SERVOS v1.0 INTRODUCCIÓN INTRODUCCIÓN El módulo Servos v1.0 está diseñado para controlar diez servomotores de forma independiente, gobernado por un microcontrolador PIC18F previamente programado, es capaz de recibir la información

Más detalles

PROGRAMACIÓN EN ASSEMBLER SIMULADOR MSX88

PROGRAMACIÓN EN ASSEMBLER SIMULADOR MSX88 PROGRAMACIÓN EN ASSEMBLER SIMULADOR MSX88 REPASO CONCEPTO DE PROGRAMA ANTES se tenían sistemas cableados Datos Secuencia de funciones aritmético/lógicas Resultados Programación en hardware: cuando cambiamos

Más detalles

Velocidades Típicas de transferencia en Dispositivos I/O

Velocidades Típicas de transferencia en Dispositivos I/O Entradas Salidas Velocidades Típicas de transferencia en Dispositivos I/O Entradas/Salidas: Problemas Amplia variedad de periféricos Entrega de diferentes cantidades de datos Diferentes velocidades Variedad

Más detalles

1. Proponer un circuito que tenga el puerto b como salida conectando 8 leds, realizando un programa que me encienda los bits 0, 1, 3, 5, 7.

1. Proponer un circuito que tenga el puerto b como salida conectando 8 leds, realizando un programa que me encienda los bits 0, 1, 3, 5, 7. 1. Proponer un circuito que tenga el puerto b como salida conectando 8 leds, realizando un programa que me encienda los bits 0, 1, 3, 5, 7. a. Diagrama de flujo b. Circuito C1 4 MHZ C2 R2 10k 16 15 4 R1

Más detalles

La Instrucción CALL CCFF DPE MÓDULO DE PROYECTOS 2

La Instrucción CALL CCFF DPE MÓDULO DE PROYECTOS 2 Las Subrutinas La Instrucción CALL El PIC 16f84, dentro de su set de instrucciones, y para llamar a las subrutinas, posee la instrucción CALL. Esta instrucción, lo que hace es guardar en la PILA, la dirección

Más detalles

ARQUITECTURA DE COMPUTADORES DESCRIPCIÓN BUS PCI (Tema 1: Conexión Externa de Procesadores. Buses)

ARQUITECTURA DE COMPUTADORES DESCRIPCIÓN BUS PCI (Tema 1: Conexión Externa de Procesadores. Buses) ARQUITECTURA DE COMPUTADORES DESCRIPCIÓN BUS PCI (Tema 1: Conexión Externa de Procesadores. Buses) http:// www.atc.us.es Índice 1. Características bus PCI 2. Señales PCI 3. Transferencias PCI 4. Comandos

Más detalles

ORGANIZACIÓN INTERNA + INTRODUCCIÓN AL ENSAMBLADOR

ORGANIZACIÓN INTERNA + INTRODUCCIÓN AL ENSAMBLADOR ORGANIZACIÓN INTERNA + INTRODUCCIÓN AL ENSAMBLADOR ORGANIZACIÓN de la MEMORIA Dentro del PIC16F877 se distinguen tres bloques de memoria. Memoria de programa En sus 8192 posiciones (8K) contiene el programa

Más detalles

Microcontrolador PIC 16F84

Microcontrolador PIC 16F84 PROGRAMACIÓN PIC (II) Microcontrolador PIC 16F84 mail : enric.serra 0 - INTRODUCCIÓN. Este documento es una continuación al documento de programación del PIC 16f84. Este documento se puede copiar y utilizar

Más detalles

Capítulo 3. El Software

Capítulo 3. El Software Capítulo 3 El Software El software del sistema se compone de dos partes: el programa de microcontrolador y el programa de la PC. Como se indicó en el capítulo anterior, el microcontrolador lleva a cabo

Más detalles

UNIDAD 1. COMPONENTES DEL COMPUTADOR

UNIDAD 1. COMPONENTES DEL COMPUTADOR UNIDAD 1. COMPONENTES DEL COMPUTADOR OBJETIVO Nº 1.1: DEFINICIÓN DE COMPUTADOR: Es un dispositivo electrónico compuesto básicamente de un procesador, una memoria y los dispositivos de entrada/salida (E/S).

Más detalles