Enviar un texto desde 8051 usando TR800

-1

Necesito ayuda para escribir un código que permita al 8051 enviar mensajes de texto con un módem GSM TR800 a cualquier número. No tengo ni idea de por dónde empezar. He intentado lo siguiente:

#include <reg51.h>
void SerTx(unsigned char);
void main(void){
int i =0;
TMOD=0x20; //use Timer 1, mode 2
TH1=0xFD; //9600 baud rate
SCON=0x50;
TR1=1; //start timer
while (i<2) {
SerTx('A');
    SerTx('T');
    SerTx('\');
    SerTx('r');
    i+=1;
}
}
void SerTx(unsigned char x){
SBUF=x; //place value in buffer
while (TI==0); //wait until transmitted
TI=0;
}

Cualquier ayuda será apreciada. Gracias!

    
pregunta d-coder

1 respuesta

1

Su código está intentando enviar un comando AT, seguido de un retorno de carro (CR). Pero has codificado la secuencia de escape para CR incorrectamente. Debes enviar 'A', 'T' y '\ r'. El compilador de C debe ver la barra diagonal inversa y la "r" lado a lado para realizar la conversión a CR. Su código envía literalmente "AT \ r" al módulo, lo cual es incorrecto.

Una vez que funcione correctamente, deberás escribir un código para aceptar la respuesta del módulo GSM.

    
respondido por el John Honniball

Lea otras preguntas en las etiquetas