TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: huichoman en 08 de Diciembre de 2010, 00:30:43
-
Despues de mas de 1 año de ausencia en el mundillo de los pics. Hoy traté de desplegar un hola mundo en un LCD.
Pero nada de nada, el pic se congela.
Uso oscilador interno y librería LCD420.c que incluye el compilador CCS.
La simulación en proteus funciona al 100%. El problema es en la implementación física.
Si quito la instrucción: lcd_init(); El led enciende y apaga tal y como está programado.
Pero si coloco la instrucción cualquiera ya sea para inicializar el lcd o para imprimir, el programa deja de funcionar.
El código:
#include <18f2220.h>
#fuses INTRC_IO,nowdt,noput,nobrownout,nolvp,noprotect,nomclr,nostvren,nodebug
#use delay(internal=4M)
//#use delay(clock=4M)
#include "lcd420.c"
void main (void)
{
lcd_init();
while (1)
{
output_high(pin_c3);
delay_ms(1000);
output_low(pin_c3);
delay_ms(500);
output_high(pin_c3);
delay_ms(500);
output_low(pin_c3);
delay_ms(500);
output_high(pin_c3);
delay_ms(500);
output_low(pin_c3);
delay_ms(500);
output_high(pin_c3);
delay_ms(500);
output_low(pin_c3);
delay_ms(500);
output_high(pin_c3);
delay_ms(100);
output_low(pin_c3);
delay_ms(100);
output_high(pin_c3);
delay_ms(100);
output_low(pin_c3);
delay_ms(100);
output_high(pin_c3);
delay_ms(100);
output_low(pin_c3);
delay_ms(100);
output_high(pin_c3);
delay_ms(100);
output_low(pin_c3);
delay_ms(100);
lcd_putc("Hola mundo");
}
}
Saludos
-
revisa de pronto la conexion del pin R/W , creo que la libreria te dice que comentes esa linea si no vas a usarla
-
Enséñanos el esquema, a ver si hay algo raro.
-
Qué tal!
Has revisado el potenciómetro del contraste? :?
A mí me ha pasado varias veces que no se ve nada y al ajustar el contraste funciona perfecto... :P
Ojalá puedas hacerlo funcionar pronto! Nos leemos! :mrgreen:
-
Si estas utilizando la version PIC 4.112, esta version posse problemas en el manejo de LCD.