mingyuexin1981 发表于 2008-7-21 13:56:09

SD卡初始化的时候,CMD0都不对,返回的是0xff,一般问题回出现在什么地方?

如题

mingyuexin1981 发表于 2008-7-29 10:10:02

问题解决,我遇到的问题是,金士顿的卡就不行
scandisk的卡就可以,真是郁闷

pobomud1 发表于 2009-4-18 10:57:51

请问你是怎么解决的?

zy473551 发表于 2009-4-18 11:03:09

你 CMD0 之前的74个时钟脉冲加的够数么

而其初始化要多跑几次,有些卡确实一次通不过!!

ba1731 发表于 2009-4-29 19:15:11

额,我的能正常CMD0,CMD1死活不对,郁闷死了

hecb999 发表于 2010-6-28 11:18:21

我遇到了相同的问题
所有的PCB板,金士顿2.0G的没有任何问题


奇怪的是:换成4G的卡极少数几块板没有问题

大多数板(金士顿4G,CM0正常,CMD1重试过程中交替返回0x00,0xE0))
scandisk(CMD0,死活都返回0xFF)


电平转换用的9013三极管(M64)
后来多拭了几张4G金士顿SD,发现有些卡可以,有些不可以,真是郁闷,现象同上




楼上几位后来怎么解决的,肯请指教

hecb999 发表于 2010-6-28 15:22:41

问题解决了
在此公布解决方案,希望后来的朋友遇到此情况能够迅速解决


我用的是三极管加下拉电阻进行匹配的方案,接的下拉电阻是4.7K,然后能过一条长250mm的28#线引到SD卡座

问题即在于此:1.线长极易引受干扰,且引起0电平略高;2.分布电容引起延时以及信号微小畸变
解决方案:1.减小下拉电阻,强下拉,我降到1K 2.引线缩短,最好就焊在板上,且离MCU一定要近


看似一个微不足道的问题,可能认为是软件兼容性问题,死活查不出来,我是搞了一天。

qszchew 发表于 2013-3-27 23:05:45

我也痛苦啊,一直返回0xff

woniu158 发表于 2013-4-25 10:59:10

hecb999 发表于 2010-6-28 15:22 static/image/common/back.gif
问题解决了
在此公布解决方案,希望后来的朋友遇到此情况能够迅速解决



如果真是硬件的问题,会不会,无论什么程序都无法初始化成功呢。
我发现我的卡发送CMD0一直返回的是0xff,(在发送cmd0之前已经发送了80个空时钟,spi发送0xff),同样的方法在io口模拟spi的情况下,能够得到正确的返回值0x01. 使用spi ip核,就是0xff, 会不会因为时钟太快了呢?
请问有没有什么解决办法? 从硬件和软件上,给我提一点建议。 非常感谢

meirenai 发表于 2013-4-25 11:33:53

woniu158 发表于 2013-4-25 10:59 static/image/common/back.gif
如果真是硬件的问题,会不会,无论什么程序都无法初始化成功呢。
我发现我的卡发送CMD0一直返回的是0xff ...

检查时序,sd卡的时序是 时钟空闲高电平,在第二个沿发送(接收数据),再就是CMD0做成循环执行200次,参考正点原子的SD卡实验试试。
页: [1]
查看完整版本: SD卡初始化的时候,CMD0都不对,返回的是0xff,一般问题回出现在什么地方?