當前位置:名人名言大全網 - 短信平臺 - 單片機+GSM模塊,上電發短信壹直在發,如何只發壹條

單片機+GSM模塊,上電發短信壹直在發,如何只發壹條

while(1)

{

delay(1);

uart1_putstring("AT+CIMI\r\n");

delay(10);

for(i=0;i<50;i++)

{

if (strstr(uart_buf, "AT+CIMI")&& strstr(uart_buf, "OK"))

{

i=5;

break;

}

}

if(i==5)break;

}

去掉while(1)試試,變成如下:

void main(void)

{

uint8 i;

uart0_init(); // 串口初始化

gsm_init(); // TC35初始化

EA = 1; // 使能中斷

while(1)

{

IGT = 1;

delay(100);

IGT = 0;

delay(100);

IGT = 1;

delay(100);

delay(100);

// 檢測TC35是否啟動

break;

}

delay(1);

uart1_putstring("AT+CIMI\r\n");

delay(10);

for(i=0;i<50;i++)

{

if (strstr(uart_buf, "AT+CIMI")&& strstr(uart_buf, "OK"))

{

i=5;

break;

}

}

if(i==5)break;

LED2 = 1;

uart0_flush_buf ();

uart1_flush_buf();

gsm_send_back("AT\r\n");

gsm_send_back("AT+CMGF=1\r\n");

gsm_send_back("AT+CSMP=17,167,0,0\r\n");

gsm_send_back("AT+CSCS=GSM\r\n");

gsm_send_back("AT+CMGS=13645168751\r\n");

gsm_send_back("hello\x01A");

}//對應主函數