最近在做NRF24L01的收发。如果reg为RD_RX_PLOAD,那么SPI2_ReadWriteByte(reg)的返回值是状态寄存器的值吗?是通过读取状态寄存器的值来判断是否进入读取模式吗?接下来的SPI2_ReadWriteByte(0xFF)返回值则是返回最近接收到的数据对吧。
NRF24L01_Read_Buf(RD_RX_PLOAD,rxbuf,RX_PLOAD_WIDTH)
u8 NRF24L01_Read_Buf(u8 reg,u8 *pBuf,u8 len)
{
u8 status,u8_ctr;
NRF24L01_CSN = 0;
status=SPI2_ReadWriteByte(reg);
for(u8_ctr=0;u8_ctr<len;u8_ctr++)pBuf[u8_ctr]=SPI2_ReadWriteByte(0XFF);
NRF24L01_CSN=1;
return status;
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>