搜索
bottom↓
回复: 17

nrf24l01发送和接收地址的问题

[复制链接]

出0入0汤圆

发表于 2011-12-28 18:26:29 | 显示全部楼层 |阅读模式
我现在搞NRF24L01,从网上下载的程序。

用两个板子,一发一收。先在收的上面测试,

先初始化,写缓存,写寄存器。然后,读缓存,

读寄存器,显示在液晶上,都没问题。

然后,一发一收,却收不到。

我有一个问题,就是接收和发送地址的问题。

例子里code uchar  TX_ADDRESS[5]= {0x34,0x43,0x10,0x10,0x01};本机地址

code uchar  RX_ADDRESS[5]= {0x34,0x43,0x10,0x10,0x01}; 接收地址

我看了一下,有一条初始化语句:

SPI_RW_Reg(WRITE_REG + EN_RXADDR, 0x01);

允许接受地址只有频道0。

于是,我改了一下,

code uchar  TX_ADDRESS[5]= {0x34,0x43,0x10,0x10,0x00};

code uchar  RX_ADDRESS[5]= {0x34,0x43,0x10,0x10,0x00};

还是不行。

改成code uchar  TX_ADDRESS[5]= {0x34,0x43,0x10,0x10,0x01};

code uchar  RX_ADDRESS[5]= {0x34,0x43,0x10,0x10,0x00};

仍然不行。

接收和发送地址究竟应该怎么设置?

发送程序和接收程序这两个地址应该设置成一样还是不一样?

请高手指教,谢谢!

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

 楼主| 发表于 2011-12-28 20:35:01 | 显示全部楼层
补充一下,发送和接收程序还有一点不同,发送设为发送模式,接收设为接收模式。

出0入0汤圆

发表于 2011-12-28 23:35:44 | 显示全部楼层
回复【楼主位】chen3bing
-----------------------------------------------------------------------

单向通讯发送方的发送地址和接收方接收地址配成一样的就Ok,发送方的通道0的地址配成和发送地址一样才可接收到应答信号。

出0入0汤圆

 楼主| 发表于 2011-12-29 09:28:30 | 显示全部楼层
没人知道吗?

出0入0汤圆

发表于 2011-12-29 09:38:23 | 显示全部楼层

中文数据手册上的关于地址设置 (原文件名:未命名.jpg)

出0入0汤圆

 楼主| 发表于 2011-12-29 13:02:02 | 显示全部楼层
谢谢!我试试。

出0入0汤圆

发表于 2011-12-29 13:22:54 | 显示全部楼层
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=5299938&bbs_page_no=1&search_mode=4&search_text=myqiang1990&bbs_id=9999

楼主,你认真看这个帖子,我回复的部分。。。

出0入0汤圆

 楼主| 发表于 2011-12-29 15:53:04 | 显示全部楼层
多谢楼上。我看了一下,有点明白。
不过,还有一个问题,附件里有个图,
接收端只有接收地址,没写本机地址。
请问接收端还有设置本机地址吗?如何设置?

(原文件名:2.JPG)

出0入0汤圆

 楼主| 发表于 2011-12-29 16:10:50 | 显示全部楼层
现在发送端接收到应答信号了,可接收端还是没有收到数据。

出0入0汤圆

发表于 2011-12-29 16:15:22 | 显示全部楼层
回复【8楼】chen3bing  
现在发送端接收到应答信号了,可接收端还是没有收到数据。
-----------------------------------------------------------------------

都收到应答信号了

是你读接收FIFO的程序有问题吧

出0入0汤圆

 楼主| 发表于 2011-12-30 08:24:12 | 显示全部楼层
我又看了一下手册,接收方式时CE=1.
是不是unsigned char nRF24L01_RxPacket(unsigned char* rx_buf)
程序里CE应该置位为1?可是置位了以后还是收不到。

出0入0汤圆

发表于 2011-12-30 08:39:49 | 显示全部楼层

(原文件名:CE引脚作用.png)


(原文件名:状态寄存器.png)

收到应答信号应该是收到了,你读状态寄存器,应该有接收位置位以及通道口的数据
如果有,确定是收到了,读取接收FIFO的值就行了

出0入0汤圆

 楼主| 发表于 2011-12-30 09:58:24 | 显示全部楼层
现在可以收到数据,只是接收端要接上下载线才可以,搞不懂。

出0入0汤圆

 楼主| 发表于 2011-12-30 10:54:30 | 显示全部楼层
可以接收数据一小会,又不行了。发现IRQ不能拉低。

出0入0汤圆

发表于 2012-1-3 13:56:14 | 显示全部楼层
回复【13楼】chen3bing  
-----------------------------------------------------------------------

接收完后清空FIFO寄存器了吗???记得。。读完FIFO寄存器后。。要用清空FIFO寄存器指令,清空一次FIFO。。。

出0入0汤圆

发表于 2012-4-20 15:35:53 | 显示全部楼层
长进了,正在做这个

出0入0汤圆

发表于 2012-11-15 13:31:39 | 显示全部楼层
这个要顶,不错啊

出0入0汤圆

发表于 2013-4-20 10:22:55 | 显示全部楼层
地址如0x34是怎么得到的?
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-24 03:27

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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