//SD卡,發送ACMD41 SD_APP_OP_COND,參數為:0x80100000
while((!validvoltage)&&(count<SD_MAX_VOLT_TRIAL))
{
SDIO_CmdInitStructure.SDIO_Argument = 0x00;//發送CMD55,短響應
SDIO_CmdInitStructure.SDIO_CmdIndex = SD_CMD_APP_CMD; //CMD55
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); //發送CMD55,短響應
errorstatus=CmdResp1Error(SD_CMD_APP_CMD); //等待R1響應
if(errorstatus!=SD_OK)return errorstatus; //響應錯誤
//acmd41,命令參數由支持的電壓范圍及HCS位組成,HCS位置一來區分卡是SDSc還是sdhc
SDIO_CmdInitStructure.SDIO_Argument = SD_VOLTAGE_WINDOW_SD | SDType; //發送ACMD41,短響應
SDIO_CmdInitStructure.SDIO_CmdIndex = SD_CMD_SD_APP_OP_COND;
SDIO_CmdInitStructure.SDIO_Response = SDIO_Response_Short; //r3
SDIO_CmdInitStructure.SDIO_Wait = SDIO_Wait_No;
SDIO_CmdInitStructure.SDIO_CPSM = SDIO_CPSM_Enable;
SDIO_SendCommand(&SDIO_CmdInitStructure);[/mw_shl_code]
程序中的紅色部位中的參數為什么是0x80100000 最高為不是保留位嗎?1代表什么? |