SD_Error CmdResp7Error(void)
{
SD_Error errorstatus=SD_OK;
u32 status;
u32 timeout=SDIO_CMD0TIMEOUT;
while(timeout--)
{
status=SDIO->STA;
if(status&((1<<0)|(1<<2)|(1<<6)))break; //CRC错误/命令响应超时/已经收到响应(CRC校验成功)
}
if((timeout==0)||(status&(1<<2)))
{
errorstatus=SD_CMD_RSP_TIMEOUT;
SDIO->ICR|=1<<2;
return errorstatus;
}
if(status&1<<6)
{
errorstatus=SD_OK;
SDIO->ICR|=1<<6;
}
return errorstatus;
}
这句程序该怎么理解,望大神指教
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
打扰了,自己弄错了
C语言 + 手册的问题。
去查 SDIO 寄存器组里面 STA 寄存器每一位的含义。
每一位我都懂,但是连在一起就不是很懂了啊,CRC错误然后为什么又有校验正确?能详细指教下吗
一周热门 更多>