0 Preface/Foreword
0.1 基本概念
不同的存储卡的区别:
- 存储容量(Capacity)
- 文件系统(File System)
- SD Logo(SD标志)
尺寸类型:
- 标准SD卡,32 * 24 * 2 mm
- 迷你(mini)SD卡, 21.5 * 20 * 1.4mm
- 微型(micor)SD卡, 15 * 11 * 1mm
1 SD卡介绍
SD卡:Secure Digital Card(安全数字卡)
UHS:Ultra High Speed
SD卡类型:
- SDHC, Secure Digital High Capacity,高容量SD存储卡,容量范围4GB-32GB。
- SDXC, Secure Digital extended Capacity,扩容的SD存储卡,up to 2TB
- SDUC, Secure Digital Ultra Capacity,超容量SD存储卡,up to 128TB
SD存储速度等级:
- Class 2,标准总线, 2MB/s
- Class 4,高速总线, 4MB/s
- Class 6,高速总线, 6MB/s
- Class10,高速总线, 10MB/s
- UHS-I, Ultra High Speed
- UHS-II
1.1 硬件接口
常用的SD卡接口包括:
- SPI (Serial Peripheral Interface)
- SDIO(Secure Digital Input and Output)
- SD卡模式,也叫SDIO
SD卡模式:
标准的通讯模式,使用专用的SD卡协议。该模式下,使用的是4-wire串行接口,包含时钟线、数据线(CMD和DAT0-DAT3)。
SPI模式:
一种兼容模式,允许SD卡通过SPI接口与主机设备通信。SPI是一种常见的串行通信协议,SPI模式下,SD卡使用4线接口:时钟(CLK)、数据输出(MISO)、数据输入(MOSI)、和片选(CS)。
SPI,SDIO,能使用DMA功能吗?
1.1.1 SD卡接口定义
SD卡是一个9PIN的接口,用于与主机设备通讯,包括数据线、命令线和电源线。
接口包括:
- CLK:HOST给DEVICE的时钟信号
- CMD:双向信号,用于传送命令和应答
- DAT0-DAT3:用于传输的数据线
PIN定义如下:
- PIN1:CD/DAT3(CS,SPI模式)
- PIN2:CMD(MOSI,SPI模式)
- PIN3:VSS
- PIN4:VCC
- PIN5:CLK
- PIN6:VSS
- PIN7:DAT0(MISO,SPI模式)
- PIN8:DAT1(NC)
- PIN9:DAT2(NC)
1.1.2 主从概念
SD为从设备,即slave;操作SD的设备为主设备,即master。
1.2 文件系统
FAT: File Allocation Table
exFAT: extended File Allocation Table
LFN: Long File Name
常用的SD文件系统包括:
- FAT32,支持最大32GB的存储容量,支持更长的文件名,支持最大的文件为4GB,适合大多数设备和操作系统
- FAT16,支持最大2GB的存储容量,文件名最长8个字符,支持最大的文件为2GB
- exFAT,FAT32的改进版本,由Microsoft开发,支持更大的文件和存储容量
- NTFS ,Windows操作系统下的文件系统。
不同文件系统的区别:
- 存储容量
- 文件大小限制
- 文件名长度和支持的字符,FAT 16只支持8个字符长度的文件名
- 兼容性:不同设备和操作系统对文件系统的支持不同,FAT32是最通用的文件系统,几乎所有设备和操作系统都支持。
- 文件系统系统:读写速度
1.3 SD通讯生命周期
通讯生命周期包括:初次连接 》 卡识别模式 》 数据模式 》 连接断开
- 初次连接:当SD卡首次插入到主机设备(读卡器,手机,手表)时,主机设备会检测到新的存储介质,并开始与SD卡进行通信。
- 卡识别模式:主机设备通过发送特定的命令来初始化与SD卡的通信,并获取SD卡的信息,如厂商信息(Vendor)、存储容量(Capacity)、速度等级(Class)。该过程包括对SD卡的CID和CSD寄存器进行读取,以及可能得SCR寄存器读取(用于获取SD卡支持的SD规范和操作特性)
- 数据模式:一旦卡识别模式完成,SD卡进入数据模式。该模式下,主设备可以进行实际的数据读写操作,包括文件的存储、检索、删除等。
- 连接断开:当用户从主机设备中移除SD卡时,连接会断开。在断开连接之前,主机设备通常会执行一些清理操作,以确保数据的安全写入和卡的妥善关闭。
2 SDIO卡
SDIO(Secure Digital Input and Output)卡:使用SD总线以及SD指令的IO设备。SDIO卡的外形和接口和SD卡是兼容,但是实现的不只是存储功能,还能实现其他的功能,如Bluetooth、WIFI、GPS等。
SDIO卡与SDIO接口通讯,属于不同的概念,一个指卡的类型,一个指具体的通讯协议(接口)。