pBuf[u8_ctr]=SPI1_ReadWriteByte(0XFF);

2019-07-20 16:02发布

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);//&#182;á3&#246;êy&#190;Y
  NRF24L01_CSN=1;       //1&#216;±&#213;SPI′&#171;ê&#228;
  return status;        //·μ&#187;&#216;&#182;áμ&#189;μ&#196;×′ì&#172;&#214;μ
}


  有人知道这的for(u8_ctr=0;u8_ctr<len;u8_ctr++)pBuf[u8_ctr]=SPI1_ReadWriteByte(0XFF);中写入0xFF是为什么吗?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
9条回答
xxhjxx
2019-07-21 09:39
93035199 发表于 2017-3-20 20:56
SPI1_ReadWriteByte 函数贴出来看下

u8 SPI1_ReadWriteByte(u8 TxData)
{                                          

  while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET){}//μè′y·¢&#203;í&#199;&#248;&#191;&#213;£Sè·±£SR&#188;&#196;′&#230;&#198;÷&#206;a0
       
        SPI_I2S_SendData(SPI1, TxData); //í¨1yíaéèSPIx·¢&#203;íò&#187;&#184;&#246;byte  êy&#190;Y
               
  while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET){} //μè′y&#189;óê&#213;íêò&#187;&#184;&#246;byte  

        return SPI_I2S_ReceiveData(SPI1); //·μ&#187;&#216;í¨1ySPIx×&#238;&#189;ü&#189;óê&#213;μ&#196;êy&#190;Y       
                    
}

一周热门 更多>