常驻嘉宾
- 积分
- 4314
- 威望
- 2065
- 贡献
- 1301
- 兑换币
- 1365
- 注册时间
- 2013-8-24
- 在线时间
- 474 小时
|
小弟最近在调NRF24L01,遇到一问题,麻烦各位用过NRF24L01的大神帮忙分析下,感激不尽。
我将 发射速率设置为1Mbps时可以正常发送、接收;但将发射速率设置为2Mbps时则不能正常收发了。 是不是传输速率为2Mbps时有什么特别的设置? 还是其他什么问题呢?
以下是发送部分初始化程序:
void init_NRF24L01(void)
{
inerDelay_us(100);
CE=0;
CSN=1;
SCK=0;
SPI_Write_Buf(WRITE_REG + TX_ADDR, TX_ADDRESS, TX_ADR_WIDTH); // 写本地地址
SPI_Write_Buf(WRITE_REG + RX_ADDR_P0, RX_ADDRESS, RX_ADR_WIDTH); // 写接收端地址
SPI_RW_Reg(WRITE_REG + EN_AA, 0x01); // 频道0自动 ACK应答允许
SPI_RW_Reg(WRITE_REG + EN_RXADDR, 0x01); // 允许接收地址只有频道0
SPI_RW_Reg(WRITE_REG + RF_CH, 0); // 设置信道工作为2.4GHZ
SPI_RW_Reg(WRITE_REG + RX_PW_P0, RX_PLOAD_WIDTH); //设置接收数据长度,本次设置为32字节
SPI_RW_Reg(WRITE_REG + RF_SETUP, 0x07); //设置发射速率为1MHZ,发射功率为最大值0dB
SPI_RW_Reg(WRITE_REG + CONFIG, 0x0e);
}
|
|