初级会员

- 积分
- 192
- 金钱
- 192
- 注册时间
- 2016-9-4
- 在线时间
- 26 小时
|
5金钱
u8 NRF24L01_Read_Buf(u8 reg,u8 *pBuf,u8 len)
{
u8 status,u8_ctr;
NRF24L01_CSN = 0; //ê1ÄüSPI′«êä
status=SPI1_ReadWriteByte(reg);//·¢Ëí¼Ä′æÆ÷Öμ(λÖÃ),2¢¶áè¡×′ì¬Öμ
for(u8_ctr=0;u8_ctr<len;u8_ctr++)pBuf[u8_ctr]=SPI1_ReadWriteByte(0XFF);//¶á3öêy¾Y
NRF24L01_CSN=1; //1رÕSPI′«êä
return status; //·μ»Ø¶áμ½μÄ×′ì¬Öμ
}
有人知道这的for(u8_ctr=0;u8_ctr<len;u8_ctr++)pBuf[u8_ctr]=SPI1_ReadWriteByte(0XFF);中写入0xFF是为什么吗? |
最佳答案
查看完整内容[请看2#楼]
SPI是同步全双工通讯啊,就是 ,写的时候同时在读,读的时候也要写,这里想读一个数据,所以写入0XFF,才会产生时钟,好让从机发送数据给你单片机
|