我发送短信的AT命令有问题 - AT+CMGS
。发送AT+CMGS=<length of PDU datagram><CR>
后,我等待调制解调器的响应。阅读<CR><LF>><Space>
后,我发送了<PDU datagram><CTRL-Z>
,但我从调制解调器中得不到任何答案。如果我之后发送任何命令,那么对该命令的响应为+CMGS=<reference number>
,这正是我后来预期的响应。
但如果我在阅读<CR><LF>><Space>
之后等待大约100ms而不是发送PDU数据报,那么一切运行良好,我会从调制解调器收到预期的答案。
收到调制解调器的响应后真的需要等待吗?我认为我可以在阅读<CR><LF>><Space>
后立即发送回复。有人可以帮我理解哪里可能有问题吗?
非常感谢
答案 0 :(得分:1)
您的假设是正确的,AT+CMGS
的{{3}}州:
TA应发送一个四字符序列 &LT; CR&GT;&LT; LF&GT;&LT; GREATER_THAN&GT;&lt;空&GT; (IRA 13,10,62,32)命令行之后 终止于&lt; CR&gt;;之后,可以从TE输入文本 ME / TA。
(TA(终端适配器)是调制解调器,TE(终端设备)是AT命令的发送者)
然而,实际上Angular docs即使在调制解调器发出信号已准备好接收的情况下也是如此。