TF卡为金士顿8G卡 SDHC。
使用
STM32F103VCT6,SPI3驱动方式。CMD0和CMD8可以正常响应,接着发送CMD55,ACMD41,返回值均为0x01,如果循环发送,第二次CMD55没有应答,程序判断为0xFF。一直卡在这个地方....
代码如下:
retry = 0;
do
{
r1 = SD_SendCommand(CMD55, 0, 0);
if(r1!=0x01)
{
//第二次发送CDM55时,返回,debug发现r1为0xFF.
return r1;
}
r1 = SD_SendCommand(ACMD41, 0x40000000, 0);
retry++;
if(retry>200)
return r1;
}while((r1)!=0);
示波器看波形,第二次CMD55指令正常发出,CLK也正常。但没有应答数据。
有没有朋友遇到这种情况,请帮忙分析下,谢谢!!!
感谢回复。
都查过了,换了张ADATA的卡,可以了。但原因还是不明。
一周热门 更多>