Hola a toda la comunidad, estoy realizando un proyecto con el PIC18F4550 y un LCD 16 X 2 el problema esta cuando se me juntan las palabras que pongo, no se borran las anteriores.
ejemplo:
al presionar el pulsador a0 y a1 deben de aparecer "posibles fallas:" pero se junta con las del inicio y no puedo lograr que funcione como quiero, dejo una imagen para que vean como queda, espero me puedan ayudar con este problema.
ejemplo:
al presionar el pulsador a0 y a1 deben de aparecer "posibles fallas:" pero se junta con las del inicio y no puedo lograr que funcione como quiero, dejo una imagen para que vean como queda, espero me puedan ayudar con este problema.
Código:
#include <18F4550.h>
#device ADC=8
#use delay(clock=20000000)
#fuses HS,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,VREGEN,NOPBADEN,WRTB
#use standard_io(B)
#define use_portB_lcd TRUE
#include <lcd.c>
#use standard_io(A)
#use standard_io(D)
#use standard_io(C)
void main()
{
lcd_init();
delay_ms(100);
printf(lcd_putc, "\f Iniciando.");
delay_ms(400);
printf(lcd_putc, "\f Iniciando.. ");
delay_ms(400);
printf(lcd_putc, "\f Iniciando...");
delay_ms(400);
lcd_init();
output_low(pin_D1);
output_high(pin_D0);
while(true){
lcd_gotoxy(1,1);
lcd_putc("Estado:");
lcd_gotoxy(2,2);
lcd_putc("Excelente");
if(input(pin_a1)==1){
output_high(pin_D1);
output_low(pin_D0);
lcd_gotoxy(2,2);
lcd_putc("Tarjeta LED");
delay_ms(200);
}
else {
output_high(pin_D0);
output_low(pin_D1);
output_low(pin_D2);
}
if(input(pin_a2)==1){
output_high(pin_D1);
output_low(pin_D0);
lcd_gotoxy(2,2);
lcd_putc("Falla Display");
delay_ms(200);
}
if(input(pin_a3)==1){
output_high(pin_D1);
output_low(pin_D0);
lcd_gotoxy(2,2);
lcd_putc("Falla DMX");
delay_ms(200);
}
if(input(pin_a4)==1){
output_high(pin_D1);
output_low(pin_D0);
lcd_gotoxy(2,2);
lcd_putc("Motor Paneo");
delay_ms(200);
}
if(input(pin_a5)==1){
output_high(pin_D1);
output_low(pin_D0);
lcd_gotoxy(2,2);
lcd_putc("Motor Tildeo");
delay_ms(200);
}
if(input(pin_a5)==1){
output_high(pin_D1);
output_low(pin_D0);
lcd_gotoxy(2,2);
lcd_putc("Falla LEDS");
delay_ms(200);
}
if((input(pin_a0) == 1) && (input(pin_a1) == 1)){
output_high(pin_D1);
output_high(pin_D2);
lcd_gotoxy(1,1);
lcd_putc("Posible Falla:");
lcd_gotoxy(2,2);
lcd_putc("Voltaje");
}
}
}
Adjuntos
Última edición por un moderador: