求助:SD卡发送cmd0后死循环

2019-07-21 00:55发布

发完cmd0后,就在这死循环 SDIO_FLAG_CMDSENT一直为0x80

 static SD_Error CmdError(void)
{
 uint32_t timeout;   timeout = SDIO_CMD0TIMEOUT; /*!< 10000 */   while ((timeout > 0) && (SDIO_GetFlagStatus(SDIO_FLAG_CMDSENT) == RESET))
  {
    timeout--;
  }   if (timeout == 0)
  {
    errorstatus = SD_CMD_RSP_TIMEOUT;
    return(errorstatus);
  }   /*!< Clear all the static flags */
  SDIO_ClearFlag(SDIO_STATIC_FLAGS);   return(errorstatus);
}

请指点可能的原因,用的是4G kingston sdhc卡
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。