我发送一条短信。 下面是一些代码: UART1Write(AT_CMGF,sizeof(AT_CMGF)-1);//从串口1发送AT+CMGF=0 OSTimeDly(15); //延时 if(0x00==UARTReceive(ATCReturn))//如果返回结果正确 { UART1Write(AT_CMGS,sizeof(AT_CMGS)-1); //发送AT+CMGS=154 OSTimeDly(5);//延时 if(0x00==UARTReceive(ATCReturn))//如果返回结果正确 {......}
我发觉:在发送AT+CMGF=0后OSTimeDly(15),验证返回码后发送AT+CMGS指令,延时OSTimeDly(5),接收返回码,成功过,但是不稳定。 我试着把AT+CMGF的延时减少,把AT+CMGS的OSTimeDly延长。还是接收不对,接收缓冲里没有">"
对于AT+CMGS该怎么来验证比较好的?感觉AT+CMGS这条指令感觉特别奇怪,一般的AT指令我只要OSTimeDly(5)后就能收到它的返回码,而AT+CMGS却不行 |