关于函数 SPI1_ReadWriteByte(u8 TxData) 的疑问

2019-08-14 04:49发布

问下这不是个SPI数据交换函数吗?如果用这个函数来制作“读取”函数,返回值是不是永远和发送值一样了?

具体问题如下:(利用SPI1_ReadWriteByte(u8 TxData)函数制造xReadCH376Data( void ))
SPI1_ReadWriteByte(u8 TxData)
{
    u8 retry=0;
    while((SPI1->SR&1<<1)==0)  //????·???????
    {
        retry++;
        //if(retry>200)return 0;
    }
    SPI1->DR=TxData;                //·???????byte
    retry=0;
    while((SPI1->SR&1<<0)==0)  //?????????ê????byte
    {
        retry++;
        //if(retry>200)return 0;
    }
    return SPI1->DR;           //·?????????????
}

UINT8    xReadCH376Data( void )
{
    UINT8 i;
    mDelayuS(10);
    i = SPI1_ReadWriteByte( 0xFF );
    return( i );
}

这么一来这个“读取”程序是不是要不停读出0xFF了?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。