Biblioteca de C para controlador de pantalla LCD HD44780 (4 / 4 paso)

Paso 4: Cómo animadas personajes en la pantalla

Animate.c

Esta imagen es bastante aburrida. Pero ver el vídeo más adelante en este post.
ejemplo Animate.c muestra las funciones animateLeft() y animateRight().

Quería darle vida a la tarea de escribir el texto que muestra.

Con hd44780_set_cursorPosition() la función, el incremento/decremento, MoveLeft y MoveRight comandos, puede hacer una animación de texto bastante agradable.

Mirar el código y ver cómo podemos lograr esta tarea.

 #include #include "hd44780_4bit_lib.h" #include /* * This code example writes text to the screen using the * Cursor Increment, Decrement and Cursor Left and Right * commands, along with some functions that anaimate the * printing of characters to the display * I was going to use timer events for the character * wait time, but I wanted the code to be non CPU specific. */void main() { WDTCTL = WDTPW | WDTHOLD; // Disable watchdog timer // according to spec give the display 10ms to come up to voltage __delay_cycles(10000 * CPUSPEED); // set up data length, number of lines and font // notice we have setup the display for 2 lines //and using the 5 x 8 character size hd44780_init(N_2LINE, FONT_8); // if needed set up the cursor // hd44780_send_command(HD44780_CMD_DISPLAY_ON_CURSOR); // hd44780_send_command(HD44780_CMD_DISPLAY_ON_CURSOR_BLINK); hd44780_send_command(HD44780_CMD_INCREMENT); hd44780_send_command(HD44780_CMD_MOVE_CURSOR_RIGHT); hd44780_setCursorPosition(0, 0); // The anaimate functions take three parameters: // The text string to print // The visible width of the display in characters // The justification, 'L' for Left justification // 'C' for centered text // 'R' for right jusificatiopn // The number of clock cycles you want to wait after // each character is printed hd44780_animateRight("This is Right", 20, 'C', 2500); hd44780_send_command(HD44780_CMD_DECREMENT); hd44780_send_command(HD44780_CMD_MOVE_CURSOR_LEFT); hd44780_setCursorPosition(1, 19); hd44780_animateLeft("This is Left", 20, 'C', 2500); hd44780_send_command(HD44780_CMD_INCREMENT); hd44780_send_command(HD44780_CMD_MOVE_CURSOR_RIGHT); hd44780_send_command(HD44780_CMD_RETURN_HOME); } 

Veamos el código y la revisión sección por sección:

 hd44780_setCursorPosition(0, 0); // The anaimate functions take three parameters: // The text string to print // The visible width of the display in characters // The justification, 'L' for Left justification // 'C' for centered text // 'R' for right jusificatiopn // The number of clock cycles you want to wait after // each character is printed hd44780_animateRight("This is Right", 20, 'C', 2500); 

Primero ponemos el contador de la dirección de CA se incrementa el texto, luego configuramos la pantalla para mover el cursor a la derecha.
Establecemos la posición del cursor a la fila 0, columna 0.

Entonces llamamos a la función de hd44780_animateRight().

Aviso que tienen que pasar unos argumentos a este método.

El texto que desea imprimir en la pantalla

Ancho visible de la línea en la pantalla, en mi línea de la pantalla uno se divide entre las líneas de dos 20 caracteres en la pantalla.

A continuación especificamos la justificación de texto en la pantalla. 'L' para justificación izquierda, 'C' de centro justificación y 'R' de justificación derecha.

También tienes que entrar en un micro segundo tiempo de pausa, este parámetro especifica el tiempo de pausa después de cada carácter se imprime en la pantalla. Cambiando este parámetro puede acelerar o ralentizar la animación de los personajes que se imprime a la pantalla.

Llamada a la función hd44780_animateRight() entonces imprime la cadena de texto a la pantalla.

 hd44780_send_command(HD44780_CMD_DECREMENT); hd44780_send_command(HD44780_CMD_MOVE_CURSOR_LEFT); hd44780_setCursorPosition(1, 19); hd44780_animateLeft("This is Left", 20, 'C', 2500); hd44780_send_command(HD44780_CMD_INCREMENT); hd44780_send_command(HD44780_CMD_MOVE_CURSOR_RIGHT); hd44780_send_command(HD44780_CMD_RETURN_HOME); 

Además, luego podemos cambiar la AC, dirección contraria al disminuir la posición del cursor y mueve los caracteres a la izquierda.
Ahora establecemos la posición del cursor a la fila 1 y columna 19, último personaje de la primera línea. Recuerde pantalla está basado en cero. Empezar a contar de 0 en lugar de otro si 1.

Luego llamamos a hd44780_animateLeft() para animar los caracteres a la izquierda.

Codificación de las muestras son sólo un ejemplo básico de lo que puede hacer con la interfaz de controlador hd44780.

Si vengo con más incorporaciones a la biblioteca va agregar cualquiera que todos sepan en un nuevo post.

Artículos Relacionados

Década contador 74LS93 - A clave para controladores de pantalla de 7 segmentos cuenta con Tutorial

Década contador 74LS93 - A clave para controladores de pantalla de 7 segmentos cuenta con Tutorial

Hola a todos!!!!!!Esta es mi Quinta de muchos tutoriales de bloque electrónico para mi próxima electrónica aprender Junta.  Este video muestra la década 74LS93 contador IC.  El propósito de este video es para enseñarte cómo crear el circuito, determi
Barato, rápido y fácil pantalla LCD reemplazo para Samsung Galaxy S3

Barato, rápido y fácil pantalla LCD reemplazo para Samsung Galaxy S3

Habían un incidente y mi teléfono golpeado en el ángulo perfecto para romper la pantalla LCD. Después de muchas búsquedas, decidí que podía sustituirlo yo mismo. Alimentación en la parte inferior fila iluminada y la luz todavía trabajaban. No tengo t
Arduino Temp/humedad con pantalla LCD y la interfaz Web

Arduino Temp/humedad con pantalla LCD y la interfaz Web

recientemente ayudó al cliente moverse de su oficina que incluyó la creación de una nueva sala de informática.Yo quería que ser capaces de controlar la temperatura y la humedad de la habitación tanto marcando una pantalla LCD en la habitación y tambi
Cómo hacer una chaqueta de emoticono con pantalla LCD

Cómo hacer una chaqueta de emoticono con pantalla LCD

Concepto:Me gustaría hacer una chaqueta que tiene una pequeña pantalla de LCD para crear subtextos para la interacción humana interpersonal. El usuario utilizaría un limitada "teclado" con botones y sensores de fuerza bajo las teclas de silicona
Mostrando la ubicación de GPS en una pantalla LCD de

Mostrando la ubicación de GPS en una pantalla LCD de

En este tutorial, será diseñar un receptor GPS para mostrar la latitud y longitud en una Pantalla de cristal líquido (LCD). GPS significa sistema de posicionamiento Global. Fue diseñado originalmente para aplicaciones militares y de inteligencia a la
Conectar una pantalla LCD con Arduino

Conectar una pantalla LCD con Arduino

en este instructable nos va a ver cómo conectar un LCD paralelo a un Arduino. La pantalla LCD que estoy usando utiliza la interfaz de HD44780 común.  Muchos LCDs tienen esto, usted puede decir generalmente por la interfaz de 16 pines. Sólo necesita 1
Forma fácil y más barato para corregir contraluz del LCD TV.

Forma fácil y más barato para corregir contraluz del LCD TV.

Requirement_TV LCDHerramientas para desmontar la pantalla LCDSMD LED no impermeable Flexible tiras de DC12V 5050Alambres, polvo y soldadorPaso 1: Desmontar el LCD TVDesarme completo LCD TV para sustituir luz de fondo utilizando herramientas.Paso 2: T
Termómetro de Arduino, pantalla LCD, termistor

Termómetro de Arduino, pantalla LCD, termistor

*** este proyecto ya no es compatible, el código de arduino es anticuado y ya no funciona, mi arduino se rompió por lo que no puedo arreglarlo, si usted tiene una sensación de solución me libre de PM! ***Su un proyecto de arduino, crear un medidor de
Controlador de pantalla táctil para la lámpara

Controlador de pantalla táctil para la lámpara

Hola chicos,Quiero compartir mi experiencia con AT89LV55 de ATMEL en controlar mi bombilla con touch screeen,la idea es simple, cambiar mi interruptor mecánico para tocar la pantalla para encender mi lámpara.Vamos a empezarPaso 1: Preparar la pieza p
Bomba defuseable de Arduino, perfecto para partidas de airsoft! (con temporizador, pantalla LCD, teclado, sonido y más!)

Bomba defuseable de Arduino, perfecto para partidas de airsoft! (con temporizador, pantalla LCD, teclado, sonido y más!)

HolaEsto es un proyecto que hice hace mucho tiempo, pero decidió subir de todos modos, no dude en preguntarme sobre ello!La bomba tiene varias características:-Entrada contraseña por teclado para armar la bombaCronómetro/cuenta atrás-Sonido-LEDs llam
Biblioteca de Arduino para Motor 28BYJ-48 paso a paso y controlador ULN2003

Biblioteca de Arduino para Motor 28BYJ-48 paso a paso y controlador ULN2003

El motor paso a paso 28BYJ-48 con el controlador ULN2003 ahora parece una configuración común. El motor y el controlador son fácilmente disponibles y baratos. Sin embargo, la biblioteca de motor de pasos de arduino estándar simplemente no funciona co
Pantalla LCD para menores $35 (reciclar viejos ordenadores portátiles)

Pantalla LCD para menores $35 (reciclar viejos ordenadores portátiles)

Hola Instructables he estado acechando alrededor y disfrutar del vasto conocimiento aquí. He decidido tratar de hacer mi instructable para ayudar a otros que están en este sitio. Así que con esto voy hacer un intento de hacer mi primer instructable.
Pantalla lcd chip hd44780 para modding de pc

Pantalla lcd chip hd44780 para modding de pc

con este instructables aprendes cómo una pequeña pantalla de carácter con un ordenador, que muestra información de la interfaz o lo que quierasLo que usted necesita:1. el chip de pantalla whit hd447802. 10kohmTrimmer3. resistencia de 100 ohm4. un vie
Android controlado pantalla LCD/LED - No Andriod para programación, No requiere de soldadura.

Android controlado pantalla LCD/LED - No Andriod para programación, No requiere de soldadura.

IntroductionEsta versión utiliza la plataforma Arduino para controlar un display de LCD/LED desde tu móvil Android.  Es una compilación de listo que requiere Android sin programación, sin soldadura y sin escribir código de Arduino, que no quiere.La e