前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >stm32 sd卡读写_sd卡引脚定义图

stm32 sd卡读写_sd卡引脚定义图

作者头像
全栈程序员站长
发布于 2022-11-15 03:28:44
发布于 2022-11-15 03:28:44
1.7K0
举报

大家好,又见面了,我是你们的朋友全栈君。

SD卡 SD卡(Secure Digital Memory Card)即:安全数码卡,它是在MMC的基础上发展而来,是一种基于半导体快闪记忆器的新一代记忆设备,它被广泛地于便携式装置上使用,例如数码相机、个人数码助理(PDA)和多媒体播放器等。SD卡由日本松下、东芝及美国SanDisk公司于1999年8月共同开发研制。 SD卡按容量分类,可以分为3类:SD卡、SDHC卡、SDXC卡 容量 命名 简称 0~2G Standard Capacity SD Memory Card SDSC或SD 2G~32G High Capacity SD Memory Card SDHC 32G~2T Extended Capacity SD Memory Card SDXC

SD卡一般支持SDIO和SPI俩种传输方式

注意:很大一部分TF卡(小卡)不支持SPI访问,用SPI方式最好使用大卡

SD卡的SDIO模式及SPI模式引脚的定义如下

SD卡的5个寄存器

名称

宽度

描述

CID

128

卡标识寄存器,提供制造商ID、OEM/应用ID、产品名称、版本、序列号、制造日期等信息。

RCA

16

相对卡地址(Relative card address)寄存器,提供本地系统中卡的地址,可动态变化,在主机初始化的时候确定。 注意:仅SDIO模式下有,SPI模式下无RCA

CSD

128

卡描述数据寄存器,提供SD卡操作条件相关信息和数据

SCR

64

SD配置寄存器,提供SD卡一些特定的数据。

OCR

32

操作条件寄存器,主要是SD卡的操作电压等信息。

STM32的SDIO接口

简介:SDIO Secure Digital Input and Output,安全数字输入输出接口,在SD卡接口的基础上发展而来,兼容SD卡,并可以连接SDIO设备

与SD卡规范的区别:增加了低速标准,低速卡的目标应用时以最小的硬件开支支持低速IO能力

STM32的SDIO接口提供 APB2 外设总线与多媒体卡 (MMC)、SD 卡、SDIO 卡以及 CE-ATA 设备之间的接口。

特性:

注意:F1的SDIO挂载在AHB总线,F4的挂载在APB2总线 原因:总线的时钟

SDIO适配器框图

三个时钟信号:卡时钟SDIO_CK(传输速率0-25MHZ)、SDIO适配器时钟SDIOCLK(用于驱动适配器来产生卡时钟,与所挂载的总线时钟相同)、总线时钟PCLK2(F1为HCLK2)

SDIO_CK计算公式:SDIO_CK=SDIOCLK/(2+CLKDIV) CLKDIV为可配置的分频系数 在初始化时不可以超过400khz ,初始化完成后可全速运行

命令及命令格式

所有的命令都是由单片机发出,其中起始位、传输位、CRC7和结束位由SDIO硬件控制,我们只需要配置命令索引及参数部分,命令索引配置寄存器SDIO_CMD,命令参数配置SDIO_ARG

一般SD卡接收到命令后都会有一个应答(除ACMD0),有长(136位)短(48位)之分

与命令类似,硬件会自动滤除起始位、传输位、CRC7以及结束位等信息 段响应:命令索引存放在SDIO_RESPCMD 参数存放在SDIO_RESP1 长响应:仅保留CID/CSD 存放在SDIO_RESP1~SDIO_RESP4 有六种响应(R1、R1b、R2、R3、R6、R7)详细的看F4XX中文参考手册

SD卡的SDIO操作模式配置流程

这个图是一个极为重要的图要重点理解。

从SD卡初始化流程可知,不管什么卡(这里我们将卡分为4类:SD2.0高容量卡(SDHC,最大32G),SD2.0标准容量卡(SDSC,最大2G),SD1.x卡和MMC卡),首先我们要执行的是卡上电(设置SDIO_POWER[1:0]=11),上电后发送CMD0,对卡进行软复位,之后发送CMD8命令,用于区分SD卡2.0,只有2.0及以后的卡才支持CMD8命令,MMC卡和V1.x的卡,是不支持该命令的。

SD卡的读写都是以扇区为单位操作的

单个扇区读操作

多个扇区的读取操作

单个扇区写操作

多个扇区的写操作

代码就不贴了,参照原子的SD卡实验的例程即可,原子的代码写的还是很完善的,参照原理及流程图读几次代码就会熟练对SD卡的SDIO操作。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/186525.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年10月3日 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
瀚海微SD NAND应用之SD协议系统功能和概念(1) 基础知识
(1)默认速度模式:3.3V信令,频率最高可达25mhz,最高可达12.5 MB/sec
杭州瀚海微
2024/06/14
1230
瀚海微SD NAND应用之SD协议系统功能和概念(1) 基础知识
SD NAND存储功能描述(14)命令类a
SD Memory Card系统的命令集分为几类,如下表所示。每个类都支持一组卡片功能。表4-20根据卡支持的命令进行设置。一个CCC位对应一个支持的命令号,设置为1。ccc中包含强制命令的类总是被设置为1。具有特定功能的卡可能需要支持一些可选命令。
杭州瀚海微
2024/07/10
1190
SD NAND存储功能描述(14)命令类a
(45)STM32——SDIO实验
目录 学习目标 内容 介绍 卡时钟(SDIO_CK) SDIO适配器时钟(SDIOCLK) APB2总线接口时钟(PCLK2) 命令 响应 传输 寄存器 SD卡 初始化  读数据 写数据 硬件连接 代码 总结  ---- 学习目标         我们接下来要讲解的是有关SD卡的一些知识,因为单片机内部的存储容量比较小,一些数据什么的也无法保存,所以这个时候就需要我们使用SD卡来解决这个问题。目前SD卡还在路上,就无法做实验,等SD卡到了再把实验补上。 内容         SDIO,全称: Sec
小点点
2022/12/12
1.4K0
(45)STM32——SDIO实验
STM32CubeMX学习笔记(26)——SDIO接口使用(读写SD卡)
SD卡除了SD-Micro卡之外,还有两种分别是SD和mini-SD,他们分别长这样:
全栈程序员站长
2022/11/10
3.2K0
STM32CubeMX学习笔记(26)——SDIO接口使用(读写SD卡)
【STM32H7教程】第87章 STM32H7的SDMMC总线基础知识和HAL库API
完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第87章 STM32H7的SDMMC总线基础知识和HAL库
Simon223
2021/01/26
3.7K0
【STM32H7教程】第87章       STM32H7的SDMMC总线基础知识和HAL库API
SD卡、TF卡、MMC卡、emmc、sdio扫盲
共同点:SD TF MMC都是在MMC基础上演化发展不同的规范,比如物理尺寸,封装,电压,管脚,位宽,时钟信号等不同,但都使用相同的总线规范。
全栈程序员站长
2022/08/27
14.9K0
SD卡、TF卡、MMC卡、emmc、sdio扫盲
SD/MMC卡初始化及读写流程[通俗易懂]
大家好,又见面了,我是你们的朋友全栈君。二、MMC/SD卡的模型和工作原理 PIN脚、SD卡总线、SD卡结构、SD卡寄存器、上电过程 SD卡寄存器:
全栈程序员站长
2022/08/31
2.8K0
深入探讨SD NAND的SD模式与SPI模式初始化
SD模式(Secure Digital Mode) 是SD卡默认的工作模式。这种模式通常用于需要高数据传输速度的场景,如图像存储、视频录制等。在SD模式下,SD卡使用多个数据线(通常为4线)进行并行数据传输,极大地提高了传输速率。 SPI模式(Serial Peripheral Interface Mode) 是一种更为简化的通信模式,通常用于只支持SPI接口的设备中。虽然SPI模式下数据传输速度较低,但其简单的接口设计使其在许多嵌入式系统中具有一定的优势。对于一些不需要高数据速率的应用场景,如简单的传感器数据记录或配置存储,SPI模式可能是一个更为经济实用的选择。
DevKevin
2024/08/23
1600
深入探讨SD NAND的SD模式与SPI模式初始化
SD NAND的SD模式与SPI模式的初始化
最近很多客户朋友在询问我们CS创世 SD NAND能不能使用SPI接口,两者使用起来有何区别,下面为大家详细解答。
哈__
2024/08/22
1320
SD NAND的SD模式与SPI模式的初始化
瀚海微SD NAND之SD 协议(37)SPI总线保护和读写
总线上传输的每条SD卡命令都受到CRC位的保护。在SPI模式下,SD存储卡提供了CRC ON模式,使具有可靠数据链路的系统能够排除实现CRC生成和验证功能所需的硬件或固件。在CRC OFF模式下,命令的CRC位被定义为“不关心”发送端,而被接收端忽略。
杭州瀚海微
2024/08/21
1550
瀚海微SD NAND之SD 协议(37)SPI总线保护和读写
STM32+雷龙SD NAND(贴片SD卡)完成FATFS文件系统移植与测试
在STM32项目开发中,经常会用到存储芯片存储数据。 比如:关机时保存机器运行过程中的状态数据,上电再从存储芯片里读取数据恢复;在存储芯片里也会存放很多资源文件。比如,开机音乐,界面上的菜单图标,字库文件,方便设备开机加载。
DS小龙哥
2023/01/30
2.5K0
瀚海微SD NAND之SD 协议(39)SPI模式 Transaction Packets
ASD存储卡将在两种通信模式下支持同一组可选命令类(CSD寄存器中只有一个命令类表)。
杭州瀚海微
2024/08/26
550
瀚海微SD NAND之SD 协议(39)SPI模式 Transaction Packets
STM32开发_利用SPI协议读写SD卡、介绍SD卡SPI时序
5.7 SPI模式下: 获取SD卡的总扇区数(GetSDCardSectorCount)
DS小龙哥
2022/11/29
6.8K0
STM32开发_利用SPI协议读写SD卡、介绍SD卡SPI时序
瀚海微SD NAND存储功能描述(25)SD Registers
在卡接口内定义了六个寄存器:OCR, CID, CSD, RCA, DSR和SCR。这些只能通过相应的命令访问。OCR、CID、CSD和SCR寄存器携带卡片/内容特定信息,而RCA和DSR寄存器是存储实际配置参数的配置寄存器。为了使将来的扩展成为可能,该卡应在寄存器的保留位中返回0。
杭州瀚海微
2024/08/06
1150
瀚海微SD NAND存储功能描述(25)SD Registers
SD NAND存储功能描述(28)RCA Registers
可写的16位相对卡地址寄存器携带卡在卡识别期间由卡发布的卡地址。此地址用于卡片识别程序后的寻址主机卡通信。RCA寄存器的缺省值为Ox0000。保留值Ox0000,通过CMD7将所有卡设置为standby状态。
杭州瀚海微
2024/08/09
1280
SD NAND存储功能描述(28)RCA Registers
SD NAND存储功能描述(11)命令系统CMD8
虽然Rev 1.01 SD存储卡支持高达12.5 MB/秒的接口速度,但为了支持主机不断增长的性能需求和内存大小持续增长,25 MB/秒的速度是必要的。为了实现25 MB/sec的接口速度,时钟速率增加到50 MHz, CLK/CMD/DAT信号时序和电路条件被重新考虑并从物理层规范1.01版本更改。
杭州瀚海微
2024/07/05
1490
SD NAND存储功能描述(11)命令系统CMD8
stm32的sdio接口_STM32F411
SDIO,全称: Secure Digital Input and Output ,即安全数字输入输出接口。它是在SD卡接口的基础上发展而来,它可以兼容之前的SD卡,并可以连接SDIO接口设备,比如:蓝牙、WIFI、照相机等。 SDIO和SD卡规范间的一个重要区别是增加了低速标准。低速卡的目标应用是以最小的硬件开支支持低速I/ O能力。低速卡支持类似调制解调器、条码扫描仪和GPS接收器等应用。 STM32的SDIO控制器支持多媒体卡(MMC卡)、SD存储卡、SD I/O卡和CE-ATA设备。 特点
全栈程序员站长
2022/11/09
6760
stm32的sdio接口_STM32F411
stc12c5a60s2功能说明(STC12C5A60S2默认触发)
最近学习一了下SD卡的驱动,网上程序的版本很多,使用的MCU和SD卡的型号千奇百怪,学起来反而没有方向,感觉上乱七八糟的,直到现在才知到我们平常说的SD卡实际上有很多中类别。0到2G的SD卡,最普通的卡;2G到32G的SDHC卡,也就是现在最常用的大容量SD卡;还有我没有见过的SDXC卡,容量好像在32G以上。同时还有手机上的TF卡,实际上也是SD卡 只不过做工不同而已,MMC卡。学习的时候走了很多弯路,SD卡的官方data sheet感觉上写的相当坑爹,网上的学习资料还是给了很大的帮助,但是由于网上的版本很多,程序流程还是要参考官方相对应的SD卡初始化流程。这两天闲下来,抓紧时间整理一下笔记。
全栈程序员站长
2022/07/28
7680
stc12c5a60s2功能说明(STC12C5A60S2默认触发)
【Linux驱动学习】SD卡规范学习
SD:Security Digital Memory Card,新一代多媒体储存卡,高速,安全(但安全机制貌似很少用到) MMC:Multimedia Card,SD卡的上一代多媒体储存卡,已基本被SD卡代替 eMMC:Embedded Multimedia Card,内嵌式存储器,一般焊在PCB上。内置主控制器,以实现统一MMC接口(在传统MMC接口上拓展,集成了整套理论),Nand Flash就是eMMC SDIO:Secure Digital Input and Output Card,SD标准上定义了一种外设接口,有很多设备模块采用。如Wifi,GPS,Bluetooth
sickworm
2019/02/27
2.5K0
【Linux驱动学习】SD卡规范学习
【STM32F407】第4章 ThreadX FileX文件系统移植到STM32F407(SD卡)
4.8 ThreadX FlieX移植接口文件fx_stm32_sdio_driver.c说明
Simon223
2021/03/26
1.7K0
【STM32F407】第4章   ThreadX FileX文件系统移植到STM32F407(SD卡)
相关推荐
瀚海微SD NAND应用之SD协议系统功能和概念(1) 基础知识
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文