OpenEdv-开源电子网

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

关于nrf24l01通信问题

[复制链接]

43

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2014-8-17
在线时间
87 小时
发表于 2016-3-27 22:53:15 | 显示全部楼层 |阅读模式
5金钱
我用51和mini stm32板通信,为啥通信不了,地址频道啥的都一样了,调了一天了

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

使用道具 举报

12

主题

336

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1571
金钱
1571
注册时间
2015-8-9
在线时间
624 小时
发表于 2016-3-28 09:41:08 | 显示全部楼层
51的模拟spi驱动没写好?
回复

使用道具 举报

43

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2014-8-17
在线时间
87 小时
 楼主| 发表于 2016-3-28 11:42:44 | 显示全部楼层
Akatsuki_lim 发表于 2016-3-28 09:41
51的模拟spi驱动没写好?

可能吧,我用了好几个51的例程都不行,然后用了一个别人专门51和32通信的51例程改了下才行
回复

使用道具 举报

43

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2014-8-17
在线时间
87 小时
 楼主| 发表于 2016-3-28 14:48:15 | 显示全部楼层
Akatsuki_lim 发表于 2016-3-28 09:41
51的模拟spi驱动没写好?

现在又不行了,只有上电那会发得出去
回复

使用道具 举报

12

主题

336

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1571
金钱
1571
注册时间
2015-8-9
在线时间
624 小时
发表于 2016-3-28 15:11:28 | 显示全部楼层
检查一下单片机接口电路部分,看是否有引脚短路了
回复

使用道具 举报

43

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2014-8-17
在线时间
87 小时
 楼主| 发表于 2016-3-28 15:27:24 | 显示全部楼层
Akatsuki_lim 发表于 2016-3-28 15:11
检查一下单片机接口电路部分,看是否有引脚短路了

现在情况是这样,,,32板的无线模块重新上电才能接收到一次数据,换个模块就能随时接受到数据,但是在32上发送数据给51就一直不行
回复

使用道具 举报

12

主题

336

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1571
金钱
1571
注册时间
2015-8-9
在线时间
624 小时
发表于 2016-3-28 15:54:38 | 显示全部楼层
要不楼主把工程上传来帮你看看?
回复

使用道具 举报

43

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2014-8-17
在线时间
87 小时
 楼主| 发表于 2016-3-28 16:10:30 | 显示全部楼层
@Akatsuki_lim

ALIENTEK MINISTM32 实验24 24L01无线通信实验.rar

2.68 MB, 下载次数: 79

51.rar

52.55 KB, 下载次数: 455

回复

使用道具 举报

43

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2014-8-17
在线时间
87 小时
 楼主| 发表于 2016-3-28 16:11:20 | 显示全部楼层
Akatsuki_lim 发表于 2016-3-28 15:54
要不楼主把工程上传来帮你看看?

我把32的和51的工程都上传了,你帮忙看下吧
回复

使用道具 举报

12

主题

336

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1571
金钱
1571
注册时间
2015-8-9
在线时间
624 小时
发表于 2016-3-28 17:06:31 | 显示全部楼层
楼主,你stm32主函数那里:
[mw_shl_code=c,true]if(NRF24L01_TxPacket(tmp_buf)==TX_OK)
                        {
                                LCD_ShowString(60,170,239,32,16,"Sended DATA:");       
                                LCD_ShowString(0,190,239,32,16,tmp_buf);
                                key=mode;
                                for(t=0;t<32;t++)
                                {
                                        key++;
                                        if(key>('~'))key=' ';
                                        tmp_buf[t]=key;       
                                }
                                mode++;
                                if(mode>'~')mode=' ';            
                                tmp_buf[32]=0;//加入结束符                  
                        }[/mw_shl_code]


这里对发送信号处理不太适当吧?

一次循环之后就把你的tmp_buf[]数据跟换掉了,先把tmp_buf[t]=key;

这函数去掉看看。


现在手头上也没有板子不好验证底层驱动是否有问题。。。如果还是不行试一下按照原子的驱动改一下51的nRF24L01_RxPacket()吧

回复

使用道具 举报

43

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2014-8-17
在线时间
87 小时
 楼主| 发表于 2016-3-28 17:47:29 | 显示全部楼层
Akatsuki_lim 发表于 2016-3-28 17:06
楼主,你stm32主函数那里:[mw_shl_code=c,true]if(NRF24L01_TxPacket(tmp_buf)==TX_OK)
                        {
                                LCD_Sh ...

nRF24L01_RxPacket()改了,也不行,还是32发51不能收,反过来就行
回复

使用道具 举报

12

主题

336

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1571
金钱
1571
注册时间
2015-8-9
在线时间
624 小时
发表于 2016-3-29 09:06:29 | 显示全部楼层
在我看来是stm32发送数据那里没处理好,你发送完第一次“open”后,整个tmp_buf[]内容换成一串连续的ascii码,我算了一下,要等大概三分钟左右tmp_buf[0]才赋'o'呀。。。
楼主能看懂我意思么?
回复

使用道具 举报

43

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2014-8-17
在线时间
87 小时
 楼主| 发表于 2016-3-29 10:18:56 | 显示全部楼层
Akatsuki_lim 发表于 2016-3-29 09:06
在我看来是stm32发送数据那里没处理好,你发送完第一次“open”后,整个tmp_buf[]内容换成一串连续的ascii ...

我忘了告诉你现象了,其实是卡在 if(NRF24L01_TxPacket(tmp_buf)==TX_OK)了,再进去调试是已经达到了最大重发次数,所以返回值不是TX_OK而是MAX_TX
回复

使用道具 举报

4

主题

22

帖子

0

精华

初级会员

Rank: 2

积分
61
金钱
61
注册时间
2015-10-7
在线时间
3 小时
发表于 2016-3-29 10:22:54 | 显示全部楼层
也是正在调,前两天通的是在战舰上的,你这个mini的我看到整个里面很多帖子的呀。你找找。
回复

使用道具 举报

12

主题

336

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1571
金钱
1571
注册时间
2015-8-9
在线时间
624 小时
发表于 2016-3-29 10:59:17 | 显示全部楼层
stm32f103andarm 发表于 2016-3-29 10:18
我忘了告诉你现象了,其实是卡在 if(NRF24L01_TxPacket(tmp_buf)==TX_OK)了,再进去调试是已经达到了最大 ...

接收端问题??
我这里推荐两个链接吧,现在我手上没有硬件也不好帮你调。。
http://www.openedv.com/posts/list/0/57110.htm
http://www.openedv.com/thread-67073-1-1.html
回复

使用道具 举报

43

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2014-8-17
在线时间
87 小时
 楼主| 发表于 2016-3-29 12:47:23 | 显示全部楼层
Akatsuki_lim 发表于 2016-3-29 10:59
接收端问题??
我这里推荐两个链接吧,现在我手上没有硬件也不好帮你调。。
http://www.openedv.com/p ...

有件事很奇怪,我用了三块51开发板和一块mini32板各种互相通信,只有一块51板能收发,模块也互相换过了,51程序都一样
回复

使用道具 举报

12

主题

336

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1571
金钱
1571
注册时间
2015-8-9
在线时间
624 小时
发表于 2016-3-29 13:30:38 | 显示全部楼层
stm32f103andarm 发表于 2016-3-29 12:47
有件事很奇怪,我用了三块51开发板和一块mini32板各种互相通信,只有一块51板能收发,模块也互相换过了, ...

51的型号都一样吗?
回复

使用道具 举报

43

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2014-8-17
在线时间
87 小时
 楼主| 发表于 2016-3-29 13:32:12 | 显示全部楼层
15721227 发表于 2016-3-29 10:22
也是正在调,前两天通的是在战舰上的,你这个mini的我看到整个里面很多帖子的呀。你找找。

我要51和32通信,我那个应该是51的程序问题,三块开发板就一块能收发,程序一样,可能硬件不一样spi驱动不一样
回复

使用道具 举报

43

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2014-8-17
在线时间
87 小时
 楼主| 发表于 2016-3-29 17:00:19 | 显示全部楼层
Akatsuki_lim 发表于 2016-3-29 13:30
51的型号都一样吗?

恩, 一样的,都是89c52
回复

使用道具 举报

43

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2014-8-17
在线时间
87 小时
 楼主| 发表于 2016-3-29 17:10:28 | 显示全部楼层
stm32f103andarm 发表于 2016-3-29 17:00
恩, 一样的,都是89c52

而且开发板都是一样的
回复

使用道具 举报

12

主题

336

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1571
金钱
1571
注册时间
2015-8-9
在线时间
624 小时
发表于 2016-3-29 17:21:10 | 显示全部楼层
stm32f103andarm 发表于 2016-3-29 17:10
而且开发板都是一样的

那只能当作是单片机的问题额
回复

使用道具 举报

43

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2014-8-17
在线时间
87 小时
 楼主| 发表于 2016-3-29 17:41:54 | 显示全部楼层
Akatsuki_lim 发表于 2016-3-29 17:21
那只能当作是单片机的问题额

好像也不是,我把单片机芯片互换了也是这样,就是那一块板子能收发
回复

使用道具 举报

12

主题

336

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1571
金钱
1571
注册时间
2015-8-9
在线时间
624 小时
发表于 2016-3-29 17:50:42 | 显示全部楼层
stm32f103andarm 发表于 2016-3-29 17:41
好像也不是,我把单片机芯片互换了也是这样,就是那一块板子能收发

意思是板子有问题?
回复

使用道具 举报

4

主题

22

帖子

0

精华

初级会员

Rank: 2

积分
61
金钱
61
注册时间
2015-10-7
在线时间
3 小时
发表于 2016-3-29 20:26:09 | 显示全部楼层
stm32f103andarm 发表于 2016-3-29 13:32
我要51和32通信,我那个应该是51的程序问题,三块开发板就一块能收发,程序一样,可能硬件不一样spi驱动 ...

我的也是51和他通信 你在网上找个一定能通的51程序,再去调st32就可以了
回复

使用道具 举报

43

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2014-8-17
在线时间
87 小时
 楼主| 发表于 2016-3-29 21:32:03 | 显示全部楼层
Akatsuki_lim 发表于 2016-3-29 17:50
意思是板子有问题?

我把不能接收的板子的模块接到其他地方供电就可以了。。。就是板子是3.23伏电压供电不行,接到到其他的3.25伏以上就可以,不科学啊
回复

使用道具 举报

12

主题

336

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1571
金钱
1571
注册时间
2015-8-9
在线时间
624 小时
发表于 2016-3-30 09:37:22 | 显示全部楼层
stm32f103andarm 发表于 2016-3-29 21:32
我把不能接收的板子的模块接到其他地方供电就可以了。。。就是板子是3.23伏电压供电不行,接到到其他的3. ...

是不是稳压模块没做好,还是驱动电流不够?
回复

使用道具 举报

43

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2014-8-17
在线时间
87 小时
 楼主| 发表于 2016-3-30 11:01:09 | 显示全部楼层
Akatsuki_lim 发表于 2016-3-30 09:37
是不是稳压模块没做好,还是驱动电流不够?

不清楚,我一直都是用的开发板的电源,而且这模块一直都是在工作电压范围内供电的呀,怎么超过工作电压工作反而能正常使用,难道这还要驱动电流符合?
回复

使用道具 举报

1

主题

10

帖子

0

精华

新手上路

积分
37
金钱
37
注册时间
2016-1-30
在线时间
9 小时
发表于 2016-3-31 17:24:42 | 显示全部楼层
stm32f103andarm 发表于 2016-3-28 11:42
可能吧,我用了好几个51的例程都不行,然后用了一个别人专门51和32通信的51例程改了下才行

可以分享一下例程吗?420741957@qq.com
回复

使用道具 举报

3

主题

22

帖子

0

精华

初级会员

Rank: 2

积分
172
金钱
172
注册时间
2016-1-29
在线时间
28 小时
发表于 2016-3-31 19:35:37 | 显示全部楼层
Sherman 发表于 2016-3-31 17:24
可以分享一下例程吗?

求分享794118639@qq.com
回复

使用道具 举报

3

主题

22

帖子

0

精华

初级会员

Rank: 2

积分
172
金钱
172
注册时间
2016-1-29
在线时间
28 小时
发表于 2016-3-31 19:37:22 | 显示全部楼层
求分享程序51和32的  谢谢  794118639@qq.com
回复

使用道具 举报

170

主题

917

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1824
金钱
1824
注册时间
2013-4-13
在线时间
63 小时
发表于 2016-3-31 23:06:58 来自手机 | 显示全部楼层
我当年折腾一个星期才搞好。慢慢来
回复

使用道具 举报

43

主题

115

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
367
金钱
367
注册时间
2014-8-17
在线时间
87 小时
 楼主| 发表于 2016-4-1 18:53:30 | 显示全部楼层
wangyan915205 发表于 2016-3-31 23:06
我当年折腾一个星期才搞好。慢慢来

现在遇到新问题,数据时收得到时收不到,启动了应答信号,经常达到了最大重发次数
回复

使用道具 举报

5

主题

110

帖子

0

精华

初级会员

Rank: 2

积分
152
金钱
152
注册时间
2013-9-16
在线时间
0 小时
发表于 2016-5-6 12:57:03 | 显示全部楼层

NRF24L01无线数传软件解析http://v.youku.com/v_show/id_XMTU0NzM3ODIxNg==.html
RFinchina 团队欢迎无线方面的技术交流 QQ 474882985
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

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

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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