搜索
ST MCU Finder
安装免费手机应用,
寻找理想的ST MCU

[STM32F1] sdio上电读取SD卡有时死循环了,卡使用高速卡4g , 但 2G 1G可以

[复制链接]
1048|0
 楼主 | 2015-1-19 08:48 | 显示全部楼层 |阅读模式
sd, IO, ni, se
sdio上电读取SD卡有时死循环了,卡使用高速卡4g ,  但 2G 1G可以


sdio上电读取SD卡有时死循环了,卡使用高速卡
while ((!validvoltage) && (count < SD_MAX_VOLT_TRIAL))
     {

      /*!< SEND CMD55 APP_CMD with RCA as 0 */
       SDIO_CmdInitStructure.SDIO_Argument = 0x00;
       SDIO_CmdInitStructure.SDIO_CmdIndex = SD_CMD_APP_CMD;
       SDIO_CmdInitStructure.SDIO_Response = SDIO_Response_Short;
       SDIO_CmdInitStructure.SDIO_Wait = SDIO_Wait_No;
       SDIO_CmdInitStructure.SDIO_CPSM = SDIO_CPSM_Enable;
       SDIO_SendCommand(&SDIO_CmdInitStructure);

      errorstatus = CmdResp1Error(SD_CMD_APP_CMD);

      if (errorstatus != SD_OK)
       {
         return(errorstatus);
       }
       SDIO_CmdInitStructure.SDIO_Argument = SD_VOLTAGE_WINDOW_SD | SDType;
       SDIO_CmdInitStructure.SDIO_CmdIndex = SD_CMD_SD_APP_OP_COND;
       SDIO_CmdInitStructure.SDIO_Response = SDIO_Response_Short;
       SDIO_CmdInitStructure.SDIO_Wait = SDIO_Wait_No;
       SDIO_CmdInitStructure.SDIO_CPSM = SDIO_CPSM_Enable;
       SDIO_SendCommand(&SDIO_CmdInitStructure);

      errorstatus = CmdResp3Error();
       if (errorstatus != SD_OK)
       {
         return(errorstatus);
       }

      response = SDIO_GetResponse(SDIO_RESP1);
       validvoltage = (((response >> 31) == 1) ? 1 : 0);
       count++;
     }
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 我要提问 投诉建议 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

在线客服 快速回复 返回顶部 返回列表