INTRODUCCIÓN
Pantalla LCD (Liquid Crystal Display) es un módulo de visualización electrónica y tiene una gran amplia gama de aplicaciones. Una pantalla LCD de 16×2 es un módulo muy básico y es muy utilizado en diversos dispositivos y circuitos. Fácilmente programables; no tienen limitación de visualización especiales y aun personajes personalizados (a diferencia de en siete segmentos), animaciones y demás. Un LCD 16×2 significa que puede mostrar 16 caracteres por línea y hay 2 tales líneas. En este LCD cada personaje se muestra en la matriz de píxeles 5×7. Este LCD tiene dos registros, es decir, del sistema y de datos. El registro de comando almacena las instrucciones de comandos dados a la pantalla LCD. Un comando es una instrucción dada a LCD para hacer una tarea predefinida como inicializarlo, despejando su pantalla, ajustar la posición del cursor, el control de pantalla, etc.
FUNCIONES DE LOS PINES DEL LCD
IMPLEMENTACIÓN DEL CIRCUITO PARA ARDUINO
CÓDIGO PARA ARDUINO
Básico
/* CREADO POR :{==[=======>>>> ELECTROALL <<<<<=======]==} INSTAGRAM : https://www.instagram.com/carlos_j_fuentess/ ó @carlos_j_fuentess FACEBOOK : https://web.facebook.com/ELECTROALL.ELECTRONICA/?_rdc=1&_rdr PÁGINA WEB : https://www.electroallweb.com/ YOUTUBE : https://www.youtube.com/c/ELECTROALL ________________________________________________________ {==[=======> (PANTALLA LCD BÁSICO) <=======]==} ________________________________________________________ */ #include <LiquidCrystal.h> // incluimos la libreria de la pantalla lcd LiquidCrystal lcd (8,9, 4,5,6,7); //reconocemos los pines de uso void setup() { lcd.begin(16,2); // Reconocemos y empezamos el LCD } void loop() { lcd.setCursor (0,0); // (Columna fila) lcd.print("ELECTROALL"); // imprimimos en la pantalla la palabra electroall en la primera fila lcd.setCursor (0,1); // (columna fila) lcd.print ("ELECTROALL"); // imprimimos en la pantalla la palabra electroallm en la seguna fila }
Estructura FOR
/* CREADO POR :{==[=======>>>> ELECTROALL <<<<<=======]==} INSTAGRAM : https://www.instagram.com/carlos_j_fuentess/ ó @carlos_j_fuentess FACEBOOK : https://web.facebook.com/ELECTROALL.ELECTRONICA/?_rdc=1&_rdr PÁGINA WEB : https://www.electroallweb.com/ YOUTUBE : https://www.youtube.com/c/ELECTROALL ________________________________________________________ {==[=======> (PANTALLA LCD ESTRUCTURA FOR) <=======]==} ________________________________________________________ */ #include <LiquidCrystal.h> // incluimos la libreria de la pantalla lcd LiquidCrystal lcd (8,9, 4,5,6,7); // //reconocemos los pines de uso void setup() { lcd.begin(16,2); // inicializamos la pantalla lcd lcd.setCursor (5,0); // empezamos con una bienvenida la cual solo se repetira una sola vez. lcd.print("WELCOME"); lcd.setCursor (2,1); lcd.print("TO ELECTROALL"); delay (5000); lcd.clear(); } void loop() { // entramos a un siclo repetitivo for (int palabra=0; palabra<=15; palabra++){ // hacemos que la "palabra" avanse 1 por 1 cada 500ms por cada cada columna del lcd lcd.setCursor (palabra,0); // este a su vez empesara desde la columna 0 hasta la columna 15 ya que esta predestinado ascendentemente lcd.print ("TUTORIAES"); lcd.setCursor (palabra,1); lcd.print ("electroall"); delay (500); lcd.clear(); // limpiamos esta instruccion para ir a la siguiente instruccion } for (int palabra=15; palabra>=0; palabra--){ // hacemos que la "palabra" retorne 1 por 1 cada 500ms por cada cada columna del lcd lcd.setCursor (palabra,0); // este a su vez empesara desde la columna 15 hasta la columna 0 ya que esta predestinado descendentemente lcd.print ("TUTORIAES"); lcd.setCursor (palabra,1); lcd.print ("electroall"); delay (500); lcd.clear(); // limpiamos esta instruccion para retornar a la primera instruccion } }
IMPLEMENTACIÓN DEL CIRCUITO PARA PIC 16F877A
CÓDIGO PARA PIC (CCS CONPILER)
Básico
#include <16f877a.h> #fuses hs, nowdt # use delay (clock=4M) /* # define lcd_rs_pin pin_b0 // esto es en caso de que yo quiero especificar los pines que yo quiero utilizar # define lcd_rw_pin pin_b1 # define lcd_enable_pin pin_b2 # define lcd_data4 pin_b4 # define lcd_data5 pin_b5 # define lcd_data6 pin_b6 # define lcd_data7 pin_b7 */ # include <lcd.c> void main (){ set_tris_d(0); // esto es si en caso que yo qiero po ner solo ines D COMO saida lcd_init(); while (true){ lcd_gotoxy (1,1); //Uvicamos la palabra en la primera fila y la primera columna printf(lcd_putc, " ELECTROALL"); // manifestamos la palabra en nuestro lcd lcd_gotoxy (1,2); //Uvicamos la palabra en la segunda fila y la primera columna printf(lcd_putc, "TUTO ELECTRIC"); delay_ms(5000); // Le damos un retardo de 500 ms lcd_putc("\f"); // borramos la palabra para entrar a otra instruccion for (int car = 0;car<=16;car++){ lcd_gotoxy(car,1); printf(lcd_putc, "ELECTROALL"); delay_ms(500); lcd_putc("\f"); } for (car=16;car>=1;Car--){ lcd_gotoxy(car,1); printf(lcd_putc, "ELECTROALL"); delay_ms(500); lcd_putc("\f"); } } }