我在德州仪器的数字信号处理器(TMS320F2812)上工作。
用我的软件(C语言),我可以读取SD卡(<= 2 2GB)上的信息。但是当我尝试使用4 4GB的卡时,它不能工作。
我读了很多文档,我知道这两种卡片(FAT16,FAT32,...)有很多不同之处。
但我的第一个问题出现在我发送CMD0时;通常是:-0 1(起始位)0 0 0
我附上了两张图片:-当我在2 2GB的卡上发送CMD0时,第一张图片打开了

当我在4 GB卡上发送CMD0时,

同样的软件,框架也不一样,你知道问题出在哪里吗?
为我糟糕的英语辩解,我是法国人。
致以敬意,
发布于 2018-07-04 14:54:20
我意识到一些事情;问题不是来自CMD0。2个卡(2 4GB和4 4GB)接受此命令。
问题来自以下命令CMD8。我发送了CMD8,参数为0x1AA,但我从来没有得到过0x1AA的答案。我不知道我收到的是哪一个答案。
低容量卡(<2 2GB)可以接受此命令吗?CMD0 --> CMD8 -->CMD55 --> ACMD41
因为这是初始化SDHC卡的唯一方法,不是吗?
致以敬意,
https://stackoverflow.com/questions/51044261
复制相似问题