OpenEdv-开源电子网

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

stm32通过串口向gsm模块发送at指令收不到返回

[复制链接]

9

主题

38

帖子

0

精华

初级会员

Rank: 2

积分
188
金钱
188
注册时间
2014-8-21
在线时间
21 小时
发表于 2014-8-21 10:50:40 | 显示全部楼层 |阅读模式
5金钱
[mw_shl_code=c,true]USART_Printf(USART3,"AT+IPR=115200&W\r\n"); //发送AT指令 while(USART_GetFlagStatus(USART3 , USART_IT_RXNE) != SET); //查询是否收到GSM模块返回的数据 USART_SendData(UART5 , USART_ReceiveData(USART3)); //将串口3收到的数据发到串口助手查看 for(i = 0; i < 5000; i ++); //延时等待发送完成 u16 receivebuffer[0]=USART_ReceiveData(USART3); for(i = 0; i < 5000; i ++); if(receivebuffer[0]==0x004f||receivebuffer[0]==0x004b) //判断是否返回OK,该句用来判断字母O或者K. USART_Printf(UART5,"M35波特率修改成功!");//证明修改成功,串口助手查看[/mw_shl_code]
如上所示,使用stm32使用了两个串口,串口3和GSM模块m35连接,串口5接pc方便用串口助手查看。采用查询的方式对m35进行初始化,可总是不成功,即无法返回“M35波特率修改成功!”,但程序能够通过 [mw_shl_code=c,true]while(USART_GetFlagStatus(USART3 , USART_IT_RXNE) != SET);的查询执行下面的代码(已经验证)[/mw_shl_code] 请原子哥解答下,其中USART_Printf函数我已经检查过,没有问题,可以打印字符串。具体如下所示。
[mw_shl_code=c,true]void USART_Printf(USART_TypeDef* USARTx,char *pch) { while(*pch != '\0') /* 我们这里用指针表示,*pch就是一个字符,pch就是该字符的地址 */ { USART_SendData(USARTx,*pch); while(USART_GetFlagStatus(USARTx, USART_FLAG_TXE) == RESET); USART_ClearFlag(USARTx, USART_FLAG_TXE); pch++; } }[/mw_shl_code]
这个问题困扰我很久了,求大虾解答。。

最佳答案

查看完整内容[请看2#楼]

回复【5楼】jiayansushi: --------------------------------- 结贴:经过一段时间用串口中断进行接收和发送,成功收到返回值!谢谢大虾们!后面的问题还有一大堆,等待进一步上传。。。。。。
学海无涯苦作舟!
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

9

主题

38

帖子

0

精华

初级会员

Rank: 2

积分
188
金钱
188
注册时间
2014-8-21
在线时间
21 小时
 楼主| 发表于 2014-8-21 10:50:41 | 显示全部楼层
回复【5楼】jiayansushi:
---------------------------------
结贴:经过一段时间用串口中断进行接收和发送,成功收到返回值!谢谢大虾们!后面的问题还有一大堆,等待进一步上传。。。。。。
学海无涯苦作舟!
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2014-8-22 00:01:21 | 显示全部楼层
通过电脑串口直接测试呢?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

9

主题

38

帖子

0

精华

初级会员

Rank: 2

积分
188
金钱
188
注册时间
2014-8-21
在线时间
21 小时
 楼主| 发表于 2014-8-22 08:32:57 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
通过电脑串口是能够看到的,例如发送AT,在串口可以看到AT等命令,没有接m35所以无法得到回复。
学海无涯苦作舟!
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2014-8-22 23:23:27 | 显示全部楼层
单片机发给M35,电脑收M35的应答.测试下.
然后电脑发指令给M35,单片机接收,再测试下
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

9

主题

38

帖子

0

精华

初级会员

Rank: 2

积分
188
金钱
188
注册时间
2014-8-21
在线时间
21 小时
 楼主| 发表于 2014-8-26 09:26:49 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
单片机发给M35,电脑收应答,无应答。
电脑发给M35,单片机接收OK。
不知为何?
订正:while(USART_GetFlagStatus(USART3 , USART_IT_RXNE) != SET);应该是while(USART_GetFlagStatus(USART3 , USART_IT_RXNE) != RESET);
改过后,程序会死在上面的循环,说明一直没有接到数据。
学海无涯苦作舟!
回复

使用道具 举报

33

主题

253

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
412
金钱
412
注册时间
2012-8-16
在线时间
0 小时
发表于 2014-9-4 18:53:18 | 显示全部楼层
帮顶!!!!
回复

使用道具 举报

2

主题

15

帖子

0

精华

新手上路

积分
46
金钱
46
注册时间
2013-9-14
在线时间
1 小时
发表于 2014-9-22 15:04:44 | 显示全部楼层
楼主 ,可以分享程序吗
回复

使用道具 举报

9

主题

38

帖子

0

精华

初级会员

Rank: 2

积分
188
金钱
188
注册时间
2014-8-21
在线时间
21 小时
 楼主| 发表于 2014-9-22 17:40:36 | 显示全部楼层
回复【8楼】maggg:
---------------------------------
哪部分?系统较大。不方便全发
学海无涯苦作舟!
回复

使用道具 举报

2

主题

15

帖子

0

精华

新手上路

积分
46
金钱
46
注册时间
2013-9-14
在线时间
1 小时
发表于 2014-9-22 17:46:04 | 显示全部楼层
就是发送AT指令  串口接收那部分
回复

使用道具 举报

2

主题

15

帖子

0

精华

新手上路

积分
46
金钱
46
注册时间
2013-9-14
在线时间
1 小时
发表于 2014-9-22 17:50:02 | 显示全部楼层
能给一些参考程序些指导吗?我QQ邮箱:337077472@qq.com
回复

使用道具 举报

9

主题

38

帖子

0

精华

初级会员

Rank: 2

积分
188
金钱
188
注册时间
2014-8-21
在线时间
21 小时
 楼主| 发表于 2014-9-22 17:55:34 | 显示全部楼层
回复【11楼】maggg:
---------------------------------
已经发到你的邮箱,声明;不是用原子哥的,追原子哥的请绕道。
学海无涯苦作舟!
回复

使用道具 举报

2

主题

15

帖子

0

精华

新手上路

积分
46
金钱
46
注册时间
2013-9-14
在线时间
1 小时
发表于 2014-9-22 17:58:01 | 显示全部楼层
收到  十分感谢
回复

使用道具 举报

9

主题

38

帖子

0

精华

初级会员

Rank: 2

积分
188
金钱
188
注册时间
2014-8-21
在线时间
21 小时
 楼主| 发表于 2014-9-22 18:00:51 | 显示全部楼层
回复【13楼】maggg:
---------------------------------
求助下:一个数组char t[]="25168370",如何转换成它的十六进制(即在串口助手16进制模式下显示)01 80 09 f2?
互相帮助啦!
学海无涯苦作舟!
回复

使用道具 举报

1

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
82
金钱
82
注册时间
2014-12-18
在线时间
9 小时
发表于 2015-2-13 10:01:08 | 显示全部楼层
楼主能发一份串口发送接收AT指令来参考参考么?我的邮箱:823822309@qq.com,谢谢!
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
23
金钱
23
注册时间
2015-4-12
在线时间
0 小时
发表于 2015-4-25 17:55:43 | 显示全部楼层
您好!小弟现在也在做GSM模块 楼主能把串口发送接收AT指令的相关程序发我一份吗?多谢了!!!  qq邮箱 1837552311@qq.com
回复

使用道具 举报

3

主题

14

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2014-12-4
在线时间
17 小时
发表于 2015-5-16 09:38:26 | 显示全部楼层
回复【12楼】jiayansushi:
---------------------------------
楼主可以分享串口发送AT指令部分的程序吗?谢谢。邮箱:51129677@qq.com
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
21
金钱
21
注册时间
2015-9-6
在线时间
0 小时
发表于 2015-9-6 09:16:36 | 显示全部楼层
你好,我现在也在做这个模块,通过自定义函数,收发数据,也是一直收不到数据,请问能把中断收发那部分借我参考下吗,邮箱:759269419@qq.com
回复

使用道具 举报

西风胡杨007 该用户已被删除
发表于 2015-10-21 10:52:48 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

4

主题

16

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2016-1-20
在线时间
3 小时
发表于 2016-1-29 12:14:06 | 显示全部楼层
你好,我也是单片机发送给GSM一直发送不出去信息,用电脑控制就可以,请问是什么原因呢
回复

使用道具 举报

4

主题

21

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
372
金钱
372
注册时间
2015-11-12
在线时间
83 小时
发表于 2016-6-21 17:53:09 | 显示全部楼层
楼主可以发我一份吗,最近也在调试这方面的东西、jingingpw@163.com,谢谢!
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
7
金钱
7
注册时间
2016-7-7
在线时间
0 小时
发表于 2016-7-7 10:05:30 | 显示全部楼层
楼主,我最近也在做GSM模块的开发,可以分享一下中断收发的那部分程序吗,谢谢。邮箱843189656@qq.com
回复

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
6
金钱
6
注册时间
2020-6-27
在线时间
1 小时
发表于 2016-9-12 15:46:44 | 显示全部楼层
楼主,最近搞GPRS通信搞得头疼,方不方便分享一下中断收发AT指令那部分么?万分感谢!邮箱948634208@qq.com
回复

使用道具 举报

盼盼 该用户已被删除
发表于 2017-1-2 16:46:19 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

2

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
51
金钱
51
注册时间
2017-1-12
在线时间
9 小时
发表于 2017-2-2 20:20:16 | 显示全部楼层
请问楼主还有这个程序吗?小白一只  现在正好学到此处  希望你看一下楼主的程序
回复

使用道具 举报

2

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
51
金钱
51
注册时间
2017-1-12
在线时间
9 小时
发表于 2017-2-3 15:28:15 | 显示全部楼层
楼主,最近搞GPRS通信搞得头疼,方不方便分享一下程序?万分感谢!邮箱944167727@qq.com
回复

使用道具 举报

1

主题

6

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2017-7-8
在线时间
6 小时
发表于 2017-7-8 13:27:16 | 显示全部楼层
楼主,能给我发一下你的程序吗?最近在这个,头都做大了,实在没思路啊。请发我一下627933207@qq.com,谢谢楼主了!
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
12
金钱
12
注册时间
2018-1-26
在线时间
0 小时
发表于 2018-1-26 14:26:12 | 显示全部楼层

您好!小弟现在也在做GSM模块 楼主能把串口发送接收AT指令的相关程序发我一份吗?多谢了!!!  qq邮箱 1093904305@qq.com
回复

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2020-11-11
在线时间
6 小时
发表于 2021-4-7 20:14:00 | 显示全部楼层
jiayansushi 发表于 2014-8-26 09:26
回复【4楼】正点原子:
---------------------------------
单片机发给M35,电脑收应答,无应答。

楼主你好 我碰到的问题跟你正好相反 我用的sim800c 单片机发送AT时PC可以收到返回,但是用PC发送AT时 PC和单片机都接收不到返回,你的问题找到了么
回复

使用道具 举报

9

主题

38

帖子

0

精华

初级会员

Rank: 2

积分
188
金钱
188
注册时间
2014-8-21
在线时间
21 小时
 楼主| 发表于 2021-8-17 10:15:09 | 显示全部楼层
ljjlghdp 发表于 2021-4-7 20:14
楼主你好 我碰到的问题跟你正好相反 我用的sim800c 单片机发送AT时PC可以收到返回,但是用PC发送AT时 PC ...

我没有发送下行命令,所以暂未碰到这样的问题。
学海无涯苦作舟!
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
2
金钱
2
注册时间
2022-1-19
在线时间
0 小时
发表于 2022-1-19 11:26:12 | 显示全部楼层
楼主,求发AT部分程序分享1414793659@qq.com,感谢
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-22 22:42

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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