天线|RF射频
直播中

袁伟

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

nrf24l01通讯速率怎么设置?

void NRF24L01_TX_Mode(void)

{                                                                                                               

        NRF24L01_CE=0;           

          NRF24L01_Write_Buf(WRITE_REG_NRF+TX_ADDR,(u8*)TX_ADDRESS,TX_ADR_WIDTH);//写TX节点地址

          NRF24L01_Write_Buf(WRITE_REG_NRF+RX_ADDR_P0,(u8*)RX_ADDRESS,RX_ADR_WIDTH); //设置TX节点地址,主要为了使能ACK          




          NRF24L01_Write_Reg(WRITE_REG_NRF+EN_AA,0x01);     //使能通道0的自动应答   

          NRF24L01_Write_Reg(WRITE_REG_NRF+EN_RXADDR,0x01); //使能通道0的接收地址  

          NRF24L01_Write_Reg(WRITE_REG_NRF+SETUP_RETR,0x1a);//设置自动重发间隔时间:500us + 86us;最大自动重发次数:10次

          NRF24L01_Write_Reg(WRITE_REG_NRF+RF_CH,40);       //设置RF通道为40

          NRF24L01_Write_Reg(WRITE_REG_NRF+RF_SETUP,0x27);  // 0x27 :设置TX发射参数,0db增益,250kbps,低噪声增益开启 (0x0f:  设置TX发射参数,0db增益,2Mbps,低噪声增益开启)

          NRF24L01_Write_Reg(WRITE_REG_NRF+CONFIG,0x0e);    //配置基本工作模式的参数WR_UP,EN_CRC,16BIT_CRC,接收模式,开启所有中断

        NRF24L01_CE=1;//CE为高,10us后启动发送

}

实测降低通讯速率可以增加通讯的稳定性。对速度不高但距离相对较高的场合这样做可以间接增加通讯距离。

其他详细的设置可以查看英文数据手册,反正中文的我没找到这个寄存器的设置。



        

回帖(8)

杨月粉

2020-5-20 08:43:07

接收模式对应修改即可
举报

李思昊

2020-5-20 08:50:38
有没有 楼主一看便知NRF24L01+寄存器及指令集.doc (54.5 KB )
举报

甘孟杰

2020-5-20 09:02:58





举报

欧丽娜

2020-5-20 09:09:15

?速率改小不会增加稳定性吗?
举报

更多回帖

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