stm32读写nrf24l01复位不通过的问题

通过网上查阅搜索发现,这个问题在别人那里还真出现过。

使用nrf24l01时,按开发板上的复位键,无线模块无法复位,即初始化不成功,但重新上电后,此现象消失,不知道什么情况造成的的,

后来网友建议 

这么写

nRF24L01_Write_register(0x00,0x00); 
     delay_ms(100); 
     nRF24L01_Write_register(0x01,0x01); //通道0 自动应答允许 
     nRF24L01_Write_register(0x02,0x01); //通道0 接收允许 
     nRF24L01_Write_register(0x03,0x03); //地址宽度为5字节 
     nRF24L01_Write_register(0x04,0x0E); //等待250+86us 自动重发15次 
     nRF24L01_Write_register(0x05,30); //设置工作频率,发送和接收必须一样 
     nRF24L01_Write_register(0x06,0x0F); //传输速率2M 发射功率0dBm 
     nRF24L01_Write_register_nData(0x0A,5,Address);  //设置接收地址 
     nRF24L01_Write_register_nData(0x10,5,Address);    //设置发送地址地址 
     nRF24L01_Write_register(0x11,32);   //32字节有效数据 

     nRF24L01_Write_register(0x00,0x0F); //nrf上电,设为接收模式16位CRC,响应所有中断 

从POWERDOWN模式到tx模式,延时时间要够长

可以尝试一下。

最新评论

  1. 发布于:2015-11-18 09:19 回复
    经过验证,发现延时的确是有必要添加的

sitemap