查看单个帖子
旧 2010-05-05   #1 (permalink)
水哭了
高级会员
 
注册日期: 2009-07-14
帖子: 102
水哭了 正向着好的方向发展
默认 一个AT指令的困惑(AT+CMGR)

今天查一些资料看到网上有网友不明白AT+CMGR=index 那我就详细的介绍一下将返回以下内容困惑。


AT+CMGR=index 将返回以下内容:

+CMGR: "REC UNREAD","13093403473",,"05/11/15,16:40:22+02"....

可是有的文章说:AT+CMGR=index 将返回以下内容:
+CMGR: 1,,111
0891683108501505F0240BA13190433074F30008501157
67094F59002E6BD44E0A67094E0D8DB3002E003100355
700597D62107EE9002E62118BE5898170B94EC04E4859
.....................................
我就纳闷了,为什么前者返回的不是以0891开始的PDU串呢?
什么时候返回前者,什么时候返回后者呢?




这个问题很简单。如果这位网友能够细心的看返回值PDU码。你可以想到,发送有两种模式,及AT+CMFG=0 PDU 和 AT+CMFG=1 文本。反之,接受也有。网友问的很好,返回前者是你把模式设置成了AT+CMGF=1 及文本的模式。也就是说。如果AT+CMGF?返回1的时候。读取短信返回的是这个。
+CMGR: "REC UNREAD","13093403473",,"05/11/15,16:40:22+02"....
你把AT+CMGF设置成PDU模式(AT+CMGF=0)在读取短信时返回后者。也就是说返回以0891开始的PDU串。
及+CMGR: 1,,111
0891683108501505F0240BA13190433074F30008501157
67094F59002E6BD44E0A67094E0D8DB3002E003100355
700597D62107EE9002E62118BE5898170B94EC04E4859

金笛短信 技术论

此帖于 2010-05-05 18:53 被 水哭了 编辑。
水哭了 当前离线   回复时引用此帖