Professional Documents
Culture Documents
Ahora que estamos listos para la programacin, abrir AVR Studio 5 y crear nuevo
proyecto. Si eres nuevo en AVR Studio 5, ver esta pgina para empezar. Ahora,
en el panel de la derecha, se encuentra el Explorador de
soluciones ventana. All, haga clic derecho sobre el nombre del proyecto, vaya
a Agregar y luego elegirelemento existente .... Ahora vaya a la carpeta donde
ha descargado las bibliotecas y selecciona lcd.c y lcd.h.
Adicin de Bibliotecas
Ahora usted puede encontrar los dos archivos (el archivo c y el archivo de
cabecera) que figuran en el proyecto.Ahora siga los siguientes pasos para
configurar la biblioteca.
defecto
es
MHz. Reemplazar
con
su
propio
F_CPU
Justo debajo se encuentra la mejor parte. Usted puede elegir su propio puerto
donde a la interfaz de la pantalla LCD con! Como he dicho antes, en la operacin
de 4 bits, habr pines 4 de datos (DB4 ... DB7) y 3 pines de control (RS, R / W,
EN). Usted puede elegir cualquiera de ellos para ser a travs de un puerto, o
distribuido a travs de diferentes puertos.Aqu es donde lo haces. Por defecto
est al otro lado PORTA. Elige ellos como por su disponibilidad pin.
Ahora, si usted contina para desplazarse, usted encontrar una lista de todas
las funciones definidas en la biblioteca junto con su descripcin. Usted
encontrar funciones como lcd_init (), lcd_clrscr (), lcd_home (), lcd_gotoxy (),
lcd_putc (), lcd_puts (), lcd_puts_p (), lcd_command (), lcd_data () y lcd_puts_P
(). Su descripcin se adjunta alongwith la declaracin.
Codificacin
Ahora que ya ha pasado por las diferentes funciones disponibles, vamos a
escribir un cdigo de ejemplo para l. No te olvides de incluir "lcd.h" archivo de
cabecera.
#include <avr/io.h>
#include <util/delay.h>
#include "lcd.h"
int main(void)
{
lcd_init(LCD_DISP_ON_CURSOR); /*
cursor on */
/*
/*
while(1)
/*
{
lcd_clrscr();
/*
lcd_home();
/*
lcd_puts("hello");
/*
lcd_gotoxy(0,1);
/*
lcd_puts("maxEmbedded"); /*
_delay_ms(50);
/*
}
}
Descripcin detallada
Rutinas bsicas para interactuar con una pantalla LCD de caracteres basado en
HD44780U.
#include <lcd.h>
LCD_CONTROLLER_KS0073
LCD_LINES
#define
LCD_DISP_LENGTH
16
#define
LCD_LINE_LENGTH
0x40
#define
LCD_START_LINE1
0x00
#define
LCD_START_LINE2
0x40
#define
LCD_START_LINE3
0x14
#define
LCD_START_LINE4
0x54
#define
LCD_WRAP_LINES
Normalmente las cuatro lneas de datos deben ser asignadas a bits 0..3 en un puerto,
pero es posible conectar estas lneas de datos en un orden diferente o incluso en puertos
diferentes, adaptando las definiciones LCD_DATAx_PORT y LCD_DATAx_PIN.
Ajuste estas definiciones a tu objetivo.
Estas definiciones pueden ser definidos en un archivo separado
incluyen lcd_definitions.h en lugar de modificar este archivo aadiendoD_LCD_DEFINITIONS_FILE al CDEFS seccin en el Makefile. Todas las definiciones
aadidas a la lcd_definitions.h archivo anularn las definiciones por defecto de lcd.h
#define
LCD_IO_MODE
#define
LCD_PORT
#define
LCD_DATA0_PORT
LCD_PORT
#define
LCD_DATA1_PORT
LCD_PORT
#define
LCD_DATA2_PORT
LCD_PORT
#define
LCD_DATA3_PORT
LCD_PORT
#define
LCD_DATA0_PIN
#define
LCD_DATA1_PIN
#define
LCD_DATA2_PIN
#define
LCD_DATA3_PIN
#define
LCD_RS_PORT
#define
LCD_RS_PIN
#define
LCD_RW_PORT
#define
LCD_RW_PIN
PORTA
LCD_PORT
LCD_PORT
#define
LCD_E_PORT
#define
LCD_E_PIN
LCD_PORT
LCD_DELAY_BOOTUP
16000
#define
LCD_DELAY_INIT
#define
LCD_DELAY_INIT_REP
64
#define
LCD_DELAY_INIT_4BIT
64
#define
LCD_DELAY_BUSY_FLAG
#define
LCD_DELAY_ENABLE_PULSE
5000
LCD_CLR
#define
LCD_HOME
#define
LCD_ENTRY_MODE
#define
LCD_ENTRY_INC
#define
LCD_ENTRY_SHIFT
#define
LCD_ON
#define
LCD_ON_DISPLAY
#define
LCD_ON_CURSOR
#define
LCD_ON_BLINK
#define
LCD_MOVE
#define
LCD_MOVE_DISP
#define
LCD_MOVE_RIGHT
#define
LCD_FUNCTION
#define
LCD_FUNCTION_8BIT
4BIT) * /
#define
LCD_FUNCTION_2LINES
#define
LCD_FUNCTION_10DOTS
#define
LCD_CGRAM
#define
LCD_DDRAM
#define
LCD_BUSY
#define
LCD_ENTRY_DEC
cursor dir * /
#define
LCD_ENTRY_DEC_SHIFT
#define
LCD_ENTRY_INC_
movimiento dir * /
#define
LCD_ENTRY_INC_SHIFT
#define
LCD_DISP_OFF
#define
LCD_DISP_ON
#define
LCD_DISP_ON_BLINK
#define
LCD_DISP_ON_CURSOR
#define
LCD_DISP_ON_CURSOR_BLINK
parpadeo * /
#define
LCD_MOVE_CURSOR_LEFT
(disminucin) * /
#define
LCD_MOVE_CURSOR_RIGHT
*/
#define
LCD_MOVE_DISP_LEFT
#define
LCD_MOVE_DISP_RIGHT
#define
LCD_FUNCTION_4BIT_1LINE
puntos 5x7 * /
#define
LCD_FUNCTION_4BIT_2LINES
puntos 5x7 * /
#define
LCD_FUNCTION_8BIT_1LINE
puntos 5x7 * /
#define
LCD_FUNCTION_8BIT_2LINES
puntos 5x7 * /
#define
LCD_MODE_DEFAULT
LCD_ENTRY_INC))
Funciones
vaco
vaco
lcd_clrscr (void)
Borrar pantalla y ajustar el cursor a la posicin inicial. Ms ...
vaco
lcd_home (void)
Establecer cursor a la posicin inicial. Ms ...
vaco
vaco
lcd_putc (char c)
Carcter pantalla en la posicin actual del cursor. Ms ...
vaco
vaco
vaco
vaco
#define
lcd_puts_P (__s)
LCD_PORT
LCD_PORT
LCD_PORT
LCD_PORT
#define LCD_DATA1_PIN 1
pin para los datos de 4 bits bit 1
#define LCD_DATA2_PIN 2
pin para los datos de 4 bits bit 2
#define LCD_DATA3_PIN 3
pin para los datos de 4 bits bit 3
LCD_RS_PORT #define
LCD_PORT
LCD_PORT
LCD_PORT
Devoluciones
ninguno
void lcd_clrscr ( vaco )
Borrar pantalla y ajustar el cursor a la posicin inicial.
Devoluciones
ninguno