ntbchchj 发表于 2010-7-28 15:54:24

求教SD卡初始化的问题

我现在在做SD卡的读写,我用的是2G的卡,但还是用的以前的资料。不知道现在2G以上的SD卡的协议规范跟2G以下的一样么?我用的是SPI模式,在写入cmd55+acmd41命令时,cmd55得到的响应是1,acmd得到的响应是9,我查了是通讯CRC错误,但是SPI模式是不检查CRC的啊,怎么又冒出CRC错误呢?再次发送时,cmd55的响应就变成5,非法命令了。是不是2G以上的协议不一样啊?求哪位帮帮忙,或者有SD读写的工程的发我一个。

mrightt 发表于 2010-9-29 20:10:51

路过帮顶我也在做这个

firs_avr 发表于 2010-10-11 22:07:28

2G以上的得是FAT32的了把,貌似是有些不同

miaocldy 发表于 2012-1-18 13:20:10

SD卡初始化的资料能共享吗?刚开始学习!谢谢,QQ644392162

leoyang 发表于 2012-1-18 15:13:46

//发卡初始化指令CMD55+ACMD41
                    do
                    {
                            //先发CMD55,应返回0x01
                r1 = SD_SendCommand_NoDeassert(CMD55, 0, 0);
                if(r1 != 0x01)
                {
                  return r1;
                }
                           // (已经解决,初步判断是(0xC0+41)地址错误,应该用(0x40+41))
                           // 错 误!!!!!
                           // 参 数:0x40000000 ,返 回 :0xE0
                           // 参 数:0          ,返 回 :0xE1
                           // 在SPI模式下,参数为空,无校验;
                           // SD模式下,带有参数和CRC校验
               // ACMD41,正确响应:0x00
                r1 = SD_SendCommand(ACMD41, 0x40000000, 0x0); //(0xC0+41) ACMD41
                retry++;
                if(retry>200)   
                {
                  return r1;//超时则返回r1状态
                }
                               
            }while(r1!=0x00)

我遇到过初始化的问题,就是把地址搞错了,你检查一下你的呢?
页: [1]
查看完整版本: 求教SD卡初始化的问题