用nRF24L01无线模块接收10个不同频率的数据,老是出现数据丢失

2020-02-04 09:19发布

我想用一个nRF24L01无线模块作为接收,另外10个nRF24L01无线模块作为发射,这10个模块各有一个固定的频率,且各不相同,这10个无顺序的发射数据,作为接收的那个模块的程序主函数里循环的设置成这10个频率接收,用外部中断来接收数据,这时问题就出现了,外部来中断时接收的那个频率可能与发射数据来的频率不同,此时这个数据就接收不到了,然后我将nRF24L01无线模块设置了自动应答模式,比原来好点了,可是要是达到了自动发射次数的最大值了数据还是没有接收到呢?
   我想请教一下高手们nRF24L01无线模块用什么方法接收数据时,保证数据部丢失呢??望高手指个方法啊
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
24条回答
anyhu
2020-02-05 07:41
回复【6楼】yayahello
-----------------------------------------------------------------------

也是可以实现的。可以这么干:10个发送模块要具备接收功能,全都初始化为一个频率,没有发射任务时让它们全部休眠,当其中一个发射模块出现发射任务时,首先使用默认的频率,通知其他九个模块,让它们屏蔽掉发射任务,然后这个模块才进入预先设定的发射频率,等到数据发送完成后,再跳回默认频率,通知其他9个模块解除屏蔽。如果仅仅是简单的错开频率想完全避免同频干扰,并且避开收发一体程序的复杂性,那你的想法是行不通的。或者你想得根本就太简单了。

一周热门 更多>