打印

NRF24l01的问题

[复制链接]
190|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
菊江先生|  楼主 | 2019-11-14 10:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
主从机通信需要相同的地址宽度,但是若主机的发射地址是一个变量的话,还要不配置发射地址的宽度?不配置的话他们如何通信的?//接收模式
void SetRX_Mode(void)
{
    SPI_CE_L();
          NRF_Write_Reg(FLUSH_RX,0xff);//清除TX FIFO寄存器                        
          NRF_Write_Buf(NRF_WRITE_REG+RX_ADDR_P0,(uint8_t*)RX_ADDRESS,RX_ADR_WIDTH);//写RX节点地址
           NRF_Write_Reg(NRF_WRITE_REG+EN_AA,0x01);    //使能通道0的自动应答   
          NRF_Write_Reg(NRF_WRITE_REG+EN_RXADDR,0x01);//使能通道0的接收地址           
          NRF_Write_Reg(NRF_WRITE_REG+RF_CH,40);             //设置RF通信频率                  
          NRF_Write_Reg(NRF_WRITE_REG+RX_PW_P0,RX_PLOAD_WIDTH);//选择通道0的有效数据宽度            
          NRF_Write_Reg(NRF_WRITE_REG+RF_SETUP,0x0f);//设置TX发射参数,0db增益,2Mbps,低噪声增益开启   
          NRF_Write_Reg(NRF_WRITE_REG+CONFIG, 0x0f);//配置基本工作模式的参数;PWR_UP,EN_CRC,16BIT_CRC,接收模式
    SPI_CE_H();
    //printf("NRF24L01 Set to Receiving Mode,RX_ADDR 0x%x...\r\n",RX_ADDRESS[4]);
}

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

446

主题

447

帖子

0

粉丝