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

Paso 2: Cómo imprimir en una posición específica del Cursor

Continuemos con la revisión de los ejemplos de código de biblioteca de LCD hd44780. Por favor consulte el post anterior para enlaces y una explicación de lo que estamos trabajando en el código fuente.

Ahora veremos el siguiente ejemplo de código:

CursorPosition.c

Nota: En la imagen de arriba, las líneas que comienzan con '0' y '1' son línea uno.
Las líneas que empiezan por '2' y '3' son dos.

La pantalla que tengo es un ERM2004-1. Soporta dos 40 líneas de carácter dividir entre 4 20 líneas de carácter en la pantalla.

Si no lo ha hecho, se refieren al último post, el enlace del repositorio de código y descargar el código fuente para que pueda seguir.

En primer lugar mostrar el ejemplo de código completo y luego discutir el código sección por sección.

 #include #include "hd44780_4bit_lib.h"/* * This code example uses the hd44780_setCursorPosition() functioh * to set the starting cursor position using row, col information * This cursor info is then written to the DDRAM address. * Using this method it is very easy to postion text on the dissplay */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_RETURN_HOME); hd44780_send_command(HD44780_CMD_CLEAR_DISPLAY); // set Increment direction and cursor direction hd44780_send_command(HD44780_CMD_INCREMENT); hd44780_send_command(HD44780_CMD_MOVE_CURSOR_RIGHT); // hd44780_send_command(HD44780_CMD_RETURN_HOME); //hd44780_send_command(HD44780_CMD_CLEAR_DISPLAY); // The display I am testing with is a two line 40 character display // The display shows 20 characters per line so each line wraps twice // for what looks like a 4 line display. // On line one if you write past the 20th character the text // shows up on what appears // to be the third line. // Same goes for the second line, any character past the // 20th character is written // to what appears to be the fourth line. // hd44780_setCursorPosition(0, 0); hd44780_write_string("0123456789"); hd44780_setCursorPosition(0, 10); hd44780_write_string("0123456789"); hd44780_setCursorPosition(0, 20); hd44780_write_string("11234567890123456789"); hd44780_setCursorPosition(1, 0); hd44780_write_string("21234567890123456789"); hd44780_setCursorPosition(1, 20); hd44780_write_string("31234567890123456789"); hd44780_send_command(HD44780_CMD_RETURN_HOME);} 

La sección primera del código se explica en la sección anterior.

La función de hd44780_send_command() define la interfaz de hd44780 para enviar comandos al IR, registro de instrucción. Estos comandos solo se configuración la pantalla para escribir.

Si usted está interesado, por favor consulte la especificación de hd4780 para más detalles. Consulte el post anterior para un enlace para la especificación.

 hd44780_setCursorPosition(0, 0); hd44780_write_string("0123456789"); hd44780_setCursorPosition(0, 10); hd44780_write_string("0123456789"); hd44780_setCursorPosition(0, 20); hd44780_write_string("11234567890123456789"); hd44780_setCursorPosition(1, 0); hd44780_write_string("21234567890123456789"); hd44780_setCursorPosition(1, 20); hd44780_write_string("31234567890123456789"); hd44780_send_command(HD44780_CMD_RETURN_HOME); 

La función hd44780_setCursorPosition() llama a una instrucción, llamada ' Dirección DDRAM Set "
Los argumentos pasados a configurar la línea y cursor Coloque de manera que los datos de tiempo siguiente se envía a la pantalla, que datos se coloca en el lugar correcto.

La función hd44780_write_string() la cadena pasada e imprime un carácter a la vez para la ubicación inicial especificada por la función hd44780_setCursorPosition(). El contador de dirección de AC trabaja magia para que no tenga que preocuparse de incrementar o disminuir la posición del cursor.

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