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

2020-02-04 09:19发布

我想用一个nRF24L01无线模块作为接收,另外10个nRF24L01无线模块作为发射,这10个模块各有一个固定的频率,且各不相同,这10个无顺序的发射数据,作为接收的那个模块的程序主函数里循环的设置成这10个频率接收,用外部中断来接收数据,这时问题就出现了,外部来中断时接收的那个频率可能与发射数据来的频率不同,此时这个数据就接收不到了,然后我将nRF24L01无线模块设置了自动应答模式,比原来好点了,可是要是达到了自动发射次数的最大值了数据还是没有接收到呢?
   我想请教一下高手们nRF24L01无线模块用什么方法接收数据时,保证数据部丢失呢??望高手指个方法啊
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
24条回答
anyhu
2020-02-04 18:17
现在真正能解决同频干扰的只有类似于蓝牙的那种跳频机制,看似简单实现起来难度还有有的。点对多点无线通信通常没有真正意义上的并发,都会有先有后,哪怕之间间隔是ms级的,nRF24L01本身的带宽就有2Mbps,你可以算一下它每ms可以送走多少数据,甚至你可以精确到us级,这样的速度处理起来,存在同频干扰的几率是很低的,除非你发完又发不停重复。算完之后你会明白由于并发产生同频干扰的概率有多低。更何况你这10独立的发射模块想要特意去做到并发,做到这个也不太容易吧。一切问题在于亲自尝试,没试过你怎么知道会不会有同频干扰或者别的问题,你都还没有做出东西来,空想有何意义,是不是?

一周热门 更多>