GSM模块 短信接收问题
利用CMGR或者CMGL的AT命令读取短信时,经常收到内容之后,OK接收不完整。有时能够收到正常的,有时又无法收到,或只收到部分,导致对其没办法处理。因为我是在收到OK后再进行处理的,谁能够帮我看看是什么方面的原因,谢谢了?
注:我在程序中用过多条AT指令,但只有这两条存在这种问题。
[解决办法]
有的AT命令OK是要延时才返回的,这个时候可以分两次来读,先得到AT+内容,延时后再得到OK
[解决办法]
我也碰到过这样的情况。
方法一:
分两次接收
如:
; 先弹出接收未读短信息
LCALLMCU_send_POP_received_unread_sms
; 上一命令会有一次通讯超时
JNBbFrameReady,$; 等待GSM调出短信息
; 重新提取用户短信内容
LCALLSerial_Receive_Init
JNBbFrameReady,$; 等待GSM调出短信息
方法二:
把串口的TIMEOUT时间加长就可以了。