SDIO
SDIO接口是在SD内存卡接口的基础上发展起来的接口,SDIO接口兼容以前的SD内存卡,并且可以连接SDIO接口的设备。
SDIO1.0标准定义了两种类型的SDIO卡:
1.全速的SDIO卡,传输率可以超过100Mbps;
2.低速的SDIO卡,支援的时脉速率在0至400KHz之间。
SDIO协议是由SD卡的协议演化升级而来的,很多地方保留了SD卡的读写协议,同时SDIO协议又在SD卡协议之上添加了CMD52和CMD53命令。由于这个,SDIO和SD卡规范间的一个重要区别是增加了低速标准,低速卡的目标应用是以最小的硬件开支来支持低速I/O能力。低速卡支持类似调制解调器,条形码扫描仪和GPS接收器等应用。高速卡支持网卡,电视卡以及组合卡等。组合卡指的是存储器+SDIO,对组合卡来操作需要全速和4BIT的传输模式,这是SDIO1.0标准规定的。
SDIO引脚
SDIO有三种模式,SPI模式、1-bit模式以及4-bit模式。
1、SPI模式:SCLK、MOSI、MISO、中断(第8脚)、#CS(CMD)和GND
2、1-bit模式:CLK、CMD、DAT0(数据)、DAT1(中断)和GND
3、4-bit模式:CLK、CMD、DAT0-DAT3(数据)、DAT1(复用为中断)和GND
通信协议
SDIO总线上都是HOST端发起请求,然后DEVICE端回应请求,其中请求和回应中会包含数据信息:
1. Command: 用于开始传输的命令,是由HOST端发往DEVICE端的,其中命令是通过CMD信号线传送的;
2. Response: 回应是DEVICE返回的HOST命令作为Command的回应。也是通过CMD线传送的;
3. Data: 数据是双向的传送的。可以设置为1线模式,也可以设置为4线模式。数据是通过DAT0-DAT3信号线传输的。
SDIO的每次操作都是由HOST在CMD线上发起一个CMD,对于有的CMD,DEVICE需要返回Response,有的则不需要。
对于读命令,首先HOST会向DEVICE发送命令,紧接着DEVICE会返回一个握手信号,此时,当HOST收到回应的握手信号后,会将数据放在4位的数据线上,在传送数据的同时会跟随着CRC校验码。当整个读传送完毕后,HOST会再次发送一个命令,通知DEVICE操作完毕,DEVICE同时会返回一个响应。
对于写命令,首先HOST会向DEVICE发送命令,紧接着DEVICE会返回一个握手信号,此时,当HOST收到回应的握手信号后,会将数据放在4位的数据线上,在传送数据的同时会跟随着CRC校验码。当整个写传送完毕后,HOST会再次发送一个命令,通知DEVICE操作完毕,DEVICE同时会返回一个响应。
应用场景
MMC、SD、TF等移动存储卡
SD卡与TF卡的区别
主要区别在于引脚数量不同,SD卡有9个引脚,TF卡有8个引脚。
引脚 | SD卡(SD模式) | SD卡(SPI模式) | TF卡(SD模式) | TF卡(SPI模式) |
---|---|---|---|---|
1 | DTA3 | CS | DAT2 | RSV |
2 | CMD | MOSI | DAT3 | CS |
3 | VSS | VSS | CMD | MOSI |
4 | VDD | VDD | VDD | VDD |
5 | CLK | SCLK | CLK | SCLK |
6 | VSS | VSS | VSS | VSS |
7 | DAT0 | MISO | DAT0 | MISO |
8 | DAT1 | RSV | DAT1 | RSV |
9 | DAT2 | - | - | - |
参考链接
https://www.cnblogs.com/hellokitty2/p/10981084.html