EMMC的CMD1命令返回值不对

2019-07-25 11:10发布

CMD1返回的结果为0xC0FF8080,实际应该是0xC0FF8000,因为我的VCC和VCCQ的供电都是3.3V。
然后最后的EMMC初始化完了,输出的卡信息全是错的。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
正点原子
1楼-- · 2019-07-25 16:34
帮顶
Bunny17
2楼-- · 2019-07-25 17:46
调试中发现CMD3命令后,应该得到RCA的值,分配相对地址到设备,然后我的程序CMD3命令后RCA的值为0 ,应该就是这个原因导致后面卡的信息也是错的。PDF描述中,RCA的值应该是要大于1的。
Bunny17
3楼-- · 2019-07-25 22:03
相对设备地址,是设备系统地址,有主机在初始化时动态分配。

一旦分配了RCA,设备就进入数据传输模式。主机在识别总线上的设备后即进入数据传输模式。

在设备识别模式下,主机复位设备,验证工作电压范围和访问模式,识别设备并为总线上的设备分配相对设备地址(RCA)。

主机发送CMD3(SET_RELATIVE_ADDR)赋予该设备一个相对设备地址(RCA),它比CID短,将在下一步的数据传输模式(典型地,采用比fOD更高的时钟速率)下寻址设备。一旦接收到RCA,设备就变为Stand-by状态,且设备不再对下一步的识别循环作出反应。而且,设备将其输出驱动器从开漏切换到推拉。
Bunny17
4楼-- · 2019-07-26 02:37
 精彩回答 2  元偷偷看……
Bunny17
5楼-- · 2019-07-26 07:57
最后没有管他,程序继续往前走。
Bunny17
6楼-- · 2019-07-26 10:46
但是FATFS系统文件加上去又不对了。

一周热门 更多>