Go Down

Topic: Problema al enviar múltiples sms con modulo SIM800L (Read 187 times) previous topic - next topic

ROD_JACk

Hola que tal les explico el problema, el código implementado funciona cuando se quiere enviar un solo mensaje de texto y hacer llamadas con un chip telcel de mexico, el problema aparece cuando se requiere enviar un mensaje tras otro después de un cierto periodo de tiempo no entiendo porque no me deja enviar un segundo mensaje, y el segundo problema es que el tiempo que transcurre desde que el modulo envía el mensaje hasta que el destinatario o recibe es de 30 segundos exactos y no se como reducir ese tiempo si alguien podría asesorarme se lo agradecería

Adjunto codigo

Code: [Select]


// =======Empieza la configuracion del SIM800L por primera ves=========
  Send_AT("ATE0", 100);                //Echo apagado
  AT_echo = false;
  Send_AT("AT+CNMI=1,2,2,1,0\r", 700);
  Send_AT("AT+IFC=1, 1", 500);
  Send_AT("AT+CMGF=1", 500);         //cambia el modo de texto a modo de texto SMS
  Send_AT("AT+CPBS=\"SM\"\r", 500);
  Send_AT("AT+CSCS=\"GSM\"", 100);       // Codificación para modo texto SMS
  Send_AT("AT+CMGDA=DEL ALL\r\n", 1000); // Borra todos los mensajes de la memoria
  Send_AT("AT+VGR=255", 100);            //Ajustamos la ganancia.


void Send_AT(String AT_com, int delay_com) //envia los comandos aT
{
  gsmSerial.println(AT_com);
  delay(delay_com);
}



void Send_SMS(String phone, String mess) //funcion para enviar mensajes a diferentes numeros
{
  gsmSerial.print("AT+CMGS=");
  gsmSerial.println("\"" + phone + "\""), delay(100); //Numero a enviar el sms
  gsmSerial.println(mess);
  delay(100), gsmSerial.print((char)26), delay(100);
  gsmSerial.println();
  gsmSerial.println("AT+CMGD=1");       //Borra el mensaje
  Serial.println("Send_SMS: " + mess);
  delay(1000);
}



Cuando quiero enviar un mensaje solo llamo la funcion send_SMS y lo hace sin problema la primera ves pero si despues que termina de ejecutarse lo vuelvo a llamar no hace nada

Gracias!

Go Up