一、SDIO功能描述9 Q4 J- ]5 R% u4 A+ y( q 1、SDIO包含两个部分6 @1 m! T: G0 H0 _. V( D% }9 Q( L SDIO适配器模块:实现所有MMC/SD/SD I/O卡的相关功能,如时钟的产生、命令和数据的传送。 AHB总线接口:操作SDIO适配器模块中的寄存器,并产生中断和DMA请求信号。 ; x- \: C- L: S( ]0 A) B0 H! X 2、SDIO使用两个时钟信号8 A" V$ X' T2 e$ x SDIO适配器时钟( SDIOCLK = HCLK )# B, ]8 g0 n* R; [# i$ p+ V3 x+ o AHB总线时钟( HCLK/2 ) 3、SDIO卡时钟 SDIO_CK 是卡的时钟:每个时钟周期在命令和数据线上传输 1 位命令或数据。对于多媒体卡 V3.31协议,时钟频率可以在 0MHz 至 20MHz 间变化;对于多媒体卡 V4.0/4.2 协议,时钟频率可以在0MHz 至 48MHz 间变化;对于 SD 或 SD I/O 卡,时钟频率可以在 0MHz 至 25MHz 间变化。 SDIO_CK = SDIOCLK / ( 2 + CLKDIV ) 注意1:SDIOCLK = HCLK ;$ v" N N: n A+ W4 x 注意2:SD卡初始化时 SDIO_CK不能超过400KHz。' E& V1 K2 ?- W8 e) S9 [ 4、SD卡初始化流程 Power-on :卡上电;: N- d9 _0 r2 q- C1 ?' C9 |' D CMD0 :将卡重置为空闲状态; CMD8 :发送SD存储卡接口条件,包括主机供电电压信息并询问SD卡是否支持主机供电电压。同时该命令也可以用于区 分卡类型,只有 2.0 及以后的卡才支持 CMD8 命令,MMC 卡和 V1.x 的卡不支持该命令。$ [( k8 O7 J1 ~# ~) ?& f5 _ ACMD41 :ACMD41是一个同步命令,识别并拒绝与主机所需的VDD范围不匹配的卡。 T4 K6 b/ L- t CMD2 :获取卡标识。 CMD3 :发布新的卡相对地址RCA。$ D* ~; Q5 ]! j. F, ~ 注意1:详细初始化流程可查阅SD 2.0协议 4.2章节; 注意2:在发送ACMD41前应先在空闲状态下发送CMD55将RCA设置为默认设置。9 t9 C+ A2 d8 b 6 L7 J, F `! J6 D. f1 C8 k/ s" O. ] |
基于STM32F746G-Discover的扩展电路板
【合集】STM32F7教程、资料大集合
F769 Discovery实现播放U盘音乐的播放器
STM32 VS Code Extension (在Ubuntu上开发STM32,ST官方vscode插件使用指南)
STM32F765@216MHz跑NES模拟器【代码】【视频】
基于STM32F7实现ADC软件触发+轮询采集
基于STM32F7进行ADC采集解决更新问题
基于STM32F7使用定时器经验分享
实现基于STM32F7中周期采集
基于STM32F7中实现采集和中断
这个流程图很详细,谢谢分享