查询sdio卡的 cis 寄存器需要发送的命令以及参数
时间: 2024-04-22 17:23:47 浏览: 71
sd.rar_sdio 读取SD卡
查询 SDIO 卡的 CIS 寄存器需要发送的命令和参数可以按照以下步骤进行:
1. 发送 CMD5 命令,让 SDIO 卡进入 SDIO 模式。
2. 发送 CMD52 命令,读取 SDIO 卡的 CCCR(Card Common Control Register)寄存器的 IO Block Size 和 Card Capability 部分,以确定 SDIO 卡 CIS 的长度和地址。CMD52 命令的格式如下:
- 命令码:52
- 参数:[31:27] 0,[26:9] 保留,[8:7] 01(读取单个寄存器),[6:5] 寄存器编号,[4:3] 保留,[2:1] 00(使用函数0),[0] 1(读取数据)
- 返回值:读取到的寄存器值
其中,[6:5] 的取值为 0x00,表示读取 CCCR 寄存器;[8:7] 的取值为 0x01,表示读取单个寄存器;[6:5] 和 [8:7] 的取值需要根据具体的 SDIO 卡和应用进行设置。
3. 根据第二步读取到的 CIS 长度和地址信息,通过 CMD53 命令读取 CIS 数据结构。CMD53 命令的格式如下:
- 命令码:53
- 参数:[31:30] 10(块传输),[29] 0(不使用自动CMD12),[28:25] 保留,[24:9] 数据块长度,[8:5] 保留,[4:0] 从哪个地址开始读取
- 返回值:读取到的数据块
其中,[24:9] 表示每次读取的数据块长度,需要根据 CIS 数据结构的长度进行设置;[4:0] 表示从哪个地址开始读取,需要根据第二步读取到的 CIS 地址进行设置。
需要注意的是,具体的命令和参数设置可能会因为 SDIO 卡的不同而有所差异,建议参考相关的 SDIO 协议规范和 SDIO 卡厂商提供的文档进行操作。
阅读全文