SD卡
一、SD卡接口
SD 卡的接口可以支持两种操作模式:
主机系统可以选择以上其中任一模式, SD 卡模式允许 4 线的高速数据传输。 SPI 模式允许简单通用的 SPI 通道接口, 这种模式相对于 SD 模式的不足之处是丧失了速度。
(1)SD 卡模式
SD 模式针脚定义
注:S:电源供电, I:输入 O:输出 I/O:双向 PP: I/O 使用推挽驱动
SD模式下允许有一个主机,多个从机(即多个卡),主机可以给从机分配地址。主机命令可以是发给指定从机,也可以以广播形式发送。
(2)SPI 模式
SPI模式针脚定义
注:S:电源供电, I:输入 O:输出 I/O:双向 PP: I/O 使用推挽驱动;
SPI 模式时,这些信号需要在主机端用 10~100K 欧的电阻上拉。
SPI 总线允许通过 2 通道(数据入和出)传输比特数据。 SPI 兼容模式使得 MMC 主机系统通过很小的改动就可以使用SD卡,SPI 模式使用字节传输。
二、SD卡总线
1.SD总线
SD 总线允许强大的 1 线到 4 线数据信号设置。 当默认的上电后, SD 卡使用 DAT0。初始化之后,主机可以改变线宽。 在混和连接中 Vcc, Vss 和 CLK 的信号连接可以通用。但是,命令,回复,和数据(DAT0~3)这几根线,各个 SD 卡必须从主机分开。
CLK:每个时钟周期传输一个命令或数据位。频率可在 0~25MHz 之间变化。 SD 卡的总线管理器可以不受任何限制的自由产生 0~25MHz 的频率。
CMD:命令从该 CMD 线上串行传输。一个命令是一次主机到从卡操作的开始。命令可以以单机寻址(寻址命令)或呼叫所有卡(广播命令)方式发送。回复从该 CMD 线上串行传输。一个命令是对之前命令的回答。回复可以来自单机或所有卡。
DAT0~3:数据可以从卡传向主机或副卡。数据通过数据线传输。
SD总线拓扑
2.SPI总线
SPI总线拓扑
三、SD卡电路设计
1.SD总线接口
2.SPI总线接口
四、SD卡总线协议
1.SD总线协议
SD总线上的通信基于命令和位数据流,它们由一个起始位开始,由一个停止位终止;
命令:命令是启动操作的令牌。 一个命令从主机发送到单个SD卡(寻址命令)或所有连接的SD卡(广播命令),命令CMD线上是串行传输。
响应:响应是从被寻址的SD卡发送的令牌,或者从所有连接的卡(同步)发送,作为对先前接收到的主机命令的答复,答复在CMD线上串行传输。
数据:数据可以从卡片传输到主机,反之亦然。,数据通过数据线传输。
2.SPI总线协议
SPI通道是面向字节的, 每个命令或数据块由8个比特位构成,并且与CS信号字节对齐(8个时钟的倍数)。
与SD总线模式一样,SPI模式也是基于命令、响应、数据块的传输。主机与SD卡间的通信全部由主机控制,主机通过CS信号线来开始每个总线的传输。
SD总线模式与SPI总线模式的响应方式有以下三点不同:
(1)选定的卡总是响应命令。
(2)使用八位或十六位响应结构。
(3)当卡遇到数据检索问题时,它将响应一个错误响应(那个替换期望访问的数据块),而不是在SD总线模式下得超时。
SD卡的更多相关文章
- android计算每个目录剩余空间丶总空间以及SD卡剩余空间
ublic class MemorySpaceCheck { /** * 计算剩余空间 * @param path * @return */ public static String getAvail ...
- Android将应用调试log信息保存在SD卡
转载:http://blog.csdn.net/way_ping_li/article/details/8487866 把自己应用的调试信息写入到SD卡中. package com.sdmc.hote ...
- SD卡的监听
摘要:在一般应用中,如果需要对占用空间比较大的文件操作,需要监听SD卡的状态,Android中对SD卡的监听状态操作步骤如下: 一.创建一个类继承于BroadcastReceiver public c ...
- Android SD卡存储
原创文章,转载请注明出处:http://www.cnblogs.com/baipengzhan/p/Android_SDcard_store.html 一 概念 SD卡存储空间比较大,当需要存取较大的 ...
- 关于手机的内置SD卡与外置SD卡
对于安卓2.3的系统来说,Environment.getExternalStorageDirectory()获取的目录是内置SD卡还是外置SD卡是无法保证的, 和手机厂商的修改有关,只能通过Envir ...
- Android从网络某个地址下载文件、写入SD卡
首先创建一个HttpDownloader类,获取下载文件的网络地址,将文件下载下来以String流的方式返回: public String download(String urlStr){ //url ...
- android setDestinationInExternalPublicDir 下载到SD卡根目录
一:setDestinationInExternalPublicDir(“Trinea”, “MeiLiShuo.apk”);表示设置下载地址为sd卡的Trinea文件夹,文件名为MeiLiShuo. ...
- STM32 Unicode 与 GBK 转换 .bin文件放到SD卡是啥意思
2个数组 : }; }; 一个是Unicode 编码,一个是GBK编码: 用c2b软件转成.bin 二进制文件放到SD卡里: SD卡放入字库 .FON STM32 代码: 代码中SD卡字库和二进制路径 ...
- RAM、DRAM、SD卡
catalogue . ROM.RAM.DRAM.SRAM和FLASH的区别 . 内存工作原理 . DRAM基本结构与原理 . SD卡基本结构与原理 1. ROM.RAM.DRAM.SRAM和FLAS ...
- 不从SD卡启动树莓派2
本文你可以学到: berryboot使用,kali安装,开挂的MobaXterm,以及关于通过LABEL和UUID挂载的小技巧. 本文默认你有一定Linux基础,同时针对刚入门的水平,因为这是我的折腾 ...
随机推荐
- MySQL防止库存超卖方法总结
订单超卖问题是涉及到库存项目的重中之重,这里我总结一下常用的方法 1.简单处理[update & select 合并](乐观锁) beginTranse(开启事务)$num = 1; try{ ...
- 网页换肤,模块换肤,jQuery的Cookie插件使用(转)
具体效果如下: 第一次加载如下图: 然后点击天蓝色按钮换成天蓝色皮肤如下图: 然后关闭网页重新打开或者在打开另一个网页如下图: 因为皮肤用Cookie保存了下来,所以不会重置 具体的实现代码如下: & ...
- com.android.support:appcompat-v7:27.+问题解决
新建的项目就报下面的错误,问题指向了app/build.gradle,看起来是版本兼容的问题. 解决方案: 1.查看sdk tools的版本:26.1.1 远程依赖包是27.+,而我们的s ...
- 应用调试(一)strace
目录 编译 使用 原理 深入文档 title: 应用调试(一)strace date: 2019/1/15 23:35:14 toc: true --- 编译 #tar -xjf strace-4.5 ...
- admin 后台操作表格
1. app下创建 templates 运行的时候 先找全局的templates——> 按照app的注册顺序找templates中的文件 2. app下在创建一个urls.py include ...
- 腾讯云服务器tomcat端口无法访问
第一种情况: 如题:https://console.cloud.tencent.com/cvm/securitygroup 需要去这个地址设置安全组. 说实话,一句mmp不知当讲不当讲.使用说明这块太 ...
- HDU 1584(蜘蛛牌 DFS)
题意是在蜘蛛纸牌的背景下求 10 个数的最小移动距离. 在数组中存储 10 个数字各自的位置,用深搜回溯的方法求解. 代码如下: #include <bits/stdc++.h> usin ...
- SHELL希尔排序
/****************************************************************************** * Compilation: javac ...
- UE4 AR开发笔记
1.基础使用 ArToolKit:生成图片特征,可以用彩图.(图片先灰化) genTexData效准相机.由于有的相机照相有弧度. calib_camera 2.使用UE4ARPlugins做 ...
- mysql语句实战
请创建如下表,并创建相关约束 二.操作表 1.自行创建测试数据 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号: 这个比较难, 3.查询平均成绩大于60分的同学的学号和平均成绩: 4.查 ...