SD卡兼容性问题(转)

看到一篇关于硬件抗干扰的应用实例,很有参考值。所以,转过来方便查找。

源文:SD卡兼容性问题

  最近碰到了一个SD卡兼容性的问题。主芯片SD卡组的信号,经过转接板,长排线,然后再到SD卡子板之后。对多种卡兼容性出现问题。 比如Sandisk或者三星的OK,而金士顿的卡个别容量的不行等等(据说金士顿的卡在市面上较多假货)。   每一种SD卡的负载特性都会有差异。     做了相关处理,分享给大伙。
      而最主要的原因是SD_CLK信号的不稳定引起,畸变比较厉害。 测得波形:

QQ截图20150714100005.png (269.58 KB, 下载次数: 0)

下载附件

5 小时前 上传

电路修正之后波形如下:

QQ截图20150714100026.png (191.15 KB, 下载次数: 0)

下载附件

5 小时前 上传

修正之后,起码在低电平区间,没有了之前的反弹(反弹会引起芯片识别电平逻辑出错)
整体连接示意图,和电路匹配参数如下:

QQ截图20150714100256.png (12.41 KB, 下载次数: 0)

下载附件

5 小时前 上传

  在电源板上对SD_CLK信号增加33R串接电阻和33p接地电容做匹配(吸收信号发射和减缓信号上升时间,

在SD卡板增加RC终端匹配(吸收发射和回波)。 RC参数是根据线路连接实际验证之后取得。

  实际验证效果不错。对多种SDK都表现出了较好的兼容性。

时间: 2024-09-20 12:05:21

SD卡兼容性问题(转)的相关文章

在大于32GB或64GB容量的SD卡上使用NOOB安装树莓派 - Using NOOB on SD cards larger than 32GB or 64GB for Raspberry Pi

在树莓派上玩了一小段时间了,因为装的软件包越来越多,所以越来越感觉16G的SD卡没办法长期使用下去.于是采购了几张64G的SD卡,打算周末装上系统.可是按照一般的流程,在Windows下用SD Formatter格式化后,我的Raspberry Pi 2B似乎完全无动于衷,一点反应也没有.经过查找资料,找到了原因.主要是因为大于32GB的SD卡, SD Formatter会默认以exFAT的格式进行格式化,而Raspberry Pi目前的机型都还不支持对该格式的识别,因此才会无法识别大于32GB

SD卡的SPI模式的初始化顺序(转)

为了使SD卡初始化进入SPI模式,我们需要使用的命令有3个:CMD0,ACMD41,CMD55(使用ACMD类的指令前应先发CMD55,CMD55起到一个切换到ACMD类命令的作用). 为什么在使用CMD0以后不使用CMD1?CMD1是MMC卡使用的指令,虽然本文并不想讨论MMC卡的问题,但是我还是要说:为了实现兼容性,上电或者发送CMD0后,应该首先发送CMD55+ACMD41确认是否有回应,如果有回应则为SD卡,如果等回应超时,则可能是MMC卡,再发CMD1确认. 正确的回应内容应该是:  

(安卓)如何写数据到外部存储设备(sd卡),

在android2.1及以前版本中,其sdcard目录在根目录,2.2,2.3以后其sdcard目录就变成了/mnt/sdcard了,以及一些厂商自定义的android系统,可能也会把sdcard的名称改的各不相同.这里如果还是用绝对路径,那么程序的兼容性将会大大降低.这里主要用到了Enviroment类. android.os.Environment 其主要方法有: getRootDirectory()---->/  获取根目录 getDataDirectory()---->/data 获取

Android开发学习---如何写数据到外部存储设备(sd卡),Environment.getExternalStorageDirectory,怎么获取sd卡的大小?

本文主要介绍如何写数据到sd卡,这里主要到的技术是Environment中的方法. 1. 2.实现代码: /datasave/src/com/amos/datasave/savePasswordService.java //写数据到sdcard public void savePasswordToSDCard(String name, String password) { // android 2.1 /sdcard/xx.txt // android 2.2 /mnt/sdcard/xx.tx

SD卡在SPI模式下的初始化和详细的代码分析

SD卡在spi下的初始化:1.初始化与SD卡链接的硬件条件(mcu的spi配置, IO口配置)2.上电延时(>74个CLK)3.复位卡(CMD0),进入idle状态4.发送CMD8,检查是否支持2.0协议(CMD8就是判断是否是支持2.0协议)5.根据不同协议检查sd卡(命令包括:cmd55.cmd41.cmd58.cmd1等)6.取消片选,多发8个CLK,结束初始化详细描述:上电后,包括热插入,卡进入 idle 状态.在该状态 SD 卡忽略所有总线操作直到接收到 ACMD41 命令.ACMD4

制作SD(8G)卡Linux镜像,使得ZC706开发板可以从SD卡启动进入Linux系统

转自网络,供学习记录使用,红色部分是我实验时,这篇文章和网站稍有出入的地方. 目的:制作SD(8G)卡Linux镜像,使得ZC706开发板可以从SD卡启动进入Linux系统 在http://wiki.analog.com/resources/eval/user-guides/ad-fmcomms2-ebz/quickstart/zynq(姑且把这个链接成为链接1吧)链接中找到 图1 点击绿色字体的链接,下载镜像原始文件.这里有不同时期的版本,本说明中选择 图2 下载的原始文件为:2014_R2-

微信网页中上传文件时“只能选择SD卡中的文件”问题

需求描述:在微信网页中上传文件到我们自己的服务器,使用 input  type=file标准控件: <input type="file" name="upfile" id="upfile" > 问题来了:苹果可以顺利上传图片文件的,安卓下每次选择完图片文件之后会弹出提示"只能选择SD卡中的文件"不能上传图片.手机已经设置默认存储为SD卡. 百度搜了一个下午没有结果,微信公众平台更没有答案shiiiit. 最后在cs

Android文件存储往SD卡中写入文件路径出错问题求解。

============问题描述============   因为学习需要  看的老罗的视频  关于数据存储往SD卡写文件的那一部分  几乎完全照办的敲的代码   结果在pad上测试的时候和预想的有区别     本来应该存储到SD卡中的文件结果跑到pad自带内存中去了...   然后我尝试过把路径直接自己手动写  还是一样存到了自带内存中  这到底是为什么啊? 顺带吐槽一下万恶的导师  十一还要我们加班 求大神们指导呀~   国庆节玩的开学哟!!! ============解决方案1======

判断是否有外置SD卡

private static String getDefaultPath(){    boolean isHaveExternalSD = false;    String DefaultPath = "/storage/sdcard0";    File externalSDCard = new File("/storage/sdcard1");    try {        IMountService ms = getMs();        isHaveEx