El microcontrolador + módulo GSM sigue enviando mensajes de texto, pero ¿por qué solo se envía un mensaje?
{
Retraso(1);
UART 1 _ putstring(" AT+CIMI \ r \ n ");
p>
Retraso(10);
for(I = 0;i<50;i++)
{
if (strstr( uart_buf , "AT+CIMI")& &strstr(uart_buf, "OK"))
{
I = 5;
Descanso;
p>
}
}
si(i==5) se rompe;
}
Intenta elimine while( 1), quedará de la siguiente manera:
Encabezado no válido (no válido)
{
uint 8 I;
UART 0_ init(); //Inicialización del puerto serie
GSM_init(); // Inicialización TC35
EA = 1 //Habilitar interrupciones
mientras( 1 )
{
IGT = 1;
Retraso (100); >Retraso(100);
IGT = 1;
Retraso(100);
Retraso(100);
// Detecta si se inicia TC35.
Pausa;
}
Retraso(1);
UART 1 _ putstring(" AT+CIMI \ r \ n " );
Retraso(10);
for(I = 0;I<50;i++)
{
if (strstr( uart_buf, " AT+CIMI ")& & strstr(uart_buf, " OK "))
{
I = 5;
Pausa;
}
}
if(i==5)Romper;
led 2 = 1;
UART 0 _ flux _ buf();
UART 1 _ flux _ buf()
GSM _ enviar _ back(" AT \ r \ n ");
GSM _ enviar _ de vuelta(" AT+CMGF = 1 \ r \ n ");
GSM _ enviar _ de vuelta(" AT+CSMP = 17, 167, 0, 0 \ r \ n ");
GSM _ enviar _ de vuelta(" AT+CSCS = GSM \ r \ n ");
GSM _ enviar _ de vuelta(" AT +CMGS = 13645168751 \ r \ n ");
GSM _ send _ back(" hola \ x 01A ");
}//Función principal correspondiente