Problema para pegar o retorno do SIM800L no Arduino

Olá, fiz a função retorno para tentar tratar o retorno do AT+CIPSEND que mando via serial para o SIM800L, porém não estou conseguindo, sempre traz algum lixo da serial, alguém pode me ajudar ?

Obs.: a procedure resposta abaixo consegue imprimir no monitor serial o retorno:

void resposta() {
   while (SIM800L.available()) {
      if (SIM800L.available() > 0) {
         Serial.write(SIM800L.read());
        }
          }
            }

String retorno() {
    char resposta[500] = "";
    int cont = 0;
    int pos = 0;
    while ((pos < 500) && (String(resposta).indexOf("OK") == -1) && (cont < 2000))
    {
       if (SIM800L.available() > 0) {
            resposta[pos] = SIM800L.read();
            pos++; }
      cont ++;
      delay(10);
    }
    return String(resposta);
  }

Exibições: 421

Responder esta

Respostas a este tópico

Retornar lixo pode ser divergência na velocidade de comunicação. Testa a biblioteca Adafruit FONA.

Boa noite,

você poderia me ajudar?

Quero apenas conectar o SIM800l ao meu Arduíno e enviar mensagens de texto.

Obrigada.

Sim. Mande email. viniciusluiz2@hotmail.com

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço