初级会员

- 积分
- 55
- 金钱
- 55
- 注册时间
- 2014-2-20
- 在线时间
- 2 小时
|
5金钱
timeout = SD_DATATIMEOUT;
while (!(SDIO->STA & (SDIO_FLAG_RXOVERR | SDIO_FLAG_DCRCFAIL | SDIO_FLAG_DTIMEOUT | SDIO_FLAG_DBCKEND | SDIO_FLAG_STBITERR)))
{
timeout--;
if (SDIO_GetFlagStatus(SDIO_FLAG_RXDAVL) != RESET)
{
*(tempscr + index) = SDIO_ReadData();
index++;
}
if(timeout == 0)
{
return(SD_ERROR);
}
}
#pragma optimize=none
__root FlagStatus SDIO_GetFlagStatus(u32 SDIO_FLAG)
{
FlagStatus bitstatus = RESET;
/* Check the parameters */
assert_param(IS_SDIO_FLAG(SDIO_FLAG));
if ((SDIO->STA & SDIO_FLAG) != (u32)RESET)
{
bitstatus = SET;
}
else
{
bitstatus = RESET;
}
return bitstatus;
}
bitstatus 一直等于 REST 所以上面的函数过不去有人碰到过这个问题嘛 |
|