Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
primer_programa_lcd [2019/06/12 01:43] admin |
primer_programa_lcd [2019/07/30 21:29] (actual) admin |
||
---|---|---|---|
Línea 1: | Línea 1: | ||
+ | <- manejo_de_lcd_fundamentos ^inicio^tmp102lcd-> | ||
+ | |||
====== Primer programa con LCD ====== | ====== Primer programa con LCD ====== | ||
Línea 7: | Línea 9: | ||
Para configurar el LCD se recurrirá al siguiente algoritmo visual (base). | Para configurar el LCD se recurrirá al siguiente algoritmo visual (base). | ||
- | {{:lcdvisualalg.png?nolink&481x362|Algoritmo LCD}} | + | {{:lcdvisualalg_1.png?nolink&317x384|Algoritmo LCD}} |
El **Algoritmo** permite: | El **Algoritmo** permite: | ||
- | - Iniciar el LCD. | + | - Configurar Puertos de uso de LCD. |
+ | - Iniciar el LCD. | ||
- Borrar LCD. | - Borrar LCD. | ||
- Escribir desde Fila 1 y Columna 1. | - Escribir desde Fila 1 y Columna 1. | ||
Línea 21: | Línea 24: | ||
#define F_CPU 16000000UL | #define F_CPU 16000000UL | ||
#include <util/delay.h> | #include <util/delay.h> | ||
- | |||
#include <avr/io.h> | #include <avr/io.h> | ||
- | |||
#include "lcd_lib.h" | #include "lcd_lib.h" | ||
Línea 29: | Línea 30: | ||
_delay_ms(100); // 100ms. | _delay_ms(100); // 100ms. | ||
- | LCD4_init();//Iniciar LCD interfaz 4 bits | + | DDRC=255;//Configurar pines RS y En como salida |
+ | DDRD=255;//Configurar puerto de datos de LCD en PORTC todos los pines de salida | ||
+ | LCD4_init();//Iniciar LCD | ||
LCD4_clear();//Borrar LCD | LCD4_clear();//Borrar LCD | ||
- | LCD4_gotoxy(1,1);//Escribir desde fila 1 columna 1. | + | LCD4_gotoxy(1,1);//Escribir desde fila 1 y columna 1. |
- | LCD4_write_string("Hola mundo!");//Escribir hola mundo en LCD | + | LCD4_write_string("Hola mundo!");//Escribir Hola Mundi |
while (1) { | while (1) { | ||
} | } | ||
} | } | ||
</code> | </code> | ||
+ | |||
+ | <font inherit/inherit;;#e74c3c;;inherit>**NOTA: **</font>En algunos casos es necesario desconectar la alimentación de la tarjeta de desarrollo y reiniciar. | ||
+ | |||
+ | ===== Video de funcionamiento ===== | ||
+ | |||
+ | {{lcdprimerospasos.mp4|520x340}} | ||
+ | |||
+ | ===== Escribir en segunda fila ===== | ||
+ | |||
+ | Para escribir en la segunda fila del LCD se usa el bloque //LCD escribir desde, //se debe colocar la columna y la fila. Para este caso el algoritmo visual será: | ||
+ | |||
+ | {{:lcdsegundafila.png?nolink&320x343}} | ||
+ | |||
+ | El código generado por la aplicación es el siguiente: | ||
+ | |||
+ | <code c> | ||
+ | #include <avr/io.h> | ||
+ | |||
+ | #include "lcd_lib.h" | ||
+ | |||
+ | int main(void) { | ||
+ | |||
+ | DDRC=255; | ||
+ | DDRD=255; | ||
+ | LCD4_init(); | ||
+ | LCD4_gotoxy(2,1); | ||
+ | LCD4_write_string("Hola Mundo"); | ||
+ | while (1) { | ||
+ | |||
+ | } | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | ===== Video de funcionamiento ===== | ||
+ | |||
+ | {{lcdsegundalinea.mp4|520x340}} | ||