单片机控制TC35i GSM 模块的问题

chaosyp   2011-3-5 01:36 楼主
单片机控制TC35i GSM 模块的问题单片机发给模块的每句AT指令结束的回车在c语言里面要怎么表示,\r还是\r\n还是什么比如我是直接puts ("AT\r");的。然后单片机连接模块后发不了短信,求解释

回复评论 (9)

回复 楼主 chaosyp 的帖子

如果你不确定是\r 还是\n那么你都写上就可以
然后单片机连接模块后发不了短信,求解释?
你都用了哪些命令,回复的内容是什么,你说一下我就知道怎么回答你了
二种方式发送短信:
1:文本方式
2:PDU编码方式

[ 本帖最后由 daicheng 于 2011-3-5 10:08 编辑 ]
处处留心皆学问!
点赞  2011-3-5 08:37
我现在要做一个project要用单片机控制TC35i发短信
然后是的大致步骤就是
puts ("AT\r");
delay;
puts ("AT+CMGF=1\r");
delay;
puts ("AT+CSMP=17,167,0,0\r");
delay;
puts ("AT+CSCS=GSM\r");
delay;
puts ("AT+CMGS=手机号码\r");
delay;
puts("短信内容");
purchar (0x1A);
我用电脑连GSM模块用这个指令发出了短信
我单片机连电脑在超级终端上面能显示出我单片机发了指令
但是我连GSM模块之后发不了短信
所以我怀疑是我的指令表达出了点问题了
点赞  2011-3-5 08:58
这个我表示不会!!
     爱我所爱的!!!
点赞  2011-3-5 09:30

回复 4楼 汉江之源 的帖子

你命令没有问题,只是你没有做数据回复的处理,你用电脑监听一下你发送与接收的过程
处处留心皆学问!
点赞  2011-3-5 10:11
什么叫数据回复的处理,每发完一个指令后模块都会返回一个OK,但是我觉得不管返回的OK直接向模块发送指令也可以实现发送短信的吧
点赞  2011-3-5 10:17

回复 6楼 chaosyp 的帖子

只是想让你能知道程序运行与模块操作的情况
处处留心皆学问!
点赞  2011-3-5 10:41

回复 7楼 daicheng 的帖子

您所谓的用电脑监听发送和接受的过程是怎么个情况。用串口助手?
还有我的程序真的没问题。普通AT指令的结束是以回车来结束的,那么我在C里面是要写\r还是\n还是\r\n呢?
点赞  2011-3-5 21:55

回复 8楼 chaosyp 的帖子

做这样的程序就是要监听你发送的数据与模块返回的数据,就知道就那个部分出问题了。
比如你发送了,AT +0x0D 模块没有回复OK ,那么就可以分析问题
发送短信也是:
at+cmgf=1
返回 OK
at+cmgs=手机号
返回 >
发送 数据  +0x1A
返回 OK
如果哪步不正确就知道错误的地方,还可以加入信号强度的判断等等,我说的是这个意思
AT命令结束就0X0D,在写的时候如果知道就可以全部加上,模块返回肯定是0x0D 0x0A
处处留心皆学问!
点赞  2011-3-6 13:07
我试着去弄一下吧,谢谢了
点赞  2011-3-6 23:06
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复