在做SD_Test.ino测试的时候,发现其testFileIO测试进程非常慢。
仔细分析,有几个因素会影响读写性能。

  1. SPI接口速度
    将SPI时钟速度调到16M
 //if (!SD.begin())if (!SD.begin(SS, SPI, 16000000)){Serial.println("Card Mount Failed");return;}
DSTATUS ff_sd_initialize(uint8_t pdrv)
{char token;unsigned int resp;unsigned int start;ardu_sdcard_t * card = s_cards[pdrv];if (!(card->status & STA_NOINIT)) {return card->status;}AcquireSPI card_locked(card, 16000000);....
  1. 每次读写的字节数
  2. 调整读写异常时的延时函数
char sdCommand(uint8_t pdrv, char cmd, unsigned int arg, unsigned int* resp)
{...// Serial.printf("%s.%d : %u. token = %d\n","sd_diskio",__LINE__,millis(),token);if (token == 0xFF) {log_w("no token received");sdDeselectCard(pdrv);sdDeselectCard(pdrv);// 变更此处的延时处理// delay(1);sdSelectCard(pdrv);sdSelectCard(pdrv);continue;} else if (token & 0x08) {log_w("crc error");sdDeselectCard(pdrv);sdDeselectCard(pdrv);// 变更此处的延时处理// delay(1);sdSelectCard(pdrv);sdSelectCard(pdrv);continue;} else if (token > 1) {log_w("token error [%u] 0x%x", cmd, token);break;}
...
}

优化效果:

Opened file for writing
1048576 bytes written for 7009 ms
Opened file for reading
file size : 1048576
1048576 bytes read for 2531 ms

ESP32 TF卡读写性能优化相关推荐

  1. RK3568-IOT核心板不同规格品牌TF卡读写速率测试

    1. 测试对象 HD-RK3568-IOT 底板基于HD-RK3568-CORE工业级核心板设计(双网口.双CAN. 5路串口),接口丰富,适用于工业现场应用需求,亦方便用户评估核心板及CPU的性能. ...

  2. ViewPager -- Fragment 切换卡顿 性能优化

    当ViewPager切换到当前的Fragment时,Fragment会加载布局并显示内容,如果用户这时快速切换ViewPager,即 Fragment需要加载UI内容,而又频繁地切换Fragment, ...

  3. android 读写cpu卡,RAM/CPU和SD卡读写性能提升_联想 K860i_手机Android频道-中关村在线...

    RAM\CPU和SD卡读写性能提升 AnTuTu(超级兔子) 超级兔子系统评测AnTuTu Benchmark是一个专门给Android系统的手机.平板电脑硬件跑分的软件,它能一键运行完整测试项目,通 ...

  4. Arduino ESP32 SD卡读写实例

    Arduino ESP32 SD卡读写实例 Arduino官方文档参考:https://www.arduino.cc/en/Reference/SD SD卡硬件连接方式 ESP32有两种使用SD卡的方 ...

  5. Keil MDK STM32系列(九) 基于HAL和FatFs的FAT格式SD卡TF卡读写

    Keil MDK STM32系列 Keil MDK STM32系列(一) 基于标准外设库SPL的STM32F103开发 Keil MDK STM32系列(二) 基于标准外设库SPL的STM32F401 ...

  6. 树莓派Zero 2 W平台不同等级TF卡的性能对比

    关键词:树莓派  Zero 2 W 二代  TF卡  启动速度  读写性能 概述:树莓派Zero 2 W和一代Zero W第一感觉的差异就是启动速度大大提升了,原本Zero W需要1分49秒,同样的扩 ...

  7. CSS3 动画卡顿性能优化解决方案--摘抄

    最近在开发小程序,与vue类似,它们都有生命周期这回事. onLoad 监听页面加载 onReady 监听页面初次渲染完成 onShow 监听页面显示 到底是什么意思? 所以这又触碰到了我的知识盲区, ...

  8. 安全智能TF卡读写稳定性测试

    前段时间公司中标了一个项目,这几天要给客户发货,需要对这批货进行抽检(代工厂那边发过来的成品),研发Boss找到我让我安排测试,我跟他建议说让生产人员来测,他不愿意...60张16G(class4)存 ...

  9. Android性能优化 - 消除卡顿

    性能优化系列阅读 Android性能优化 性能优化 - 消除卡顿 性能优化 - 内存优化 性能分析工具 - TraceView Android性能分析工具 消除卡顿 什么是卡顿及卡顿的衡量标准 产生卡 ...

最新文章

  1. 关于在phpStudy环境下,windows cmd中 php不是内部命令问题
  2. Flutter开发之ListView添加HeaderView和FooterView-2(39)
  3. boost::mp11::mp_replace_if_q相关用法的测试程序
  4. canny边缘检测算法 opencv_OpenCV-Python Canny边缘检测 | 十九
  5. 7年老Android一次操蛋的面试经历,系列教学
  6. Android自动化打包工具,利用Jenkins实现Android自动化打包
  7. windows 安装tensorflow
  8. 如何构建React-Native图库教程
  9. agilent3070软件安装
  10. 2021回顾 | AI 领域十大研究趋势及必读论文
  11. 在互联网寒冬季节,他竟然是这样进了百度!值得学习 -- 来自最前沿的实战经验!...
  12. 华为服务器扩容内存进不去系统,服务器换内存系统出问题吗
  13. jquery多字段筛选,极简方法
  14. 疫情在家办公,向日葵突然卡死,无法远程电脑的解决办法(局域网远程强制重启windows)
  15. jupyter notebook修改黑色背景和字体大小
  16. Internet Explorer 7+ ,微软的vista IE 浏览器
  17. lisp语言与python_5种语言混合编程:C 、JS、python、Lisp、汇编
  18. 高考,高中毕业之后,这人世间,又多了一只闲云野鹤
  19. 多啦a梦的python代码_分享一篇文本文档画哆啦A梦代码!
  20. linux配置https不安全链接,配置HTTPS证书后,浏览器出现不安全提示的解决方法

热门文章

  1. 一个机器能装两个mysql吗_一个机器安装多个mysql
  2. 取部门工资前三高的所有员工 -- sql 面试(三)
  3. 蓝牙整体框架学习整理
  4. opencv Stitcher多图拼接
  5. GEE:城市热岛效应分析
  6. 基于微信教室图书馆座位预约小程序毕业设计毕设作品(2)小程序功能
  7. HoloLens2 初入——从Lut表中求解相机内参
  8. java 16进制转成字符串_java 16进制转成字符串
  9. 【自动控制原理_B站网课笔记】第一章自动控制的一般概念part2
  10. 音频文件转文本 web-API