目录

SD卡协议原理

STM32+SD卡 的系统原理图设计

具体原理

代码

所用软件及硬件:

成果

参考文献


SD卡协议原理

功能
SD卡是存储卡,它的功能就是存储。

分类
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卡外形和接口图如下图所示:

驱动SD卡工作的接口是SPI 或者 SDIO 口,引脚分布如下:

主机与SD卡的硬件连接图:

工作原理
要驱动SD卡工作,主要涉及两个步骤。

第一个步骤是SD卡的识别过程。

第二个步骤是对SD卡进行读写过程,即主机控制器和SD卡之间进行数据传输的过程。

要使SD卡能正常工作,一是要给SD卡供给稳定的电压,二是要SD卡按用户规定的方式工作。这两项工作的实现,都是主机控制器通过给SD卡发送控制命令来实现的。

主机(SDIO控制器)要驱动SD卡工作,要使用许多的命令,包括应用层命令ACMD 和 通用命令 CMD. 主机(SDIO控制器)把命令发送给SD卡,SD卡会作出回应,这里的回应叫做响应,响应命令分为6类,分别是R1、R1b、R2、R3、R6、R7。

主机(SDIO控制器)给SD卡发送命令之后,SD卡会作出响应,响应中包含主机(SDIO控制器)需要的数据,这些数据有SD的信息,容量,和存储数据等等。

上面已经提到了,SD卡工作,主要是识别和数据传输,它的识别过程有些复杂,写代码的时候,可以参考协议给的初始化流程图。数据传输包括读和写,单字节和多字节读写。下两节描述识别初始化流程图和数据读写时序图。

STM32+SD卡 的系统原理图设计

具体原理

SD 卡系统定义了两种通信协议:SD 和 SPI 主机系统可以选择任意一种。

当收到 reset 命令的时候,SD 卡通过主机的信息来决定 使用何种模式,并且之后的通讯都会使用相同的模式。

SD 卡的 SPI 实现使用了 SD 模式相同的命令。SD 卡 SPI 接口同市场上现有的 SPI 主 机兼容。

同其他 SPI 设备一样,SD 卡的 SPI 信道有以下 4 个信号:

CS: 主机到卡的片选(chip select)信号

CLK: 主机到卡的时钟信号

DataIn: 主机到卡的数据信号

DataOut: 卡到主机的数据信号

另一个 SPI 的通用特点是字节传输,这也是卡的实现。所有的数据都是字节(8 bit)的 整数倍,并且直接总是对齐 CS 信号

SD 卡系统(SPI 模式)总线拓扑结构如图

SD 卡系统(host &card)定义了两种操作模式:

卡识别模式 在复位后,查找总线上的新卡的时候,主机会处于“卡识别模式”。卡在复位后会处于 识别模式,直到收到 SEND_RCA(CMD3)命令.

数据传输模式 当 RCA 第一次发布后,卡会处于“数据传输模式”。主机会在总线上所有的卡都被识别 后进入这个模式

SD协议其它方面可参考相关资料。

代码

参考博客STM32用cube配置FATFS模式下SPI读写SD卡_Drive World的博客-CSDN博客

其代码可以直接用,但是需要改动

改动如下

数组的第一位起始值是0 第二位起始值是1 那个加法那里应该是把第一位+0 0+0=0 第二位+1 1+1=2依次循环,得到从01-11的序号

所用软件及硬件:

芯片stm32f103c8t6

usb转ttl模块(因为用串口烧录,且要用串口进行发送信息)

SD卡模块(这里用的是Micro SD模块SPI接口)

SD卡及读卡器

stm32f103c8t6与此SD卡模块的接线如下,由于线多杂乱,就不拍实物图了。

stm32f103c8t6    SD卡
PA4    SDCS
PA5    SCK
PA7    MOSI
PA6    MISO
VCC    VCC
GND    GND
将程序烧录之后按照连线即可

成果

连线

打开野火多功能助手查看

参考文献

(7条消息) STM32F103通过SPI完成对SD卡的数据读取(fat文件模式)_diyu-CSDN博客

(7条消息) 简述SD卡的工作原理(四)_happygrilclh的博客-CSDN博客_sd卡原理

用STM32F103完成对SD卡的数据读取相关推荐

  1. 【嵌入式20】STM32F103完成对SD卡的数据读取详细操作

    本文主要利用STM32F103完成对SD卡的数据读取,介绍该实验的详细操作 一.题目要求 二.SD卡协议原理 1.SD卡简述 2.SD卡物理结构 3.SD卡寄存器 4.SD卡操作模式 5.SD卡初始化 ...

  2. STM32F103完成对SD卡的数据读取(fat文件模式)

    目录 一.关于SD卡 1.简介 2.SD卡的寄存器 3.SD卡读取与写入(SPI模式) 二.实验操作 1.仪器 2.代码 3.连线 4.烧录程序 5.串口调试助手初始化并写入文件 6.sd卡里hell ...

  3. 使用Altium Designer 绘制原理图并且使用STM32F103完成对SD卡的数据读取

    使用Altium Designer 绘制原理图并且使用STM32F103完成对SD卡的数据读取 前言 实验要求 一. 电路原理图绘制 软件安装配置过程 (一)绘制stm32最小系统的电路原理图 1.新 ...

  4. 基于STM32F103完成对SD卡的数据读取(fat文件模式)

    文章目录 实验内容 一.SD卡协议 (一).SD卡简介 (二).SD 卡物理结构 (三).SD卡总线 二.基于STM32F103完成对SD卡的数据读取 (一).创建工程 (二).修改代码 (三).串口 ...

  5. STM32F103完成对SD卡的数据读取

    目录 一.SD卡介绍 1.概述 2.SD模式 3.SD卡读取与写入(SPI模式) 二. STM32F103完成对SD卡的数据读取 1.代码部分 2.U盘格式化 3.电路连接 4.具体实现 三.参考资料 ...

  6. STM32F103完成对SD卡的数据读取详细操作

    SD卡协议原理 SD卡简述 关于SPI协议 通讯的起始和停止信号. 数据有效性 连线 代码完整工程 修改代码 烧录结果 总结 SD卡简述 很多单片机系统都需要大容量存储设备,以存储数据.目前常用的有 ...

  7. STM32F103之完成对SD卡的数据读取

    文章目录 一. 认识SD卡 1. 介绍SD卡 2. SD卡的物理结构 3. SD卡寄存器 4. SD卡模式 5. 初始化SD卡过程 6. SD卡读取数据 二. 实验操作--对SD卡进行数据读取 1. ...

  8. STM32+SD卡的原理图绘制以及用32完成对SD卡的数据读取(fat文件模式)

    目录 一.下载安装AD 1.1安装方法一 1.2安装方法二 二.绘制STM32最小系统原理图 2.1元件库 2.2新建工程 2.3绘制原理图 三.SD卡协议原理 3.1SD卡简介 3.2SD卡接口 3 ...

  9. STM32F103最小板完成对SD卡的数据读取(fat文件模式)

    目录 一.SD卡协议原理介绍 1.SD卡简介 2.SDIO设备分类 3.SD卡物理结构 4.SD卡寄存器 5.SD模式 驱动模式 传输模式 二. 实现对SD卡的数据读取 1.硬件准备 2.芯片模块与S ...

最新文章

  1. Tensorflow会话
  2. 最全Pycharm教程(43)——Pycharm扩展功能之UML类图使用 代码结构
  3. PHP::转义与反转义函数 (POST/GET/COOKIE)
  4. 剑指offer 算法 (知识迁移能力2)
  5. pytorch 笔记:tensorboardX
  6. feedback for last final year project meeting
  7. vector 释放内存 swap
  8. 谷胱甘肽口服、舌下含服、NAC对照实验
  9. java中的分层概念_Java分层概念
  10. 技能的反面 - 魔方和模仿
  11. php 邮件发送是html 没样式_使用python发送邮件
  12. tensorflow支持python3.7吗_TensorFlow2.1正式版上线:最后一次支持Python2,进一步支持TPU...
  13. 如何通过JNI在Java中调用C库函数
  14. json-C使用小结
  15. MySQL命令窗口出现中文乱码的解决方法
  16. Netty-3-服务端接受并打印telnet传递过来的字符串
  17. 阿里超大规模 Flink 集群运维体系介绍
  18. NS和DNS的区别有哪些?
  19. 第二语言教学的5c标准是哪5c,第二语言教学法知识小结(一)
  20. Matlab指数函数e最小二乘法,最小二乘法拟合指数函数(Matlab编程),着急,

热门文章

  1. LinkList L与LinkList *L Lnode与*LinkList的区别
  2. 中国电信 CTWing 物联网平台运营数据大解密
  3. java之21点游戏(只包含一个玩家和一个庄家,是否抓牌,没有黑杰克)
  4. 【转载】三层交换机与普通的交换机有什么区别
  5. 华为员工晒出7天的上班打卡记录,网友:福报满满!
  6. 玻色量子CEO文凯受邀出席首经贸金融学院系列讲座
  7. uni-app开发安卓APP运行到真机,未检测到手机或模拟器
  8. 第1-2课:算法设计常用思想之贪婪法
  9. 极客兔兔 TensorFlow入门教程
  10. float取小数点后四位