这段时间老师布置了个小课题,如何提高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卡相关推荐

  1. 【STM32F407】第4章 ThreadX FileX文件系统移植到STM32F407(SD卡)

    论坛原始地址(持续更新):http://www.armbbs.cn/forum.php?mod=viewthread&tid=100749 第4章   ThreadX FileX文件系统移植到 ...

  2. 新唐NUC980使用记录:U-Boot Linux 编译与烧录(基于SD1位置SD卡)

    文章目录 目的 SD卡分区 U-Boot编译 U-Boot环境变量 Linux编译 默认设置 使用SD卡剩余分区 使用SD卡分区存放rootfs 制作系统镜像 总结 目的 这篇文章中将测试在 NUC9 ...

  3. Ubuntu18.04烧录U-Boot时格式化SD卡的文件类型(RAW 格式)

    Ubuntu18.04烧录U-Boot时格式化SD卡的文件类型 前言 1.问题的提出 2.分析问题 3.用dd命令格式化SD卡 dd命令: 参数: 4.SD卡的烧录 5.再谈SD卡的分区 前言 本文只 ...

  4. html音频从10秒播放至30秒,基于Arduino制作SD卡音乐播放器

    一.项目介绍 前面用ATtiny85制作SD卡音乐播放器,本次主要利用Arduino UNO 和SD卡制作音乐播放器.这个播放器不需要添加多余的模块,只需要SD读卡器和Arduino UNO开发板就可 ...

  5. linux命令sd卡分区及格式化sd卡

    写一个命令如果sd卡已分区,就格式化sd卡,如果没有分区先分区再格式化,最后重启系统. if [ -e /dev/mmcblk0p1 ]; thenecho "partition /dev/ ...

  6. Windows下利用**SDFormatter**格式化SD卡

    树莓派3-SD卡格式化-Windows下利用SDFormatter格式化SD卡 格式化前准备 下载SDFormatter软件 下载 一张Miscro SD卡 读卡器 电脑 格式化步骤 下载软件并安装 ...

  7. Android-vold源码分析之格式化SD卡(10)

    作者:gzshun. 原创作品,转载请标明出处! 来源:http://blog.csdn.net/gzshun 本文开始讨论sd卡的格式化功能,平时使用windows操作系统,也经常格式化磁盘.涉及到 ...

  8. Mr.Alright---Google原生问题之格式化SD卡为内部存储后设置里内存显示会翻倍

    发现了一个问题,就是当插入大小分别为128G.64G.32G.16G.8G.4G的SD卡,格式化SD卡作为内部存储后,在设置下128G的SD卡合并总容量显示256G.64G的SD卡显示128G,32G ...

  9. 相机内存卡格式化了怎么回复_如何为相机安全格式化SD卡

    相机内存卡格式化了怎么回复 A corrupt SD card is a digital photographer's worst nightmare. All those amazing photo ...

  10. 格式化SD卡、修复烧写系统失败的SD卡

    转载来自:https://blog.csdn.net/guancan7221/article/details/83112880 使用某些软件(比如 win32 Disk Imager)向SD卡烧写镜像 ...

最新文章

  1. tomcat自动重启脚本
  2. 蚂蚁上市分给员工 7000 亿股权,曾有人 28 岁财务自由,这次又将产生多少千万富翁?...
  3. mysql同时购买两种商品_SQL题1——查询所有购入商品为两种或两种以上的购物人记录...
  4. Pat乙级1089 狼人杀-简单版
  5. JAVA笔记18-容器之二增强的for循环(不重要)
  6. Business model innovation Consulting
  7. 神经网络(第五章补充)
  8. 海报设计素材模板|炫彩创意PSD分层时尚艺术海报 ​​​​
  9. windows 运行linux c++,Visual studio中使用C++的Linux 开发
  10. Vue之v-if, v-else, v-show, v-for, v-bind
  11. MessageBox.Show常用的2个方法
  12. 电工模拟接线软件 app_超全的电工接线方法口诀
  13. 转载:Xshell使用教程
  14. Win10微软帐户切换不回Administrator本地帐户的解决方法
  15. 发版名词介绍(alpha,beta,RC,Release)
  16. java报表是什么_什么是报表工具
  17. PHP 中如何正确统计中文字数
  18. 毕业一周年总结-不忘初心,砥砺前行
  19. stm32启用内部晶振(stm32设置外部晶振)
  20. 山西大同大学SVM数据处理系统使用说明书

热门文章

  1. undertale人物_传说之下人物介绍
  2. 单芯片快速以太网MAC控制器DM9000介绍续
  3. HDOJ 5296 Annoying problem
  4. ESN学习笔记——echotorch(2)narma10
  5. VMware 安装安卓虚拟机 一步一步的手把手教学
  6. 在VMware上安装Android虚拟机
  7. 学习编程需要什么英语基础?
  8. 【Python】半次元COS图爬取
  9. 求三个字符串的最长公共子序列LCS(A,B,C)
  10. DMSP/OLS夜间灯光遥感影像数据概述