我在嵌入式设计中使用microSD卡.该卡通过SPI接口连接到微控制器.它适用于我之前使用的所有卡,但现在我的新卡不会初始化.该卡是Transcend 2 GB microSD卡(TS2GUSD).
发送初始时钟串以切换到SPI模式后,我执行以下操作:
CMD0(参数0,CRC 0x95) - >响应0x01 - >确定
CMD8(参数0x000001AA,CRC 0x87) - >响应0x01 0x000001AA - >表示它是SDC V2 +卡,支持2.7 V - 3.6 V的电压范围 - > OK
然后我应该发送ACMD41命令,但是当发送必须在CMD41之前的CMD55(参数0,CRC 0)时,我得到响应0x05 - >非法命令.我也尝试发送CMD1(用于MMC卡),但它提供了类似的非法命令响应.该代码适用于我的Sandisk 2 GB microSD卡.
我该如何解决这个问题?