SPI方式的SD卡接口,到底支持多大的tf卡spi模式原理图

SD卡接口,最全面的SD卡接口文章 - 电子工程世界网
在电子工程世界为您找到如下关于“SD卡接口”的新闻
SD卡接口资料下载
1999年8月共同推出,并成立了SDA(SD Association,SD协会),共同来推广SD标准。 SD卡的数据传输和物理规范由MMC发展而来,其尺寸 和MMC相近,为24×32×2.1mm。对比MMC卡为 24mm×32mm×1.5mm,相比SD卡略厚,显然有更多的堆叠 空间。SD卡表面积和一张邮票差不多,重量只有约2g。SD卡具备串行和随机存取能力,可通过优化速度的串 行接口访问,数据传输...
NAND Flash接口电路
4.4.1 S3C2410A NAND Flash控制器
4.4.2 S3C2410A与NAND Flash存储器的接口电路
4.5 SDRAM接口电路
4.6 CF卡接口电路
4.6.1 PCMCIA接口规范
4.6.2 S3C2410A的CF卡接口电路
4.6.3 CF卡的读写操作
4.7 SD卡接口电路...
&SD卡I_O接口设计 SD 卡是近年来流行的大容量便携式存储卡, 存储介质绝大多数采用闪存。SDIO 卡是 SD 协会在 SD 存储卡基础上定义的 I/O 接口卡, 是对 SD 存储卡的扩展。在分析 SD 存 储卡和 I/O 卡标准的基础上, 着重讨论 SD 卡接口的特征与实现。...
了客户端驱动最大的弹性。客户端驱动接口允许客户端驱动去衡量一个单一的,同步的访问存储卡驱动使用一个线程,异步通信设备驱动。SD卡主控制端驱动SD卡主控制驱动是软件构成,控制主控制器硬件和遵循主控制器软件接口(和主线驱动通信并且设置操作参数)。主控制驱动使用API设置输出口,被总线驱动去注册和取消注册。注册包括提供信息关于host...
SD/MMC 卡是一种大容量(最大可达4GB)、性价比高、体积小、访问接口简单的存 储卡。SD/MMC 卡大量应用于数码相机、MP3 机、手机、大容量存储设备,作为这些便携 式设备的存储载体,它还具有低功耗、非易失性、保存数据无需消耗能量等特点。 SD 卡接口向下兼容MMC(MutliMediaCard 多媒体卡)卡,访问SD 卡的SPI 协议及 部分命令也适用于MMC 卡。 SD/MMC 卡...
需要选择带SD卡控制接口的 MCU 或者额外的 SD 卡控制单元; SPI模式通过 SPI 总线完成 SD 卡与主控制器的通信。AT89S52 没有集成 SD 卡控制器,为了不增加额外的 SD卡控制单元硬件成本,本设计方案采用 SD 卡的 SPI 通信模式。虽然 AT89S52 也没有集成 SPI 接口模块,但可以用软件的方式模拟 SPI接口时序。...
:保留 其中 class1, class3,class9:SPI 模式不支持51 单片机读写 SD 卡(概述,硬件连接) SD 卡全称为 Secrue Digital Memory Card,具有轻巧、可加密、传输速度高、适用于手持设备使用等优 点。 SD 需要高速读写,同时也要使手持等嵌入式设备能方便使用,特设有两个访问接口:SD 模式接口和 SPI 接口。 SD 引脚 1 2 3 4 5 6 7...
  【摘要】通过对基于AVR 的SD 卡数据导出接口设计的描述,在系统总体结构思路基础上,提出系统的硬   件构成,详细分析了软件各部分的功能及实现。本设计在数据存储和交换领域具有很好的应用前景。   【关键词】SD 卡嵌入式系统SPI FAT32 数据库   SD 卡存储介质是一种新的大容量、非易失性外部存储系   统,它的出现提供了一个便宜的、结实的、卡片式的存储媒介。   SD 卡的容量...
本SD卡高度集成闪存,具备串行和随机存取能力。可以通过专用优化速度的串行接口访问,数据传输可靠。接口允许几个卡垛叠,通过他们的外部连接。接口完全符合最新的消费者标准,叫做SD卡系统标准,由SD卡系统规范定义。...
T 卡T 卡原理,接口开发 及双T卡实现Amon AgendaT-Flash Overview SD Protocol SD 1.0 vs. SD 2.0 Double T-Flash software structure References and QAWhat is T-Flashz全称:Transflash ,一种体积非常小巧的...
SD卡接口相关帖子
256Mbits BPI Flash;q 板载18Mb SSRAM静态缓存单元;q 板载1KB EEPROM用于少量数据存储;q 板载1片SD CARD;q 具有8路SATA 3.0接口;q 具有2个SMB高速串行扩展接口;q 具有2个HSMC高速连接器,用于子卡的扩展;q 具有4个按钮、4个拨码开关、4个LED灯、8位DIP开关;q 具有2路千兆以太网口;q 具有2个独立的七段数码显示管;q 具有2路SFP...
CPU Samsung s3c MHZ 内存 DDRII SDRAM 256MB, Nand Flash: 2GB
1 X MIni-U
MIni USB 2.0 2 X USB USB Host 1.1 1 X RJ45 RJ45
RS232 (可支持到 2个) 1 X Audio 3.5mm Audio Input1 X SD SD 卡槽...
256Mbits BPI Flash;q 板载18Mb SSRAM静态缓存单元;q 板载1KB EEPROM用于少量数据存储;q 板载1片SD CARD;q 具有8路SATA 3.0接口;q 具有2个SMB高速串行扩展接口;q 具有2个HSMC高速连接器,用于子卡的扩展;q 具有4个按钮、4个拨码开关、4个LED灯、8位DIP开关;q 具有2路千兆以太网口;q 具有2个独立的七段数码显示管;q 具有2路SFP...
Samsung s3c MHZ 内存 DDRII SDRAM 256MB, Nand Flash: 2GB
1 X MIni-U
MIni USB 2.0 2 X USB USB Host 1.1 1 X RJ45 RJ45
RS2321 X SD SD 卡槽, 最大支持32G
输入电压 DC9~24V 消耗功率 ≤8W 工作温度 0...
对linux感兴趣的网友可以关注下,跟着一起学习!
[linux学习笔记]之一:ubuntu ch340调试备忘
[linux学习笔记]之二:Debian系统烧录全流程
最近迷上了Linux,入了一块板。电脑使用win7+ubuntu 双系统,可是调试的时候就麻烦了,ubuntu下写好sd卡镜像,调试的时候还要切换到win7,手上的usb转串口驱动芯片时CH340,于是就想看ubuntu下时候...
Input1 X SD SD 卡槽, 最大支持32G
音频输出 耳机孔, 扬声器
输入电压 DC9~24V 消耗功率 ≤8W 工作温度 0°C~50°C 输入电压 -10°C~60°C 单机尺寸 195L×118H×35D (mm)
更多详情&&call & && && &nbsp...
,时间超时等)仪器预留扩展接口,这几天在倒弄GPS,到时候把GPS加上去,解析GPS的时间和位置信息数据,实时的反馈到UI界面上。所有相关的硬件和软件都已准备好,坐等开发板的到来啦4. 评测分享计划12月3号-5号:板载资源的配置和分布介绍,以及调试部分和第三方设备资源。12月6号-15号:内置DEMO的运行演示,然后自拟一个例程(初步打算做一个基于USB接口的读卡器,我看开发板上有TF卡接口和...
资源以外,用户还可以通过小鸟K1配置的3个HDMI高清输入端口,3个USB接口和SD卡插口将本地的高清资源连接至设备播放。 小鸟K1支持全格式的各类片源播放,原声支持播放Dolby和DTS的多声道音频格式,而专业算法能够将普通2.0声道的声音模拟为5.1,使你即使播放普通的2声道高清片源,也能享受5.1的视听体验。
& && && &nbsp...
256Mbits BPI Flash;q 板载18Mb SSRAM静态缓存单元;q 板载1KB EEPROM用于少量数据存储;q 板载1片SD CARD;q 具有8路SATA 3.0接口;q 具有2个SMB高速串行扩展接口;q 具有2个HSMC高速连接器,用于子卡的扩展;q 具有4个按钮、4个拨码开关、4个LED灯、8位DIP开关;q 具有2路千兆以太网口;q 具有2个独立的七段数码显示管;q 具有2路...
本帖最后由
09:38 编辑
& & 要把程序烧写进外部的nor flash,有几种方法,一种是从SD卡把烧写文件搬到nor flash,或是在MDK里编写烧写算法,网上也有挺多教程的,我也是跟着做了一遍,没成功。还有一个就是用j-flash这个软件,但需要制作一个合适的.jflash文件。这里设置的是flash一些信息...
SD卡接口视频
SD卡接口创意
你可能感兴趣的标签
热门资源推荐5183人阅读
(1)74clock
(2)CMD00x01Idle
(3)CMD55+ACMD410x00Ready
(1)CMD17CMD180x00
(2)0xfe0xfc + 512Bytes + CRC 2Bytes
512BytesCMD16
(1)CMD24CMD250x00
(2)0xfe0xfc + 512Bytes + CRC2Bytes
(1)CMD32,跟一个参数来指定首个要擦出的扇区号(SD手册上说是块号)
(2)发送CMD33,,指定最后的扇区号
(3)发送CMD38,擦除指定区间的扇区
此3步顺序不能颠倒。
还要注意发送CMD命令时,后面要跟一个字节的CRC校验数据,总之要保证每次发送的数据包长度符合协议要求,命令、数据符合时序要求。
=======================================================================================================================
=======================================================================================================================
SD卡在现在的日常生活与工作中使用非常广泛,时下已经成为最为通用的数据存储卡。在诸如MP3、数码相机等设备上也都采用SD卡作为其存储设备。SD卡之所以得到如此广泛的使用,是因为它价格低廉、存储容量大、使用方便、通用性与安全性强等优点。既然它有着这么多优点,那么如果将它加入到单片机应用开发系统中来,将使系统变得更加出色。这就要求对SD卡的硬件与读写时序进行研究。对于SD卡的硬件结构,在官方的文档上有很详细的介绍,如SD卡内的存储器结构、存储单元组织方式等内容。要实现对它的读写,最核心的是它的时序,笔者在经过了实际的测试后,使用51单片机成功实现了对SD卡的扇区读写,并对其读写速度进行了评估。下面先来讲解SD卡的读写时序。
&&&&&&& SD卡SPI模式下与单片机的连接图:
&&& SD卡支持两种总线方式:SD方式与SPI方式。其中SD方式采用6线制,使用CLK、CMD、DAT0~DAT3进行数据通信。而SPI方式采用4线制,使用CS、CLK、DataIn、DataOut进行数据通信。SD方式时的数据传输速度与SPI方式要快,采用单片机对SD卡进行读写时一般都采用SPI模式。采用不同的初始化方式可以使SD卡工作于SD方式或SPI方式。这里只对其SPI方式进行介绍。
(2)&&&&&& SPI方式驱动SD卡的方法
&&&& SD卡的SPI通信接口使其可以通过SPI通道进行数据读写。从应用的角度来看,采用SPI接口的好处在于,很多单片机内部自带SPI控制器,不光给开发上带来方便,同时也见降低了开发成本。然而,它也有不好的地方,如失去了SD卡的性能优势,要解决这一问题,就要用SD方式,因为它提供更大的总线数据带宽。SPI接口的选用是在上电初始时向其写入第一个命令时进行的。以下介绍SD卡的驱动方法,只实现简单的扇区读写。
1)& 命令与数据传输
SD卡自身有完备的命令系统,以实现各项操作。&
&&&&&&&&& 写命令的例程:
//-----------------------------------------------------------------------------------------------
& 向SD卡中写入命令,并返回回应的第二个字节
//-----------------------------------------------------------------------------------------------
unsigned char Write_Command_SD(unsigned char *CMD)
&& unsigned char retry=0;
&& //禁止SD卡片选
&& SPI_CS=1;
&& //发送8个时钟信号
&& Write_Byte_SD(0xFF);
&& //使能SD卡片选
&& SPI_CS=0;
&& //向SD卡发送6字节命令
&& for (i=0;i&0x06;i++)
&&&&& Write_Byte_SD(*CMD++);
&& //获得16位的回应
&& Read_Byte_SD(); //read the first byte,ignore it.
&& {& //读取后8位
&&&&& tmp = Read_Byte_SD();
&&&&& retry++;
&& while((tmp==0xff)&&(retry&100));
&& return(tmp);
2)& 初始化
SD卡的初始化是非常重要的,只有进行了正确的初始化,才能进行后面的各项操作。在初始化过程中,SPI的时钟不能太快,否则会造初始化失败。在初始化成功后,应尽量提高SPI的速率。在刚开始要先发送至少74个时钟信号,这是必须的。在很多读者的实验中,很多是因为疏忽了这一点,而使初始化不成功。随后就是写入两个命令CMD0与CMD1,使SD卡进入SPI模式
&&&&&&&&&& 初始化例程:
//--------------------------------------------------------------------------
&&& 初始化SD卡到SPI模式
//--------------------------------------------------------------------------
unsigned char SD_Init()
&& unsigned char retry,
&& unsigned char CMD[] = {0x40,0x00,0x00,0x00,0x00,0x95};
&& SD_Port_Init(); //初始化驱动端口
&& Init_Flag=1; //将初始化标志置1
&& for (i=0;i&0x0f;i++)
&&&&& Write_Byte_SD(0xff); //发送至少74个时钟信号
&& //向SD卡发送CMD0
&& retry=0;
&& { //为了能够成功写入CMD0,在这里写200次
&&&& temp=Write_Command_SD(CMD);
&&&& retry++;
&&&& if(retry==200)
&&&& { //超过200次
&&&&&& return(INIT_CMD0_ERROR);//CMD0 Error!
&& while(temp!=1);& //回应01h,停止写入
&& //发送CMD1到SD卡
&& CMD[0] = 0x41; //CMD1
&& CMD[5] = 0xFF;
&& retry=0;
&& { //为了能成功写入CMD1,写100次
&&&& temp=Write_Command_SD(CMD);
&&&& retry++;
&&&& if(retry==100)
&&&& { //超过100次
&&&&&& return(INIT_CMD1_ERROR);//CMD1 Error!
&& while(temp!=0);//回应00h停止写入
&& Init_Flag=0; //初始化完毕,初始化标志清零
&& SPI_CS=1;& //片选无效
&& return(0); //初始化成功
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:232613次
积分:2980
积分:2980
排名:第8932名
原创:48篇
转载:67篇
评论:51条
(2)(3)(1)(1)(2)(1)(1)(1)(6)(10)(11)(4)(10)(4)(2)(15)(25)(6)(5)(2)(3)发布时间: &(来源:)
大家读写SD卡怎么不用SD模式方式读取,是SPI方式读取简单?
下面贴一段代码,是在FPGA上程序,只能用SD模式进行读,没有文件系统,没有用AVR硬件实现,
SD卡接口的完整规范 特性:
&&兼容&规范版本1.01&&&&& 卡上错误校正&&&&&& &支持CPRM 两个可选的通信协议:SD模式和SPI模式 可变时钟频率0-25MHz 通信...
原来SDC&它本身是MMC卡做成跟SD形同的脚位.晕了&白耽误1天. & 最后总结下:只要SD卡看仔细了,我用ATMEGA16&上16M晶振,在初始化SD卡时设成SPI&128分频完全...
LCD使用的是SHARP 8寸彩色液晶屏LQ080V3DG01,640*480 &&& GPIO:64针引出地址、数据、控制信号线,其余IO、中断、时钟、AD线,SD卡、SPI接口、IIC接口信号线 &...
北京电子科技职业学院实训基地建设&&嵌入式创新人才实训基地建设(改革试点)政府采购 招标文件招标编号:BIECC-ZB0333 第一册 &目录第一章 投标人须知 4 一说明41. 招...
显示输出接口 LCD接口、VGA接口、TVout接口、HDMI接口 视频输入接口 Camera接口 串口 2路5线串口、1路3线串口 SD卡接口 支持大容量SD卡SPI Flash 用于SPI实验 温度传感...
8.2.6、二线串口控制模式应用电路图 9 9、SD卡文件介绍 10 10、版本历史记录 10 1、产品特征 产品支持外挂最大1G容量的SD卡以及32MB以内的 SPI-Flash存储器; 支持播放...
SPI方式接口的FLASH储存器接口电路模块,SPI方式接口的SD卡电路,SPI方式接口的128*64点阵液晶接口电路,SPI方式接口2.4G无线通信模块接口电路,SPI方式接口的779 ...
图2 SPO=0和SPH=0时,Freescale SPI帧格式 硬件连接图 图3所示是microSD卡实验的部分硬件连接图,microSD卡通过SSI接口实现与微控制器的通信。然后我们将针对SD卡的...
全双工和半双工的通信速率可达18兆位/秒。3位的预分频器可 产生8种主模式频率,可配置成每帧8位或16位。硬件的CRC产生/校验支持基本的SD卡和MMC模式。 2个SPI接口都可...
spi驱动 KO 含wep wpa工具(最后处理)
10/100M 网卡 KO 标准驱动 SDHC Built-in 一个用于文件系统挂载(去掉SD0的GPIO引脚),一个用于外接SD卡(增加SD1的GPIO引脚...
PROTEUS与KEIL连接进行ARM的调试 PROTEUS与IAR的协同仿真 13种虚拟仪器介绍(SPI调试器、USB调试器) 实时操作系统 实训13:IO控制 实训14:SD卡仿真(SPI调试器的使...
FPGA工具培训服务 3.FPGA嵌入式硬核学习平台 3.1 规格参数: 3.1.1 Zynq-7000 EPP XC7Z020-CLG484-1 3.1.2 512 MB DDR3内存 3.1.3 256 Mb Quad-SPI闪存 3.1.4 4 GB SD卡...
带有ChipScope许可证的ISE& WebPACK&软件套件 核心板载资源包括: Zynq-7000 EPP XC7Z020-CLG484-1 512 MB DDR3内存 256 Mb Quad-SPI闪存 4 GB SD卡 板上USB-...
SD卡、IDE硬盘接口;CAN、SPI、485总线接口;按键、LED灯及外扩总线插槽接口。2该平台须支持如下功能:GPS卫星定位模块、GPRS无线通讯模块、RFID射频模块:可对短...
SD卡的超微型录像机,图像采集整机 , 网络摄像机 , 图像采集电路板,系统和接口软件等... 质量5g。 .输出数据接口RS232或者SPI数据总线输出。只有一个1元硬币大小!! FA302...
14、要求有SPI接口、IIS数字音频输入/输出接口和IIC存储器;15、要求可通过更换核心... SRAM,可升级为1Mb,* 16Mb配置存储器EPCS16,可升级为64Mb,*SD卡接口; (3)提供配...
1个以太网卡接口,利用RTL8019AS芯片进行数据包的收发 1个USB设备接口,利用PDIUSBD12芯片实现USB协议转换 SD卡接口,可以用来接SD卡或MMC卡 基于SPI或IIC接口的...
图形用户界面支持Qt4.0以上版本,设备驱动:串口,Ethernet,Audio,SD卡,IDE,CF卡,AD/DA,USB,红外,蓝牙,LCD,触摸屏,PS2 keyboard mouse, 键数字键盘,SPI,IIC,...
数据存储除了可以本地储存外还支持SD卡以及通过WIFI、3G或者GPRS等方式在线实时... S60、S70、CPU卡等 外置端口:&USB2.0、RS-232 内置端口:内置SPI I2C 串口 ...
7、SD卡槽一个,可做SPI总线控制。 8、24C02 一片,做IIC总线实验 9、1602 及12864接口 10、USB转传口头 ST-LINK仿真器 套4(STM8仿真器STM32仿真器)。支持IAR EWARM...
输出设备、SD卡、输入设备相连接,所述FPGA作为所述SD卡的硬件加速芯片分别与SD卡、缓存设备、以太网接口相连接。本实用新型采用FPGA和AVR双处理器架构,通过 SPI...
两路SPI接口,支持重力传感器模块; (16)支持3路USB_HOST 2.0输出,1路USB_OTG ... 1路RS485接口(复用); (19)100M以太网接口; (20)板载SD卡和TF卡接口; (21)支持6*6...
7. 1个SPI接口Flash芯片; 8. 具有 USB无线网卡接口,可将数据通过WIFI网络传送给网络... 8、具有SD接口:配备非弹出式SD卡座 9、具有WIFI接口:该接口可选; 10、具有至少8...
具有UART,SPI或RS-232接口 支持报警,WPS和出厂固件恢复按钮 外部SPI闪存 AC电源... DSP up to 800MHz DDR内存:512MB Flash闪存:512MB SD卡存储:4GB Ethernet: 10...
(BIOI):4位按钮;1位复位按钮;4位拨码开关;2个PS/2接口(鼠标、键盘);17键标准键盘;1个RS232串口 常用外设接口:SD卡接口(具有热插拔,SD模式和SPI模式);...
外扩IIC、SPI、PWM、AD/DA等接口; 支持8*8矩阵键盘接口; 5个Android专用键盘; 2个USB host2.0; 1个USB OTG 2.0接口; 2个SDIO接口(1个SD卡接口,1个SDIO WIFI接口...
SPI,MMU,FLASH等14. LCD的基本工作原理,并讲解如何通过S3C2410处理器来使用... ADC多通道 源码 21. STM32 DMA操作源代码 22. STM32 SD卡移植FATFS文件系统源码 ...
相关阅读: & & & & &
读了《sd卡 spi》的人还读了:
1、2、3、4、5、6、7、8、9、10、FatFS读写TF卡,正式产品有这么搞的么?我已经坏了2张卡了
本帖最后由
02:23 编辑
虽然网上很多用TF卡配合FATFS的例子,但是正式产品有人敢这么做的么?
我自己做了个板,用TF卡来保存数据,用了好几天读写一切都正常,后来开始挂了一张1G卡,没在意以为卡质量不行。
今天又挂了张8G卡,这2张卡都是以前手机用得好好的。
挂了的卡用读卡器都无法识别,
放手机中识别为坏卡,同样无法格式化
我现在想,这TF卡+FATFS是否只能玩玩学习而已,正式场合是靠不住的?
补充:找不到原因,所以改成SPI FLASH了
假卡吧扩容卡超写数据,100%死翘翘。
电路有问题 ?我做tf卡测试时 tf 放单片机跑一次 然后电脑就不识别了 我格式化一下就好了(电脑格式化)
wye11083 发表于
假卡吧扩容卡超写数据,100%死翘翘。
肯定是正货卡了,插手机1,2年都不会坏
vipqaz 发表于
电路有问题 ?我做tf卡测试时 tf 放单片机跑一次 然后电脑就不识别了 我格式化一下就好了(电脑格式化) ...
spi接口那么简单就几根线,想错都难
我也坏了几张卡。SD卡没事,TF卡读取好像也没事,一写就完了,一直没有搞明白什么原因
本帖最后由
20:32 编辑
shizt 发表于
我也坏了几张卡。SD卡没事,TF卡读取好像也没事,一写就完了,一直没有搞明白什么原因 ...
我调试好些天了,来回读写几十M都没问题。
但是莫名其妙就挂了。
其中一张1G卡,在电脑上识别为未格式化,还能分配个盘符,2KB容量。不过在单片机上有1/10的几率能识别,只要识别出来,读写(远超过电脑识别的2KB)没问题。
当然了,下次运气好如果再次识别,上次写的内容还是在的。
另一张新挂的8G卡,在电脑上没任何反应了
用WINHEX那招行不通,打开就是参数错误
对了,你的卡难道也是STM32 FATFS应用坏的?
<font color="#336016 发表于
肯定是正货卡了,插手机1,2年都不会坏
扩容卡,你插手机不写爆,它是不会坏的。
按理说不应该,磨损平衡应该是在TF里做的,外部都是一样的操作,包括文件系统,没有差异
电平有问题?使用了5v的供电或IO电平?
wye11083 发表于
扩容卡,你插手机不写爆,它是不会坏的。
这个点不用讨论了,我的卡没问题,不是什么假冒山寨扩容卡。
我现在关注的是FATFS跟TF卡之间的问题,而不是我卡本身是假卡,这是不可能的。
谈正题,别跑题。
zhujinliang2124 发表于
按理说不应该,磨损平衡应该是在TF里做的,外部都是一样的操作,包括文件系统,没有差异
电平有问题?使用 ...
怎么说都不应该,因为都用了好些天,测试时候几十M来回读写都没问题。
电平肯定跟STM32一样,都是3.3V,但是网上搜一下,FATFS写坏TF卡还是有一些例子的。
我现在涉及到存储文件,编辑文件,删除文件这些操作,不上文件系统实现起来太困难。
好在我同时预留了SPI FLASH,不过SPI FLASH无法使用FATFS,试了几天都不行。
程序分为驱动层,协议层,应用层
fatfs属于第二者
协议层指的是在确保主控与tf之间建立可靠连接后,遵循某种特定的协议,与tf交互并完成所需操作,比如读写格式化等~ 其指令均属于合理范围,不可能对硬件造成损坏!(甚至即便驱动层有问题都不会)
如果楼主能够确定tf卡已经出现硬件损坏(而不是文件系统),建议反复检查电路。从电源开始检查是个不错的选择~
另,楼主说spi flash无法使用fatfs,是错误的,我做过sdio+tf spi+tf spi+flash 都没问题!把diskio.c搞定了就行
我也搞坏了两张卡了,现在不敢玩了
& & 如果不是硬件上的问题,那肯定就是T卡质量的问题了,和用什么软件操作没有关系。T卡本来就提供逻辑上的读写操作,不管是FATFS还是windows下的操作,无非都是读读写写。一般随便写写是写不挂的!
& & T卡里面的管理算法其实很复杂,当然不同厂家的算法都会不一样。有的管理算法不好的情况下,随便挑一个地址,重复写个几千次就会挂掉。
只能说SD是最难驱动的设备...
SD驱动版本众多...修改版本众多...好使的确很少...
静下心来...根据SD卡协议...好好用一个比较高的版本认真修改...
FatFS不用怀疑...相当稳定的东西...
SD卡有一定程度的均衡磨损...但是并不强壮...
一个错误的循环写入数据...就是小一千次的擦写...
本帖最后由
22:41 编辑
zgxcom123 发表于
程序分为驱动层,协议层,应用层
fatfs属于第二者
其中一个1G的,电脑识别不了,但是我用STM32往卡的任意sector写入读写,然后可以正确读取回来,我甚至将一张好的SD卡的boot sector 512个字节复制写到这张坏的1G卡,电脑还是不识别。
这时我直接用SPI来操作TF卡是没问题,但是FATFS识别不出来这张坏卡,f_mount可以,其它操作都失败。
8G的STM32底层都无法读写了,应该是彻底坏掉的了。
如果说程序有问题,那也不应该之前那些天一直正常,唯一可能就是我调试期间经常上电断电,但都是在读写完毕后才干的。
SPI FLASH中用FATFS,我是暂时没调通(实现了U盘模式,接口函数应该没什么问题,但FATFS下没调通),好像比TF卡上实现起来难多了,用的RAM也多许多
zgxcom123 发表于
程序分为驱动层,协议层,应用层
fatfs属于第二者
搜索别人的帖子看过你的回复,有句话很对,很多时候问题就是一些细节造成的。
我重新调试SPI FLASH和FATFS,发现读取问题,但是写入失败,后来一查,写函数跟擦除函数有问题。
SPI FLASH操作代码网上找的,看起来很整齐规范,但是里面擦除是按字节地址,写是按sector,两者差了4096倍了。
我虚拟U盘时候发现这个问题,但是只是在U盘接口代码改了下,没将FLASH中统一起来,结果问题就来了
<font color="#336016 发表于
搜索别人的帖子看过你的回复,有句话很对,很多时候问题就是一些细节造成的。
我重新调试SPI FLASH和FAT ...
你所说的电脑不认,是指插上电脑看不见盘符,还是有盘符但提示未格式化(或需要修复文件系统)?
后者是因为你按照扇区写入,可能破坏了原有的文件系统。有fatfs后就不要按照sector来操作了,直接进行文件读写即可
如果是电脑压根没法识别,我还是之前的建议,检查硬件(热插拔什么的最忌讳)
spi flash的sector是4k而tf是512字节(费ram!),同时前者需要手动进行擦除操作。。。因此除非成本有限,否则并不推荐在spi flash上用文件系统
fatfs并不难,但是其中的很多细节确实麻烦!包括有时从网上找的代码,可能因为版本不同,地址偏移等就会完全不同
最好的历程还是官方demo,自个静下心来亲手过一遍,以后就会轻松很多
别频繁使用初始化卡指令,此指令频繁使用会导致卡挂掉。
zgxcom123 发表于
你所说的电脑不认,是指插上电脑看不见盘符,还是有盘符但提示未格式化(或需要修复文件系统)?
后者是因 ...
1G坏卡能认有盘符,但是点击提示格式化,查看是2KB,实际无法格式化。
在下位机FATFS有1/10几率能识别这卡,不过底层SPI操作随时可以进行。
8G坏卡盘符都没有了,底层SPI读写也无法进行。
没坏之前肯定用文件系统来操作,坏了后想试试卡到底好坏,才用SPI操作的。
我这不用文件系统很难搞,虽然容量要求低,但是每天新建一个文件,断断续续存储几百行数据,每个文件还要能在下位机打开,编辑,删除,如果直接操作FLASH,这些文件内容如何解析出来编辑修改都很难实现。
现在用8MB的FLASH,暂时使用一切正常
sheng1xu 发表于
别频繁使用初始化卡指令,此指令频繁使用会导致卡挂掉。
初始化指令CMD55+ACMD41
这些指令不频繁使用也不行,开机时候,不循环读个几百次根本没正确响应。
遇到同样问题,写坏了一张卡,坏卡放在电脑上读写速度只有几k,可能是读写错误吧!
<font color="#336016 发表于
初始化指令CMD55+ACMD41
可以很负责任的告诉你,频繁使用初始化指令,卡必死!
本帖最后由 kebaojun305 于
09:48 编辑
SPI flash&&有大容量& &&&1Gbit& &2Gbit&&4Gbit&&
本帖子中包含更多资源
才可以下载或查看,没有帐号?
sheng1xu 发表于
可以很负责任的告诉你,频繁使用初始化指令,卡必死!
这个我很认同,
问题就是像TF卡初始化时候不可能几次就有响应,这如何解决?
像手机,相机这些成熟产品,写坏卡的几率就小很多,而自己包括很多论坛网友,用底层操作TF卡,很多都读坏过卡
kebaojun305 发表于
SPI flash&&有大容量& &&&1Gbit& &2Gbit&&4Gbit&&
这公司产品质量如何不知道,但是肯定是一个奇葩公司。
典型的国产厂商风格,打开后想查询下芯片资料,没有。
想复制芯片名称去搜索下,网页禁止复制,还得手工敲那一串串名字
如此奇葩的网站,产品质量也肯定是有限公司
关注中,最近也在考虑使用TF卡加文件系统
airwolf09921 发表于
遇到同样问题,写坏了一张卡,坏卡放在电脑上读写速度只有几k,可能是读写错误吧! ...
内部物理损伤可能性最大
phil 发表于
关注中,最近也在考虑使用TF卡加文件系统
移植和使用都很简单,关键是可靠性和稳定性没个底。
花了时间精力肯定不想只能做来玩玩,而是想用在正式的项目上
<font color="#336016 发表于
这个我很认同,
问题就是像TF卡初始化时候不可能几次就有响应,这如何解决?
像手机,相机这些成熟产品, ...
加点延时?
TimCheng 发表于
加点延时?
这个没有验证过,手头上也没有好的卡了。
不过感觉就是这样循环读多了,以后读的次数可能要越来越多才会有响应。
像我的两张卡,开始在STM32上用的时候都要读100多,200多次才响应。
网上别人的例子是200次就算超时,可见卡不同,这也相差很远
关注一下。想知道楼主写TF卡的 频繁度 如何?多久写一次,一次写多少数据?
<font color="#336016 发表于
这公司产品质量如何不知道,但是肯定是一个奇葩公司。
典型的国产厂商风格,打开后想查询下芯片资料,没 ...
它公司的 flash 技术 还是比较有名的&&现在新出的GD32F系统的MCU就是它的& &108M&&flash 0等待。
<font color="#336016 发表于
这公司产品质量如何不知道,但是肯定是一个奇葩公司。
典型的国产厂商风格,打开后想查询下芯片资料,没 ...
再封装STM32F1就是他出的。
本帖最后由
10:31 编辑
mowin 发表于
关注一下。想知道楼主写TF卡的 频繁度 如何?多久写一次,一次写多少数据? ...
目前只是调试中,偶尔写一次,每次几十至400个字节。
卡从使用到报废,肯定不会超过500次,就算同一个地方来回擦写也不至于就坏。
正式使用,肯定凑够512写一次,延长寿命
本帖最后由
10:37 编辑
kebaojun305 发表于
它公司的 flash 技术 还是比较有名的&&现在新出的GD32F系统的MCU就是它的& &108M&&flash 0等待。 ...
查了下那公司地址,以前上班居然天天从它门前经过。
不过这种国内公司,要资料很难,很多都得求着它一样
-------------------
补充,居然也有公开文档,找到了
<font color="#999 发表于
再封装STM32F1就是他出的。
看来还是有技术的,只不过风格有些另类
OK。没做过写TF卡保存数据的应用,无法给有用的提示。以后遇到写TF卡得留个心眼。
楼主我也遇到这种情况& && & 插PC上能识别,但是点击打开就出现要插入磁盘& && && &然后我在stm32下调用格式化tf卡,然后再插入PC,这时候识别打开要你格式化,格式化后就可以正常使用了。。。& && & 楼主SPI FLASH是那个型号,用的多大的???& &&&TF卡还有个特点,不知道楼主测试过没,就是你循环写,会出现偶尔一次入的时间,比正常写入的时间长很多。。。。。&&
leijiayou 发表于
楼主我也遇到这种情况& && & 插PC上能识别,但是点击打开就出现要插入磁盘& && && &然后我在stm32下调用格 ...
常见8个脚能买到最大的容量应该就是这个了
关注一下!
tf卡的写入次数是有限制的,正品卡一般10万次左右,买到假的也就500次左右,你在写入数据的时候不要频繁往一个物理地址/扇区写数据,这样会使得卡寿命很短!
wzd5230 发表于
tf卡的写入次数是有限制的,正品卡一般10万次左右,买到假的也就500次左右,你在写入数据的时候不要频繁往 ...
再次说明,卡肯定不是假的,在亚马逊和京东分别买的,真假自己当然是鉴别过的,这个真假问题不用说了。
再说下去,得说我的操作系统是盗版,所以各种问题根源就是盗版系统编译成盗版HEX了。
而且通过文件系统写入,SD卡内部主控会做读写均衡处理的,不可能在同一个地方来回多次读写的。
& & MARK !
TF卡只是用于消费类产品,需要可靠性高还是SD卡
哎 悲剧啊 我最近也坏了一张2G的了,现在在用1张4G的服役
sheng1xu 发表于
别频繁使用初始化卡指令,此指令频繁使用会导致卡挂掉。
不知道你说的初始化指令,是指SD卡的指令还是SD—Init()& && &如果是SD_Init()&&这个的话,fatfs在每一次操作如f—read等都会调用一次这个& &&&不知道为啥要这样。。。。
而且关键是还找不到原因啊,我现在还在野火的板子上调的,晕
cc6868 发表于
而且关键是还找不到原因啊,我现在还在野火的板子上调的,晕 ...
你的卡是怎么坏的?也用文件系统?
wzd5230 发表于
tf卡的写入次数是有限制的,正品卡一般10万次左右,买到假的也就500次左右,你在写入数据的时候不要频繁往 ...
明显的说法有问题&&TF和SD 内部的控制器都自带均衡程序的。不可能在同一个地方频繁读的。
TF卡只是用于消费类产品,需要可靠性高还是SD卡
<font color="#336016 发表于
你的卡是怎么坏的?也用文件系统?
是啊 我是在野火的板子上调文件系统遭了的,刚开始 我还没发现,弄死读不到卡上的数据返回,后怀疑卡挂了,重换一张就行了,MD
cc6868 发表于
是啊 我是在野火的板子上调文件系统遭了的,刚开始 我还没发现,弄死读不到卡上的数据返回,后怀疑卡挂了 ...
我现在想,目前这种底层操作看起来没什么问题,也能读取出来,但是肯定有什么没考虑到的地方,才会导致那么快坏掉。
在手机上,很久也不会坏
<font color="#336016 发表于
<font color="#G坏卡能认有盘符,但是点击提示格式化,查看是2KB,实际无法格式化。
在下位机FATFS有1/10几率能识别这 ...
对tf的操作,有使用sdio吗?
如果有的话,不要用3.5配的驱动,一定换成3.4配的~ 其它不变。。。3.5配的sdio驱动有问题
说起来我第一次接触sdio的时候,也把一个卡折腾残废了(不过是质量一般的,专门用来做炮灰的卡)
现在代码调稳定了~ sandisk,三星,都是直接用,相当稳定!
金屎遁的假货太多,一直拿来当炮灰。。。。。。
<font color="#336016 发表于
我现在想,目前这种底层操作看起来没什么问题,也能读取出来,但是肯定有什么没考虑到的地方,才会导致那 ...
这个问题,难道用stm32&&tf卡做产品的都没遇到过???& &&&还有群主你用的是什么接口??& &spi还是 sdio??
leijiayou 发表于
这个问题,难道用stm32&&tf卡做产品的都没遇到过???& &&&还有群主你用的是什么接口??& &spi还是 sdi ...
SPI接口,我做板时候对TF卡就预感不太好,所以TF卡封装和SPI FLASH做一起,用TF卡和FLASH都可以
zgxcom123 发表于
对tf的操作,有使用sdio吗?
如果有的话,不要用3.5配的驱动,一定换成3.4配的~ 其它不变。。。3.5配的sd ...
3.5和3.4有啥区别吗& & 你说的是stm32f10x_SDIO.c& &这个用3.4的吗&&???& &&&还有我用sdio怎么有时候老是卡死啊& && &能给点建议吗
leijiayou 发表于
3.5和3.4有啥区别吗& & 你说的是stm32f10x_SDIO.c& &这个用3.4的吗&&???& &&&还有我用sdio怎么有时候 ...
&&* @file& & stm32_eval_sdio_sd.c
&&* @author&&MCD Application Team
&&* @version V4.3.0
&&* @date& & 10/15/2010
zgxcom123 发表于
* @file& & stm32_eval_sdio_sd.c
&&* @author&&MCD Application Team
&&* @version V4.3.0
明白了& & 我也用过这个& && &&&但是为啥有时候老是卡死在CmdResp1Error这个函数里面???& &&&能给予点建议吗& & 谢谢
额 过来看看
zgxcom123 发表于
对tf的操作,有使用sdio吗?
如果有的话,不要用3.5配的驱动,一定换成3.4配的~ 其它不变。。。3.5配的sd ...
我一直用3.5的sdio驱动啊,里面确实有些问题,改了就好。具体改哪里忘了,我的帖子中好像有。
我的产品就用的Fatfs,12楼说得对,这个跟fatfs没关系,问题在于你的SD卡读写驱动上,如果没有判断好SD卡的版本,极容易出问题,比如V1版本的是按字节寻址,而V2以上也就是SDHC是按扇区寻址,另外,在连续写入时V2以上版本的处理也有区别。
本帖最后由
18:15 编辑
dreampet 发表于
我的产品就用的Fatfs,12楼说得对,这个跟fatfs没关系,问题在于你的SD卡读写驱动上,如果没有判断好SD卡的 ...
我的卡坏之前是连续正常使用好几天的,V1 V2 SHDC卡几种都用过,读写当然是正常的,不然也不能正常使用几天后才坏
你的是SD卡还是TF卡?SDIO还是SPI方式?
<font color="#336016 发表于
我的卡坏之前是连续正常使用好几天的,V1 V2 SHDC卡几种都用过,读写当然是正常的,不然也不能正常使用几 ...
我是用SPI方式操作TF卡,你这个问题很有可能是地址空间映射出现问题,连续工作几天后写入了意料外的地址中导致出现问题,可以试试用你的程序往某个扇区写入特定的数据,然后在电脑上用WinHex读取这个扇区,看看数据是不是正确写到这个扇区里面。
dreampet 发表于
我是用SPI方式操作TF卡,你这个问题很有可能是地址空间映射出现问题,连续工作几天后写入了意料外的地址 ...
挂了后用读卡器都无法识别
我用着感觉没坏,只是赶紧速度很慢
spi读写~批量应用过~sdio没有~
leijiayou 发表于
不知道你说的初始化指令,是指SD卡的指令还是SD—Init()& && &如果是SD_Init()&&这个的话,fatfs在每 ...
你需要一个全局状态STA来保存状态
<font color="#336016 发表于
我的卡坏之前是连续正常使用好几天的,V1 V2 SHDC卡几种都用过,读写当然是正常的,不然也不能正常使用几 ...
好帖,必顶。
我的3个SPI设备,脚位无法错开,所以打算用4-bit SDIO来读TF卡。
看了lz的帖子,受教了!
建议使用一些厂家的官方驱动代码移植到你自己的系统里,举个例子,TI的M4官方评估板,官网也能下载到开发包,里面有完整的TF卡+FATFS的例子及其源代码。
之前貌似坛子里有位兄弟就因为机器要经常直接关机操作,费力很大劲改用1788+SDRAM+YAFFS系统而摒弃了FATFS?
我用atmel的arm做,没有楼主的问题,不过经常因为断电导致文件系统损坏
migrant 发表于
我用atmel的arm做,没有楼主的问题,不过经常因为断电导致文件系统损坏 ...
是正常断电也会导致文件系统损坏吧?
buxinshan 发表于
TF卡只是用于消费类产品,需要可靠性高还是SD卡
还有这种说法?为什么,结构原理上有什么差异么
我的项目上用过4G的TF卡,读的时候多,写的时候少。至今还可以吧。不要写的频次太多。
没人怀疑卡的电源是否稳定吗?估计大部分只用了个小去耦电容吧!来自: Android客户端
divineliu 发表于
没人怀疑卡的电源是否稳定吗?估计大部分只用了个小去耦电容吧!
电池供电,足够稳定
<font color="#336016 发表于
电池供电,足够稳定
卡的供电会有切换吧?切换时如何?
还有信号的上下拉电阻?
我觉得楼主可以有个简单的排除法,就是拿某一块带sd卡的开发板,把你的程序移植到这块板上跑,看看结果和自己的板是否一样,至少可以先明确是软件还是硬件问题
ldw 发表于
我觉得楼主可以有个简单的排除法,就是拿某一块带sd卡的开发板,把你的程序移植到这块板上跑,看看结果和自 ...
现在不是软件运行出错,而是TF卡不知道哪天突然就坏了,这是很难验证出来的,有时候十天八天的都说不清。
所以我现在换成SPI FLASH,容量要求不高,8M也足够了。
也用FLASH做fatfs文件系统吗
zgxcom123 发表于
* @file& & stm32_eval_sdio_sd.c
&&* @author&&MCD Application Team
&&* @version V4.3.0
用SD卡和W25Q16遇到了两个问题:
1.SD卡(大卡)用Fatfs 每次读取512个字节没有问题,但是读取大于512个字节的数据就会出现问题,而且出现的问题是周期性的,表现为刷图片的话周期性的条纹,通过串口打印数据也证明了这一点。我就纳闷,底层驱动有spi_read_multibyte函数啊,难道是这个函数出问题?目前是采取的将大于512字节的数据分成多次读取的方案,暂时解决问题。
2.W25Q16之前好使,但是有天突然读不出来数据,查资料确实是损坏了。但是,奇葩的是初始化读芯片ID的时候还是对的。。。搞得我找了好久了错误也找不到。。。
大神能不能分析一下?
miaoguoqiang 发表于
也用FLASH做fatfs文件系统吗
是啊,几M空间,不过够用了
<font color="#336016 发表于
是正常断电也会导致文件系统损坏吧?
在写入过程如果断电,很容易出现,如果没有写文件,则不会损坏。
用flash芯片做要考虑芯片的擦除寿命,特别是fat表区域,几乎每次写文件都会更新fat表的。
TF卡前面有大神说了不能多次初始化卡,可能有关吧。如果经常初始化失败,看看TF的版本处理是否正常,V2的TF卡的流程好像是不一样的
产品是读取的多,极少写入,还好未出现过问题
不知道你说的初始化指令,是指SD卡的指令还是SD—Init()& && &如果是SD_Init()&&这个的话,fatfs在每 ...
请用一个全局 状态保存这个卡初始状态 初始化以后就不需要每次再初始化了&&除非拔卡
请用一个全局 状态保存这个卡初始状态 初始化以后就不需要每次再初始化了&&除非拔卡 ...
注意到这个了
正准备要用TF+FATFs, 有点怕怕
正准备要用TF+FATFs, 有点怕怕
别怕啊,期待你解决了回帖分享下 。
好在我一直都是小容量用SPI FLASH,真需要大容量不得不上TF卡又得郁闷了。
楼主你把卡重新量产下试试
本帖最后由 lfgc 于
11:15 编辑
SPI FLASH怎么读出数据,导到计算机上?
SPI FLASH怎么说出数据,导到计算机上?
看你自己了,可以将SPI FLASH虚拟成一个U盘,或者写个上位机用特定协议跟下位机通讯传输也可以。
别怕啊,期待你解决了回帖分享下 。
好在我一直都是小容量用SPI FLASH,真需要大容量不得不上TF ...
我也准备在用了。有这个问题。感觉 不应该!
阿莫电子论坛, 原"中国电子开发网"

我要回帖

更多关于 cubemx spi1 tf卡 的文章

 

随机推荐