当前位置: 首页 新闻资讯 技术问答

SDNAND的sdio扫卡流程

SD NAND-贴片式TF卡-贴片式SD卡-免费测试2025-01-1977

在使用 SDIO (Secure Digital Input Output) 接口与 SD 卡进行通信时,扫卡(卡检测)流程是一个重要的步骤。以下是一般的 SDIO扫卡流程,详细描述了如何通过 SDIO 协议与 SD 卡进行初始化、卡检测和准备通信:

1. 初始化 SDIO 接口

  • 在开始扫描 SD 卡之前,首先需要初始化 SDIO 接口。这包括配置时钟源、数据线方向和 SDIO 控制寄存器。

  • 配置 SDIO 控制器的时钟和电源,确保接口工作在适合的时钟频率上。

  • 使能 SDIO 外设,并为后续操作配置必要的寄存器。

2. 卡插入检测

  • 通过 卡插入引脚(Card Detect Pin) 或 SDIO 控制器的 卡检测状态寄存器 检测卡是否已经插入。

  • 如果使用卡检测引脚,可以在此时检测到卡是否插入。

  • 如果卡插入,SDIO 控制器会继续进行进一步的初始化。

3. 发送 CMD0(复位命令)

  • 当确认卡已插入后,向 SD 卡发送 CMD0(复位命令)。该命令会重置卡,进入 IDLE 状态

  • 发送命令后,SD 卡应答并返回响应。如果卡正常响应,表示卡已经插入并准备好进行下一步操作。

4. 发送 CMD8(检测卡版本)

  • 发送 CMD8(检测卡支持的电压范围) 来检查卡是否支持当前的电压范围。此命令通常会向卡发送一个 电压请求,并检查卡的响应。

  • 如果卡正常响应,返回的是支持的电压范围和卡的版本信息。

5. 发送 CMD55 和 ACMD41(初始化 SD 卡)

  • CMD55 是一种用于准备卡进入应用模式的命令。它需要在发送 ACMD41(初始化卡) 之前发送。ACMD41 是用于启动卡的初始化过程。

  • 通过发送 CMD55 + ACMD41,SD 卡会进入 初始化状态

  • 在此过程中,SD 卡会进入 准备就绪 状态,直到接收到初始化成功的响应。

6. 发送 CMD2(获取卡的CID寄存器)

  • 一旦 SD 卡成功初始化,发送 CMD2(获取卡的CID寄存器) 命令,获取卡的唯一标识符(CID),这是每张 SD 卡的唯一信息。

  • 该命令返回卡的唯一 ID 信息,包括制造商、产品编号、序列号等。

7. 发送 CMD3 和 CMD7(设置卡地址)

  • 发送 CMD3 来请求设置一个临时的 卡地址(RCA)。此命令的返回值通常是卡的相对地址。

  • 之后,发送 CMD7 来将卡置于选择状态,以便开始实际的读写操作。

8. 发送 CMD9(获取卡的CSD寄存器)

  • 通过发送 CMD9 命令,获取卡的 CSD(Card-Specific Data)寄存器,该寄存器包含关于卡的更多详细信息,如块大小、存储容量等。

9. 检查卡类型

  • 根据 CSD 寄存器的信息,判断 SD 卡的类型(如 SD1.0、SD2.0、SDHC、SDXC 等)。

  • 根据卡的类型配置适当的操作模式,包括块大小、数据速率等。

10. 数据读写准备

  • 一旦卡初始化成功并获得必要的信息,就可以进行数据读写操作。此时 SDIO 接口已经准备好可以与卡进行数据交换。

11. 轮询状态或中断

  • 在操作过程中,你可能需要轮询 SDIO 状态寄存器或使用中断来等待数据传输的完成。

  • 如果发生错误或异常,如卡被移除,可以通过适当的错误处理中断或状态检查来应对。

总结:

  • 卡检测:通过物理卡插入引脚或状态寄存器检测。

  • 初始化:发送复位命令(CMD0),然后通过 CMD8、CMD55 和 ACMD41 完成初始化。

  • 卡信息读取:通过 CMD2 获取卡的 CID,CMD9 获取 CSD,进一步配置卡。

  • 数据读写准备:完成卡的配置后,便可以开始进行数据读写操作。

整个流程的关键是 卡初始化过程,确保 SD 卡被正确识别和配置,以便后续数据交互。


热门标签:SD NAND FLASH 贴片式TF卡 贴片式SD卡 SD FLASH NAND FLASH


SD NAND-贴片式TF卡-贴片式SD卡-免费测试

深圳市芯存者科技有限公司

售前咨询
售前咨询
售后服务
售后服务
联系我们

电话:176-6539-0767

Q Q:135-0379-986

邮箱:1350379986@qq.com

地址:深圳市南山区蛇口街道后海大道1021号B C座C422W8

在线客服 在线客服 QQ客服 微信客服 淘宝店铺 联系我们 返回顶部