TODOPIC
FORO TÉCNICO => Telefonía, GPS y Microcontroladores => Mensaje iniciado por: andy_andy en 26 de Febrero de 2014, 07:02:25
-
Tengo un problema con el modulo SIM340 y PIC18f2550, cuando envio un SMS a veces me llega incompleto y no puedo procesarlo correctamente.
Estoy usando para la recepción:
#int_RDA
void RDA_isr(){
USART_buffer[USART_nextRec]=fgetc(SIM300);
if(USART_buffer[USART_nextRec]!=0x0A)USART_nextRec++;
if(USART_nextRec==bytes_for_USART_buffer)USART_nextRec=0;
}
Otra opcion que busque para la recepción por interrupción esta en el ejemplo ex_sisr.c pero no entiendo muy bien como funciona.
Si alguien me pudiera ayudar explicándome como funciona el ejemplo ex_sisr.c o indicándome en que puedo mejorar la rutina que esta arriba se los agradecería un montón!!!!
Saludos!
-
Mi cabecera es:
#include <18F2550.h>
#fuses HSPLL,PROTECT,NOLVP,NODEBUG,USBDIV,PLL1,CPUDIV1,VREGEN,NOPBADEN,BROWNOUT,BORV28,CPB,NOWDT
#use delay(clock=48000000)
#use fast_io(A)
#use fast_io(B)
#use fast_io(C)
#use rs232(UART, BAUD=9600, XMIT=PIN_C6, RCV=PIN_C7, PARITY=N, BITS=8, stream=SIM300)
el error podria estar ahi??
-
Bueno le quite un if a la interrupción y ya recibo mejor... comentare mas tarde si sale :shock: