Hola chicos, resulta que tengo problemillas con la recepción de datos con el CCS ...
simulándolo en el Proteus, noto que contador de programa no regresa a la rutina principal luego de ejecutarse la interrupción. Para eso, lo hice fue colocar led_putc dentro de la rutina del RDA_isr() para ver si enviaba la cadena a la lcd, lo hace pero nunca sale de la interrupción. Sin ejecutar la interrupción, funciona de mil maravillas .... Pensaba pues que en assembler, borrar RCIF del PIR1 pero en CCS???
.
.
#include <lcd.c>
// *** Rutina Interrupcion por RX USART ***
#int_RDA
void RDA_isr(void){
lcd_putc("Hola");
}
// ********
void main (){
lcd_init();
.
.
enable_interrupts(INT_RDA);
enable_interrupts(GLOBAL);
// *** Rutina Principal ***
while (TRUE){
output_low(PIN_B1);
delay_ms(1000);
output_high(PIN_B1);
delay_ms(1000);
}
// *************
}Bueno este es un fragmento del código test que estoy usando ...
ayuda plsss