|
发表于 2008-11-4 15:13:08
|
显示全部楼层
与lz讨论:
看了你的源文件,你所使用的sd卡部分应该来自英贝特,其中包含的的st库为1.0版本。我也下载了英贝特的资料调试可以通过,但是把st库文件升级为2.02后,sd卡读取失败,错误码0x34(?)单步调式时候发现问题
INT8U SD_ActiveInit(void)
{
INT8U param[4] = {0,0,0,0},resp[5],ret;
INT32U i = 0;
do
{ /* 发出CMD1, 查询卡的状态, send CMD1 to poll card status */
ret = SD_SendCmd(CMD1, param, CMD1_R, resp);
if (ret != SD_NO_ERR)
return ret;
i ++;
SD_Sleep(1000000); //此句为我所加
}while (((resp[0] & MSK_IDLE) == MSK_IDLE) && (i <= SD_IDLE_WAIT_MAX));
加入“ SD_Sleep(1000000); //此句为我所加”后可以通过,
故我猜测换用2.02的库后,读取速变快啦,
不知lz可有兴趣把st库升级一下试试看?
范例下载参考
http://www.realview.com.cn/down-list.asp?id=586 |
|