最近学习一了下SD卡的驱动,网上程序的版本很多,使用的MCU和SD卡的型号千奇百怪,学起来反而没有方向,感觉上乱七八糟的,直到现在才知到我们平常说的SD卡实际上有很多中类别。0到2G的SD卡,最普通的卡;2G到32G的SDHC卡,也就是现在最常用的大容量SD卡;还有我没有见过的SDXC卡,容量好像在32G以上。同时还有手机上的TF卡,实际上也是SD卡 只不过做工不同而已,MMC卡。学习的时候走了很多弯路,SD卡的官方data sheet感觉上写的相当坑爹,网上的学习资料还是给了很大的帮助,但是由于网上的版本很多,程序流程还是要参考官方相对应的SD卡初始化流程。这两天闲下来,抓紧时间整理一下笔记。
1、 简介: SD卡(Secure Digital Memory Card)是一种为满足安全性、容量、性能和使用环境等各方面的需求而设计的一种新型存储器件,SD卡允许在两种模式下工作,即SD模
如果你想摆脱缓存目录使用的尴尬:找不到目录?忘记申请读写权限?害怕污染用户存储空间?……请往下看
SD:Security Digital Memory Card,新一代多媒体储存卡,高速,安全(但安全机制貌似很少用到) MMC:Multimedia Card,SD卡的上一代多媒体储存卡,已基本被SD卡代替 eMMC:Embedded Multimedia Card,内嵌式存储器,一般焊在PCB上。内置主控制器,以实现统一MMC接口(在传统MMC接口上拓展,集成了整套理论),Nand Flash就是eMMC SDIO:Secure Digital Input and Output Card,SD标准上定义了一种外设接口,有很多设备模块采用。如Wifi,GPS,Bluetooth
大家好,又见面了,我是你们的朋友全栈君。二、MMC/SD卡的模型和工作原理 PIN脚、SD卡总线、SD卡结构、SD卡寄存器、上电过程 SD卡寄存器:
SD卡的读写是我们在开发Android 应用程序过程中最常见的操作。下面介绍SD卡的读写操作方式:
零、前言 [1]读写SD卡需要运行时权限。 [2]如果对运行时权限不清楚的童鞋,可以看一下我的封装:TI--安卓运行时权限完美封装 一、使用:SD卡文件读写 FileHelper fileHelper = FileHelper.get(); //在SD卡追加模式创建:data/writeFile2SD.txt文件,写入"toly" fileHelper.writeFile2SD("data/writeFile2SD.txt", "toly", true); //在SD卡上创建一个空文件 fileHe
做毕业设计需要用到大量的音频文件,一般的存储器满足不了存储要求,故选择SD卡作为存储器件。在这里记录一下自己的学习经历,学习一个新的IC,无非是要么根据时序图写出Read和Write函数,要么是根据通信总线和IC相关操作指令去完成Read和Write函数。只有能与对应IC“说话”,我们才能去开发它更多地可能性。这里以原子探索者为例,为大家介绍一下SD卡相关知识。
创世半导体(CS)是全球首家推出SD NAND FLASH产品的厂商,SD NAND的出现大大降低了使用 NAND FLASH 的技术难度。
一、Context提供两个方法: FileInputStream openFileInput(String name):打开应用数据文件夹下的name作为输入流 FileOutputStream openFileOutput(String name,int mode):打开对应文件的输出流 mode的参数如下 MODE_PRIVATE:该文件只能被当前程序读写 MODE_APPEND:追加打开的文件 MODE_WORLD_READABLE:文件的内容可以被其他应用程序读取 MODE_WORLD_WRITEA
MMC:MMC就是MultiMediaCard的缩写,即多媒体卡。它是一种非易失性存储器件,体积小巧(24mm*32mm*1.4mm),容量大,耗电量低,传输速度快,广泛应用于消费类电子产品中。
AndroidManifest.xml中manifest标签下有一个属性android:installLocation,用于指定应用程序安装在什么地方,该属性有三个可选值:
https://blog.csdn.net/yuzhiboyi/article/details/8645730
2.读写SD卡时,需要给APP添加读写外部存储设备权限,修改AndroidManifest.xml,添加:
之前曾搞过一个树莓派,今天重新利用起来。树莓派默认从sd卡启动,系统盘也是sd卡。但是sd卡质量较差,经过长时间读写后,往往会产生损坏,所以这一次准备从U盘启动。
因为在android版本5.0以上才把SD卡的读写权限分离开,以前的老版本是没有进行分离的。故找不到SD卡的读写权限,而在测试的过程中,华为的手机出现SD卡读写权限分离在两个地方,有的时候可能不好找,本人就出现这个问题。
SD卡(Secure Digital Memory Card)中文翻译为安全数码卡,是一种基于半导体快闪记忆器的新一代记忆设备。SD卡由日本松下、东芝及美国
这段时间,往树莓派装了几个Docker镜像之后,16GB的SD卡明显不够用了,于是我打算扩容一下,为了避免从零开始重做系统,我找到了完美克隆16GB的SD卡 按文件系统结构原样复制到 64GB卡的方法。以下是具体步骤~
5.7 SPI模式下: 获取SD卡的总扇区数(GetSDCardSectorCount)
应用内部存储空间(数据文件私有)文件存储到这个路径下,不需要申请权限,当应用被卸载的时候,目录下的文件会被删除。 需要注意的是,这个文件的目录和应用的存储位置有关, 当应用被移动到外部存储设备的时候,文件的绝对路径也是变化的,所以建议当数据存储到这个目录的时候,用相对路径。 这个目录和getFilesDir()目录最大的不同在于:当安卓设备的存储空间少,或者不够用的时候,系统会自动删除这个目录下的文件。 官方建议是,超过1MB的文件,建议存储到getExternalCacheDir()目录下
上一篇我们已经在QSPI FLASH上支持了fatfs文件系统:这次我们继续在该代码上支持SD卡文件系统,ST官方在维护CubeMX上对多个硬件驱动的fatfs兼容性做得非常好,所以还是用STM32CubeMX来配置就可以了:
SDIO-Wifi模块是基于SDIO接口的符合WiFi无线网络标准的嵌入式模块,内置无线网络协议IEEE802.11协议栈以及TCP/IP协议栈,能够实现用户主平台数据通过SDIO口到无线网络之间的转换。SDIO具有传输数据快,兼容SD、MMC接口等特点。
SD卡除了SD-Micro卡之外,还有两种分别是SD和mini-SD,他们分别长这样:
几年以前,我被派去厦门上门去分析一个用户的手机卡顿问题,该用户的手机经常莫名无响应,刷机,恢复出厂都没有用,经过一通分析,原来该用户从熟人店里买到了一张盗版的SD卡(这年头坑的就是朋友),该SD卡读写速度很慢,顺序读写只有20MB/s。那为什么SD卡的读写性能对手机性能影响那么大?当时我的知识水平,只能从对比测试中发现这个问题,然后更换SD卡解决了这个问题,但是无法从原理上解释这种现象。经过那么多年的学习积累,我现在终于可以解释这个问题。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
/****************2016年5月4日 更新*****************************/
SDMMC接口的全称叫SD/SDIO MMC card host interface,SD/SDIO MMC 卡 主机接口,通俗的来说,就是这个接口支持SD卡,支持SDIO设备,支持MMC卡。
本文主要为嵌入式入门开发者的接口、网口等板卡基础快速测试,当初级学习的开发者拿到板卡,如何在最快时间内测试板卡正常?继续测试教程(1)的系统启动、文件传送、LED等测试部分,接下来是测试板卡的按键、时钟设置、DDR读写、Micro SD接口读写、eMMC读写测试等基础性能、功能是否正常。
在内部文件的读取 **内部存储(internal storeage) ram:运行时期的内存 (相当于电脑的内存) rom;存储的内存 (相当于电脑的硬盘) **外部存储(external storeage) SD卡:相当于电脑的移动硬盘 * 2.2之前,sd卡路径:sdcard * 4.3之前,sd卡路径:mnt/sdcard * 4.3开始,sd卡路径:storage/sdcard * 所有存储设备,都会被划分成若干个区块,每个区块有固定的大小
File类是java中的文件操作工具类,它的常用方法如下: File构造函数 : 根据文件路径构造File对象 delete : 删除文件 exists : 判断文件是否存在 getName : 获取文件的文件名 getPath : 获取文件的目录路径 getParent : 获取上级目录路径 isDirectory : 判断是否为目录/文件夹 isFile : 判断是否为文件 length : 获取该文件的大小 list : 列出该目录下的所有文件(夹),返回String数组 listFiles : 列出该目录下的所有文件(夹),返回File数组 mkdirs : 创建目录/文件夹 renameTo : 重命名文件,其实就是移动文件到指定目录 获取文件大小有两种方式,一种是使用File类的length方法,另一种是使用FileInputStream类的available方法。下面是两种方式的示例代码: 1、length方式
小编吐槽 恶意应用和android手机的续航能力一样是令android用户格外头疼的一个问题(至少我就这么觉得 – -!),Facebook把它使用的用于数据加密的API开源了,的确是一件不错的事情。 正文 现如今很多的智能手机,都支持把应用安装到SD卡中,这会帮用户节省很多空间,但是许多黑客也会利用这一点窃取用户的隐私。一般情况下,应用都有SD卡的读写权限,当然他也可以读取到其他应用,存储在SD卡上的数据。这意味着如果你安装了恶意的应用,他就可以轻易的获取SD卡上的所有数据。 当然,为了
安卓23.0版本以上,不仅仅要设置上面的权限,还要在对SD卡有读写操作的地方授权,下面是公共类:
最近比较忙,也一直没空发什么文章,这算是新年第一篇吧,正好最近收到了一个雷龙的flash芯片,先拿来玩一下吧。
依然提示我没有权限,于是百度说是版本问题,23.0版本(笔者的版本是25.0)以上的不仅仅要设置上面的权限,还要在对SD卡有读写操作的地方授权,下面是公共类:
我买的套装是最简版的,只有一个电源线、一个塑料外壳,一个8G SD卡,几个散热片。捣鼓了几天,网上搜索了一些资料,在此记录下详细的过程,方便之后入手的朋友。
4.8 ThreadX FlieX移植接口文件fx_stm32_sdio_driver.c说明
块是一种具有一定结构的随机存取设备,对这种设备的读写是按块进行的,他使用缓冲区来存放暂时的数据,待条件成熟后,从缓存一次性写入设备或者从设备一次性读到缓冲区。 块设备是与字符设备并列的概念, 这两类设备在 Linux 中驱动的结构有较大差异,总体而言, 块设备驱动比字符设备驱动要复杂得多,在 I/O 操作上表现出极大的不同,缓冲、 I/O 调度、请求队列等都是与块设备驱动相关的概念。
完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第88章 STM32H7的SDMMC总线应用之SD卡移植F
WRITE_EXTERNAL_STORAGE只为设备上的主要外部存储授予写权限,应用程序无法将数据写入二级外部存储设备,除非综合权限指定了应用程序的包目录。这目前只影响双存储设备,如果你的设备有内部存储空间,即通常所说的机身存储,那么你的SD卡就是一个二级外部存储设备。
共同点:SD TF MMC都是在MMC基础上演化发展不同的规范,比如物理尺寸,封装,电压,管脚,位宽,时钟信号等不同,但都使用相同的总线规范。
从源码上线到今天差不多半年了,一直在单独的研究各个中间件,年底了发布个全套,方便想用的人直接一步到位。 ThreadX内核,FileX,NetXDUO,USBX,GUIX悉数到场,含MDK AC5,MDK AC6,IAR和GCC四个版本。 史上最强安全认证综合模板,稳如泰山。
论坛原始地址(持续更新):http://www.armbbs.cn/forum.php?mod=viewthread&tid=100749 第4章 ThreadX FileX文件系统移植到STM3
SDIO,全称: Secure Digital Input and Output ,即安全数字输入输出接口。它是在SD卡接口的基础上发展而来,它可以兼容之前的SD卡,并可以连接SDIO接口设备,比如:蓝牙、WIFI、照相机等。 SDIO和SD卡规范间的一个重要区别是增加了低速标准。低速卡的目标应用是以最小的硬件开支支持低速I/ O能力。低速卡支持类似调制解调器、条码扫描仪和GPS接收器等应用。 STM32的SDIO控制器支持多媒体卡(MMC卡)、SD存储卡、SD I/O卡和CE-ATA设备。 特点
在STM32项目开发中,经常会用到存储芯片存储数据。 比如:关机时保存机器运行过程中的状态数据,上电再从存储芯片里读取数据恢复;在存储芯片里也会存放很多资源文件。比如,开机音乐,界面上的菜单图标,字库文件,方便设备开机加载。
还记得我刚工作半年时候,因为公司的架构调整,我从应用组换到了Framework组,当时我的领导让我看一下Binder,当时也是一脸闷逼,各种百度,各种买书来看,但是总是迷迷糊糊,由于对JNI和C语言的欠缺,一直没有真正的搞明白,工作两年之后才算整理上理解,接下来给各位讲讲我的理解。
如上图的100ask6ull开发板,⑦为USB口,U盘从这里插入;⑱为mico sd卡槽,micro sd卡可以直接从这里插入。
在我们每天使用的手机设备中,无时无刻都在进行着数据的存和取。安卓作为一种手机操作系统,提供了如下方式的数据存取方式:Preference,File,Sqlite和网络,可以根据程序的实际需求选择合适的存取方式。
上节学习了如何在手机内部存储中读写文件,本节学习如何在手机的外部存储中读写文件。那就是如何在Sdcard中读写文件。
输入帐号密码,并勾选记住帐号 ,点击登录时,保存帐号信息。下次登陆可以直接显示上次保存的QQ帐号。
领取专属 10元无门槛券
手把手带您无忧上云