Hola gente

Estoy realizando un proyecto con el modulo SIM340DZ, que consiste en recibir un mensaje que contiene un numero de celular (vale aclarar que el mensaje es un numero de celular, y no me interesa por el momento el numero que envio el mensaje), el numero de celular que recibo debo guardarlo en la memoria de contactos del SIM, estuve viendo varios proyectos y mas que todo me base en este hilo:
http://www.todopic.com.ar/foros/index.php?topic=39570.0 Mi problema es que cuando quiero guardar el numero no guarda nada o guarda solo una parte del numero... Este es mi codigo:
void procesa_SMS(void){
char delimitante1[] = "\r\n";
char delimitante2[] = ",:\n";
char T[]="T";
char N1[]="1";
strcpy(AUX_buffer, USART_buffer);
ptr = strtok(AUX_buffer, delimitante1);
ptr = strtok(NULL, delimitante1);
strcpy(SMS_Buffer, ptr);
ptr = strtok(SMS_buffer, delimitante2);
if(strncmp(ptr,T,1)==0){
ptr=strtok(NULL,delimitante2);
if(strncmp(ptr,N1,1)==0){
ptr=strtok(NULL,delimitante2);
fprintf(SIM300,"AT+CPBW=,\"%s\",,\"numero1\"\n\r",ptr);
delay_ms(500);
responde_OK();
}
}
}
Lo demas es muy similar a lo que publico jonathanPIC888.
Estuve utilizando el pic16f876 ya que tengo varios pero la memoria ram es muy limitada asi que cambie al pic18f2550 ya que tenia algunos en casa, pense q ese era el problema pero sigue sin guardar adecuadamente el numero, me llega cortado y a veces no llega nada!
El formato de envio del mensaje seria:
T,1:XXXXXXXX (en vez de XXXXXXXX escribimos el numero a guardar en la memoria SIM)
Si alguien podria darme una sugerencia de la posible falla estaria muy agradecida

SALUDOS!!