基于STM32F407格式化SD卡
这段时间老师布置了个小课题,如何提高SD卡读取速度。在做测试的过程中,将SD卡内存写满了,U盘插电脑上一直读不出SD卡的内容,倒腾了一下午都没有解决。最后通过调用FATFS文件系统的格式化函数,将SD卡进行初始化,总算是把数据给清除了f_mkfs函数的使用方法可以在http://www.elm-chan.org/fsw/ff/doc/mkfs.html上查看
FIL fil;
FRESULT res;
UINT bww;
char buf[100];int main(void)
{ u32 total,free;u8 t=0; u8 res=0; NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置系统中断优先级分组2delay_init(168); //初始化延时函数uart_init(115200); //初始化串口波特率为115200LED_Init(); //初始化LED usmart_dev.init(84); //初始化USMART
// LCD_Init(); //LCD初始化 KEY_Init(); //按键初始化 W25QXX_Init(); //初始化W25Q128my_mem_init(SRAMIN); //初始化内部内存池 my_mem_init(SRAMCCM); //初始化CCM内存池while(SD_Init())//检测坏絊D卡{// LCD_ShowString(30,150,200,16,16,"SD Card Error!");printf("SD Card Error!\r\n");delay_ms(500); // LCD_ShowString(30,150,200,16,16,"Please Check! ");printf("Please Check!\r\n");delay_ms(500);LED0=!LED0;//DS0闪烁}exfuns_init(); //为fatfs相关变量申请内存 f_mount(fs[0],"0:",1); //挂载SD卡 res=f_mount(fs[1],"1:",1); //挂载FLASH. if(res==0X0D)//FLASH磁盘,FAT文件系统错误,重新格式化FLASH{//LCD_ShowString(30,150,200,16,16,"Flash Disk Formatting..."); //格式化FLASHprintf("Flash Disk Formatting...\r\n");res=f_mkfs("1:",1,4096);//格式化FLASH,1,盘符;1,不需要引导区,8个扇区为1个簇if(res==0){f_setlabel((const TCHAR *)"1:ALIENTEK"); //设置Flash磁盘的名字为:ALIENTEK//LCD_ShowString(30,150,200,16,16,"Flash Disk Format Finish"); //格式化完成printf("Flash Disk Format Finish\r\n");}else {printf("Flash Disk Format Error\r\n");}delay_ms(1000);} printf("1");res = f_mkfs(0,0,4096); //格式化SD卡while(exf_getfree("0",&total,&free)) //得到SD卡的总容量和剩余容量{u8 res2;res2=exf_getfree("0",&total,&free);//LCD_ShowString(30,150,200,16,16,"SD Card Fatfs Error!");printf("SD Card Fatfs Error!,返回值: %d\r\n",res2);res = f_mkfs(0, 1, 4096);printf("SD Card Fatfs !,返回值: %d\r\n",res);delay_ms(200);// LCD_Fill(30,150,240,150+16,WHITE); //清除显示 printf("WHITE!\r\n");delay_ms(200);LED0=!LED0;//DS0闪烁} printf("FATFS OK!\r\n");}
只需要res = f_mkfs(0,0,4096); 这一句代码,就可以将SD卡格式化,当然基本的SD卡初始化和挂载SD卡还是需要的。如有需要代码的可以私信博主,免费提供
基于STM32F407格式化SD卡相关推荐
- 【STM32F407】第4章 ThreadX FileX文件系统移植到STM32F407(SD卡)
论坛原始地址(持续更新):http://www.armbbs.cn/forum.php?mod=viewthread&tid=100749 第4章 ThreadX FileX文件系统移植到 ...
- 新唐NUC980使用记录:U-Boot Linux 编译与烧录(基于SD1位置SD卡)
文章目录 目的 SD卡分区 U-Boot编译 U-Boot环境变量 Linux编译 默认设置 使用SD卡剩余分区 使用SD卡分区存放rootfs 制作系统镜像 总结 目的 这篇文章中将测试在 NUC9 ...
- Ubuntu18.04烧录U-Boot时格式化SD卡的文件类型(RAW 格式)
Ubuntu18.04烧录U-Boot时格式化SD卡的文件类型 前言 1.问题的提出 2.分析问题 3.用dd命令格式化SD卡 dd命令: 参数: 4.SD卡的烧录 5.再谈SD卡的分区 前言 本文只 ...
- html音频从10秒播放至30秒,基于Arduino制作SD卡音乐播放器
一.项目介绍 前面用ATtiny85制作SD卡音乐播放器,本次主要利用Arduino UNO 和SD卡制作音乐播放器.这个播放器不需要添加多余的模块,只需要SD读卡器和Arduino UNO开发板就可 ...
- linux命令sd卡分区及格式化sd卡
写一个命令如果sd卡已分区,就格式化sd卡,如果没有分区先分区再格式化,最后重启系统. if [ -e /dev/mmcblk0p1 ]; thenecho "partition /dev/ ...
- Windows下利用**SDFormatter**格式化SD卡
树莓派3-SD卡格式化-Windows下利用SDFormatter格式化SD卡 格式化前准备 下载SDFormatter软件 下载 一张Miscro SD卡 读卡器 电脑 格式化步骤 下载软件并安装 ...
- Android-vold源码分析之格式化SD卡(10)
作者:gzshun. 原创作品,转载请标明出处! 来源:http://blog.csdn.net/gzshun 本文开始讨论sd卡的格式化功能,平时使用windows操作系统,也经常格式化磁盘.涉及到 ...
- Mr.Alright---Google原生问题之格式化SD卡为内部存储后设置里内存显示会翻倍
发现了一个问题,就是当插入大小分别为128G.64G.32G.16G.8G.4G的SD卡,格式化SD卡作为内部存储后,在设置下128G的SD卡合并总容量显示256G.64G的SD卡显示128G,32G ...
- 相机内存卡格式化了怎么回复_如何为相机安全格式化SD卡
相机内存卡格式化了怎么回复 A corrupt SD card is a digital photographer's worst nightmare. All those amazing photo ...
- 格式化SD卡、修复烧写系统失败的SD卡
转载来自:https://blog.csdn.net/guancan7221/article/details/83112880 使用某些软件(比如 win32 Disk Imager)向SD卡烧写镜像 ...
最新文章
- tomcat自动重启脚本
- 蚂蚁上市分给员工 7000 亿股权,曾有人 28 岁财务自由,这次又将产生多少千万富翁?...
- mysql同时购买两种商品_SQL题1——查询所有购入商品为两种或两种以上的购物人记录...
- Pat乙级1089 狼人杀-简单版
- JAVA笔记18-容器之二增强的for循环(不重要)
- Business model innovation Consulting
- 神经网络(第五章补充)
- 海报设计素材模板|炫彩创意PSD分层时尚艺术海报 ​​​​
- windows 运行linux c++,Visual studio中使用C++的Linux 开发
- Vue之v-if, v-else, v-show, v-for, v-bind
- MessageBox.Show常用的2个方法
- 电工模拟接线软件 app_超全的电工接线方法口诀
- 转载:Xshell使用教程
- Win10微软帐户切换不回Administrator本地帐户的解决方法
- 发版名词介绍(alpha,beta,RC,Release)
- java报表是什么_什么是报表工具
- PHP 中如何正确统计中文字数
- 毕业一周年总结-不忘初心,砥砺前行
- stm32启用内部晶振(stm32设置外部晶振)
- 山西大同大学SVM数据处理系统使用说明书