做数据记录装置时,最怕Arduino一断电数据全丢。给项目加一块Micro SD卡模块,就能把采到的温度、电量、时间这些数据落盘保存,回头还能用Excel打开分析。这篇文章把接线和写入CSV讲清楚。

先看清端口:SPI四线加一根片选
SD卡模块用的是SPI通信,引出的关键脚通常是:VCC供电、GND、SCK(时钟)、MOSI(主出从入)、MISO(主入从出)、CS(片选/使能)。跟Arduino Uno对接有固定的“标准口”可以记:SCK→13、MOSI→11、MISO→12、CS→10,这套是Uno最顺手的接法。
供电上模块板一般可以吃5V,板上会做好电平处理让5V系统和3.3V的SD卡兼容。但要注意:有些精简版只支持3.3V逻辑,接的时候看清丝印,别硬拉5V把卡口烧了。SD卡本身格式化成FAT16或FAT32,Arduino才能识别。
接线示范:一根CS别抢,四根SPI别乱
除了上面说的SCK/MOSI/MISO/CS标准口,另一个容易踩的坑是“多设备共用SPI”。如果你同时接了SD卡和别的SPI屏,很多用同一组SCK/MOSI/MISO脚,这时候一定要给每个设备分配不同的CS片选脚,同一时刻只选中一个,否则会互相抢总线、读写错乱。

写入CSV:初始化、开文件、写一行关一行
Arduino自带SD库,用起来三步:先叫出SD.begin(CS脚)做初始化——初始化失败九成是卡格式或接线问题;然后用文件对象把数据拼成一行字符串,比如“时间,温度,电压”这种逗号分隔格式;最后一行写数据文件的函数写进去。每写完一条就关文件,是防止掉电丢数据和文件损坏的保险做法。
把连续采集的数据不断追加进去,就成了标准的CSV文件。取下卡用读卡器接电脑,Excel直接能打开成表格,还能画曲线。这就是数据记录装置最朴素也最实用的落地方式。
能做点啥:环境日志到DIY记录仪
配一个温湿度或气压传感器,Arduino每隔几秒把读数和时间记到SD卡,就是一个小型环境记录仪。尤其适合需要离线长时间采样的场景:太阳能、气象站、养殖棚、温室,采样频率和文件轮换都可以自己定。
初始化失败、写不进,先查这三个地方
SD.begin返回失败是最常见的问题。先确认卡是FAT16/FAT32且容量别太大(大容量卡某些库不认);再查CS片选是不是写成了别的脚没接对;最后看供电,模块和卡一起动的瞬间电流不小,别用太弱的供电硬顶。写不进数据但能打开,大多是忘记“写完关文件”或者拼错文件名了。
Micro SD卡模块是把“临时数据”变成“永久记录”的存储配件。一套标准SPI口、一个CS片选、三行SD库代码,就能让装置把测量结果安安静静存成CSV,做记录仪的基础就从这儿搭起来。







多设备共用SPI一定要分开CS片选,不然总线打架
格式化成FAT32,Arduino才能认,卡格式是头号坑
做成环境记录仪太实用了,离线采样存CSV回来看曲线
写完记得关文件,掉电丢数据全是这儿出的问题