SD card + Arduino IDE 如何提高SD card的读写速度

目录

一、前言

二、开发环境

三、实验原理与测试代码

(1)使用的是File.write()来写入数据,理论上会比File.print()要更快

(2)使用数据块来传输数据,也就是一次性写入尽可能多字节数的buffer

(3)尽可能提高SPI的始终频率,我的时钟频率达到了80MHz

(4)实际项目中我会使用多线程,把传感器的数据读取和SD卡的数据写入分开 

(5)完整测试代码

四、总结 


一、前言

        SD卡几乎出现在每一个需要用到电子产品的场合。可移动存储设备TF卡、SD卡、U盘、移动硬盘这些都是我们所熟知的设备,而本文的初衷是记录一下对于SD card写入速度的测试过程,由于在工作项目中遇到对数据存储速率要求高的情况,所以本文重点会集中于如何提高SD card的写入速度,希望对大家有所帮助。

二、开发环境

        硬件:ESP32S3 + SD card模块

        硬件连接:

ESP32S3 SD
5V VCC
GND GND
PIN10 CS
PIN11 MOSI
PIN12 SCLK
PIN13 MISO

        软件:Arduino IDE

        开发库:arduino-libraries/SD: SD Library for Arduino (github.com)

三、实验原理与测试代码

         由于我买的测试模块是SPI连接方式的,所以还未对SD_MMC模式进行过读写速度测试。我的重点在于测试SD的写入速度,用于记录传感器的数据,参考了一些资料,大概SPI的最快读写速度会比SD_MMC模式慢50%。

  测试代码设计与改动:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值