9037|10

78

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

有关AT命令的结束符? [复制链接]

send_GSM_cmd(fd,"AT\r");
send_GSM_cmd(fd,"AT+CNMI=2,2,0,1,1\r");
send_GSM_cmd(fd,"AT+CMGF=1\r");
send_GSM_cmd(fd,"AT+CMGS=138XXXXXXXX\r");
send_GSM_cmd(fd,"hello1A“);
以上是我发送AT的过程,但是对于结束到底该怎么表示才能发送成功一直不明白,有人说是1a,有人说是26,但是我无论以什么作为结束符,都感觉我的结束符被当做发的信息内容的一部分了,导致每次发送都不成功。希望大家帮我解决下这个问题,小弟刚接触AT命令,不是很明白。       

最新回复

我也想知道啊,,\r后还要加\a吗  详情 回复 发表于 2010-5-24 00:06
点赞 关注

回复
举报

75

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
一般的AT命令结束符都是‘\r’,即ASC码0x0d

LZ所说的0x1a是发送"AT+CMGS=138XXXXXXXX\r"后得到输入短信内容提示‘>’后文本内容的结束,即CTRL+Z

0x26在发送短信的AT命令里应该用不到,LZ可以试试

比如你要发送AT命令AT+CMGF=1,在后面加上结束符0x0d就行:AT+CMGF=1\r

后面的‘\r’就相当于回车了
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
按照GSM协议,Text模式下,回车不代表结束。ASCII 0x1A才是结束;
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

4
 
还是不行啊,我试了好多次,都不行啊,在终端上很好实现,但是再程序里就怎么也实现不了,到底再程序该怎么表示这个结束符啊,
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

5
 
引用楼主 xpchishi 的帖子:
send_GSM_cmd(fd,"AT\r");
send_GSM_cmd(fd,"AT+CNMI=2,2,0,1,1\r");
send_GSM_cmd(fd,"AT+CMGF=1\r");
send_GSM_cmd(fd,"AT+CMGS=138XXXXXXXX\r");


   LZ上面发送的AT命令应该没问题,\r就是结束符了
发送短信内容:send_GSM_cmd(fd,"hello1A");这里有问题,注意后面带的结束符结束符格式
可以改为send_GSM_cmd(fd,"hello\x1a");试试
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

6
 
send_GSM_cmd(fd,"AT\r");
send_GSM_cmd(fd,"AT+CNMI=2,2,0,1,1\r");
send_GSM_cmd(fd,"AT+CMGF=1\r");
send_GSM_cmd(fd,"AT+CMGS=138XXXXXXXX\r");
楼主这样的发送方式是不对的!
应该这样:
send_GSM_cmd(fd,"AT\r");
if(strstr(buf,"OK"))
send_GSM_cmd(fd,"AT+CNMI=2,2,0,1,1\r");
.......
.......
send_GSM_cmd(fd,"AT+CMGS=138XXXXXXXX\r");
if(strstr(buf,">"))

send_GSM_cmd(fd,"hello\x1a");
大概是这样一个过程,即每发送一次AT命令后,收到OK后,才发送下一个AT命令!
至于发过号码后,需等待收到>后在发送内容,最后以0x1a结束
 
 
 

回复

47

帖子

0

TA的资源

一粒金砂(初级)

7
 
send_GSM_cmd(fd,"AT\r");
if(strstr(buf,"OK"))
在这两句程序之间应该还有一个读串口数据的函数吧,能告诉我吗?我自己写了一个,但是老是提示段错误,不知道怎么解决
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

8
 
  1. send_GSM_cmd(fd,"AT\r");
  2. //添加自己的收串口数据接口,这里只是个例子
  3. while(1)
  4. {
  5.         if(read(fd,buf,sizeof(buf)))
  6.                 break;
  7. }
  8. if(strstr(buf,"OK"))
  9. {
  10.         ...
  11. }
复制代码


LZ不妨具体说下所出现的提示段错误
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

9
 
多贴点代码出来研究呀,最近,我也在搞这个,大家可以多交流下!
QQ279272833
 
 
 

回复

99

帖子

0

TA的资源

一粒金砂(中级)

10
 

   
     收到 ">" 后在发送短信内容,之后以  0x1A(十六进制) 结束
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

11
 
我也想知道啊,,\r后还要加\a吗
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表