OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4313|回复: 4

gsm读取短信的问题。。。。。

[复制链接]

7

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
65
金钱
65
注册时间
2014-11-8
在线时间
0 小时
发表于 2015-11-3 21:00:26 | 显示全部楼层 |阅读模式
5金钱
我现在遇到一个问题,我的短信发送什么,我的板子就操作什么。比如说,我短信发送on,我的灯就亮;我短信发送off,我的灯就灭,但是现在遇到一个问题,我第一次发on的时候,灯可以亮,但是我第二次发送off的时候,灯没有任何反应,这是什么原因呢,以下是我的gsm部分代码,求各位帮我看一下。。。。。
[mw_shl_code=c,true]
[mw_shl_code=c,true]void sim900a_sms_read(void) { int i=1; u8 *p1,*p2,*p4; u8 *p=(u8*)malloc(100); u8 *s1,*s2; sim900a_init(); //delay_ms(1000); while(1) { p1=(u8*)sim900a_check_cmd("+CMTI:"); //printf("%s ",p1); if(p1) { // p1=(u8*)sim900a_check_cmd("+CMTI:"); p2=(u8*)strstr((const char*)(p1),","); // p2=(u8*)strstr((const char*)(USART3_RX_BUF),","); p4=(u8*)strstr((const char*)(p2+1),"\r"); p4[0]=0; sprintf((char*)p,"AT+CMGR=%s\r\n",p2+1); if(sim900a_send_cmd(p,"+CMGR:",200)==0) { LCD_write_english_string(1,1,"read"); s1=(u8*)strstr((const char*)(USART3_RX_BUF),"\r"); s2=s1+2; if(strstr((const char*)(s2),"on")) { LED0=0; delay_ms(10); } if(strstr((const char*)(s2),"off")) { LED0=1; delay_ms(10); } } else LCD_write_english_string(2,2,"error"); } } }[/mw_shl_code]


[/mw_shl_code]

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2015-11-3 21:25:33 | 显示全部楼层
如果可以仿真跟踪下,就比较好解决了.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

7

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
65
金钱
65
注册时间
2014-11-8
在线时间
0 小时
 楼主| 发表于 2015-11-4 13:58:52 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
第2次发短信的时候就进去不了if(p1){ .......}里面这个函数了。。。。。,而且当我把p1这个条件改成if(1){。。。}想强制让他进去时,那么我第一次发的短信都不管用了。。。。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2015-11-6 00:07:30 | 显示全部楼层
回复【3楼】王wangxin:
---------------------------------
慢慢调试。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

3

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
119
金钱
119
注册时间
2016-1-4
在线时间
26 小时
发表于 2016-5-5 21:18:13 | 显示全部楼层
        s1=(u8*)strstr((const char*)(USART3_RX_BUF),\"\r\");
        s2=s1+2;     
请问楼主这个是什么意思啊
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 08:15

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表