arduino-sim300 gsm comunicación

-1

Estoy estableciendo una conexión en serie entre el arduino uno y el módulo sim300 gsm. Una forma de hacerlo es quitar el circuito max232 y soldar cables de rx tx a la placa arduino. Una segunda forma es usar un convertidor RS232 / TTL ( enlace ).

Probé el segundo método. Conecté el convertidor al arduino usando un conector de db9 a db9. Pero no parece que se haya establecido una conexión en serie cuando probé un programa básico de envío de SMS cuyo código es el siguiente:

char phone_no[]="<phone number>"; //phone number

void setup() {

Serial.begin(9600); //Open Serial connection at baud 9600

delay(2000);

Serial.println("AT+CMGF=1"); //set GSM to text mode

delay(200);

}

void loop() {

delay(1500);

Serial.print("AT+CMGS=\"");

Serial.print(phone_no);

Serial.println("\"");

while(Serial.read()!='>');

{

  Serial.print("Test Message");  //SMS body 

delay(500); 

Serial.write(0x1A);  // sends ctrl+z end of message 

Serial.write(0x0D);  // Carriage Return in Hex 

Serial.write(0x0A);  // Line feed in Hex 
}

}

Las conexiones que hice son: RX de ttl convertor a RX de arduino.

TX de ttl convertor a TX de arduino.

gnd to gnd.

5V de convertidor a 5V de arduino.

El código se cargó correctamente a la placa, pero la configuración no funciona. Intenté cruzar las conexiones RX, TX conectando RX a TX y TX a RX. Pero no sirvió para nada.

Por favor ayuda.

    
pregunta math

2 respuestas

2

Rx to Tx y Tx to Rx: esta es la forma de hacerlo y mantenerlo de esta manera hasta que posiblemente haya encontrado el error en su código, a menos que ya no pueda cargarlo. En cuyo caso volverás a como lo tenías.

    
respondido por el Andy aka
-2

haga el número de teléfono como una cadena y luego use este comando "AT + CMGS \=" 091 * * \ "\ r" LA barra diagonal invertida r significa retorno de carro o simplemente no hay necesidad de poner ln

    
respondido por el Renzy

Lea otras preguntas en las etiquetas