Hola tengo un problema, hasta ahora e programado en C18, pero necesito el CCS porque quiero hacer un teclado por usb y he encontrado el programa en CCS y necesito modificarlo, en un principio pense que iba a ser facil pero llevo unos cuantos quebraderos de cabeza.
Para no complicarme empeze por lo mas basico parpadeo de led , LCD...
el parpadeo en CCS sin problemas pero el problema lo tengo cuando añado la libreria LCD.c me compila perfectamente pero cuando pruebo la placa tengo un led como testigo en la primera instruccion y ni tan siquiera se enciende, si quito las instrucciones del lcd aunque estas no deberian interferir ya que estan mas abajo de la instruccion de la del led, vuelve a funcionar.
Mi unico achaque es a fallo del compilador ya que puede ser que tenga las conexiones del lcd incorrectas, pero no veo normal que no enchufe aunque sea el led que esta como primera instruccion. Ademas el conexionado del lcd lo he probado en C18 y funciona bien.
MI CODIGO
#include <18f4550.h> //archivo de cabecera
#fuses XTPLL,MCLR,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL1,CPUDIV1,NOVREGEN
// el fuse que configuramos anteriormente
#use delay(clock=4000000)
#include <lcd.c>
void main() {
set_tris_a(0x0); // configura los puertos como salidas
set_tris_b(0x0);
set_tris_c(0x0);
set_tris_d(0x0);
set_tris_e(0x0);
//----------------------------------
disable_interrupts(global);
disable_interrupts(int_timer1);
disable_interrupts(int_rda);
disable_interrupts(int_ext);
disable_interrupts(int_ext1);
disable_interrupts(int_ext2);
setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_OFF);
setup_spi(FALSE);
setup_psp(PSP_DISABLED);
setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);
port_b_pullups(FALSE);
//---------------------------
output_b (0); // saca un nivel bajo en el portb
delay_ms(1000); // retardo de 1 Seg
output_b (0xff); // saca un nivel alto en el portb
delay_ms(1000); // retardo de 1 Seg
lcd_init();
//lcd_init();
output_a (0); // saca un nivel bajo de salida en los puertos
output_c (0);
output_e (0);
lcd_putc ("uControl.com.ar");
while(1){
output_b (0); // saca un nivel bajo en el portb
delay_ms(1000); // retardo de 1 Seg
output_b (0xff); // saca un nivel alto en el portb
delay_ms(1000); // retardo de 1 Seg
}
}