天线|RF射频
直播中

张怡

7年用户 242经验值
私信 关注
[问答]

NRF24L01多发一收问题如何解决

我用的原子的例程改的,
void NRF24L01_RX_Mode(void)
{
        NRF24L01_CE=0;         
          NRF24L01_Write_Buf(NRF_WRITE_REG+RX_ADDR_P1,(u8*)RX_ADDRESS1,RX_ADR_WIDTH);
          NRF24L01_Write_Buf(NRF_WRITE_REG+RX_ADDR_P0,(u8*)RX_ADDRESS,RX_ADR_WIDTH);
          NRF24L01_Write_Reg(NRF_WRITE_REG+EN_AA,0x03);      
          NRF24L01_Write_Reg(NRF_WRITE_REG+EN_RXADDR,0x03);         
          NRF24L01_Write_Reg(NRF_WRITE_REG+RF_CH,40);                       
          NRF24L01_Write_Reg(NRF_WRITE_REG+RX_PW_P1,RX_PLOAD_WIDTH);
          NRF24L01_Write_Reg(NRF_WRITE_REG+RX_PW_P0,RX_PLOAD_WIDTH);  
          NRF24L01_Write_Reg(NRF_WRITE_REG+RF_SETUP,0x0f);
          NRF24L01_Write_Reg(NRF_WRITE_REG+CONFIG, 0x0f);
          NRF24L01_CE = 1; //CEÎa¸ß,½øèë½óêÕÄ£ê½
}                                             
只改了这里,相当于添加了一个通道,当然前面也定义了一个通道地址但是接收机用了这个程序,发送机用的原子的例程,发送就失败了,显示send failed
我的理解是,我打开了两个通道,但是我读取的还是PLOAD的里面的数据,而且我没有进行分辨,所以效果和一发一收应该是一样的。
求大神指导

回帖(1)

王希予

2020-6-15 14:51:49
我开一个通道就能运行,开两个就不行
举报

更多回帖

发帖
×
20
完善资料,
赚取积分