GSM SIM-300 problema de mensaje de lectura

0

No puedo obtener una respuesta adecuada de mi módem GSM 300, a veces responde sin nada, a veces responde la mitad de la línea de UN mensaje desde la bandeja de entrada completa, a veces simplemente envía el comando (AT + CMGR = 1) I Acabo de enviar, de vuelta muchas veces.

Pantallas de impresión:

  • devuelve mi comando: enlace
  • responde sin nada: enlace
  • responde con media línea de un mensaje desde la bandeja de entrada COMPLETA: enlace
  • responde con basura: enlace

Estoy usando Arduino, conectando directamente el Tx y Rx de la placa a Rx y Tx de arduino, y GND a Arduino GND.

CODE:

char incomingByte=0; 
void setup() 
 {
  Serial.begin(9600);
  delay(2000);
  Serial.println("AT+CMGF=1");
  delay(2000);
  Serial.println("AT+CMGR=1");
  delay(2000); 
 }

 void loop()
 {   
    while (Serial.available() > 0) 
    {      
       incomingByte = Serial.read();              
       if(incomingByte!='\n'){ Serial.print(incomingByte); }
       if(incomingByte=='\n'){ Serial.print(incomingByte); }              
    }
 }

Puede que valga la pena mencionar que puedo enviar mensajes correctamente y hacer y recibir llamadas sin ningún problema.

    
pregunta user280353

1 respuesta

1

Consulte enlace

Al usar el mismo puerto serie para comunicarse con un módem y para comunicarse con su PC, está causando confusión.

  • Se está haciendo eco de la respuesta del módem al módem.
  • Los módems usualmente te devuelven los comandos.

Usaré canales separados como se muestra en el tutorial serial de Arduino.

La última vez que hice algo como esto (con un Arduino comunicándose con un dispositivo serie MIDI) usé una pantalla LCD de 16x2 para mostrar lo que se estaba recibiendo. Pero puede usar el software serie si lo prefiere (o no tiene un LCD de caracteres)

    
respondido por el RedGrittyBrick

Lea otras preguntas en las etiquetas