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模式,延时时间要够长
可以尝试一下。
最新评论