简介
Fermion: 串口数据记录器相比MicroSD卡 读卡器模块存储数据可以更方便的存储数据,不需要额外的代码,使用串口打印的方式就可以轻松的记录数据。
Fermion: 串口数据记录器最大支持32GB TF卡,适合长时间的存储数据。自带USB功能,连接电脑即可读取存储的文件,不用再寻找读卡器。通过指示灯可以更方便的观察数据写入情况,通过保存引脚,可以更简单的分文件存储数据。
注意:由于市面上的SD卡质量参差不齐,不能保证兼容所有SD卡,建议购买以下链接中的SD卡
闪迪16G SD卡
闪迪32G SD卡
V2.0版本对比V1.0版本升级
- 支持TXT、CSV文件格式存储
- 启动时间、运行稳定性大幅度提高
- 支持定时新建文件存储,存储更灵活
- 增加USB口,读取文件更方便
首次使用
- 对SD卡进行格式化
- 按下"Win+R"按键,然后输入“diskpart”进入命令符界面
- 输入“list disk”显示存储列表
- 输入“select disk X”(X为SD卡的磁盘编号)选中磁盘
- 输入“clean”清除磁盘分区信息
- 输入“convert mbr”将磁盘转换为MBR格式
- 输入“create partition primary”创建分区
- 输入“select partition 1”选择创建的分区
- 输入“format fs=fat32 quick”将磁盘快速格式化为FAT32
- 通过UART接口的电源给模块上电2S以上,使模块自动生成CONFIG.TXT文件。
- 检查CONFIG.TXT文件是否正常的生成,可通过修改CONFIG.TXT修改模块的参数。如果没有正常生成,请看常见问题。
4.将模块连接到主控串口即可正常存储数据。
配置文件参数
Baud: 串口通讯波特率选择(00对应2400波特率,01对应4800波特率),模块波特率与主控串口打印波特率匹配才能正常存储数据。
FIleNum: 下一次新建文件的文件序号(FileNum=0099,下一个生成的文件名为FILE0099.txt),文件序号自动累加,如果文件已经存在,则覆盖当前文件。
FileFormat:文件存储格式,0-TXT 1-CSV
Time:定时自动新建文件,0-不定时新建文件存储 N-每N分钟新建文件存储数据[N:0~10080(一周)]
注意:
1.未生成CONFIG.TXT文件之前不要往模块串口发送数据。
2.不要同时连接USB和串口。
3.通过USB连接电脑,建议先弹出U盘再拔模块。
特性
- 自带USB功能,无需读卡器
- 支持多种波特率,兼容性强
- 写入指示灯,便于观察数据写入情况
- FAT32文件系统,最大支持32GB TF卡
- 支持TXT、CSV文件格式存储
- 支持定时新建文件存储,存储更灵活
应用场景
- 离线环境数据采集
- 产品调试抓log
- 机器人,无人机调试
- 产品老化测试,稳定性测试数据记录
技术规格
- 供电电压:3.3V~5V
- 工作电流:10mA
- USB协议:USB 2.0
- 工作温度范围:-20℃~65℃
- 工作湿度范围:5%RH~85%RH
- 产品尺寸:23x29mm
引脚说明
序号 | 丝印 | 功能描述 |
---|---|---|
1 | VCC/+ | 电源正极 |
2 | GND/- | 电源地 |
3 | RX/R | UART接收 |
4 | TX/T | UART发送 |
5 | S/SAVE | 保存引脚/按键,保存当前文件,并新建一个文件用来存储接下来的数据,低电平保存 |
SD LED指示灯为模块与存储之间数据交互的指示灯,当有数据写入时灯闪烁。
使用教程
准备
- 硬件
- 1 x Arduino UNO控制板
- 1 x Fermion: 串口数据记录器
- 若干 杜邦线
- 软件
- Arduino IDE, 点击下载Arduino IDE
接线图
样例代码1 - 写入数据
通过Serial.print向模块写入数据,每过一段时间保存一个文件
#define SPIN 6 //连接模块S引脚,低电平触发保存文件
uint16_t i = 0;
void setup(void)
{
Serial.begin(115200);
pinMode(SPIN, OUTPUT);
digitalWrite(SPIN, HIGH);
}
void loop(void)
{
Serial.println(String(i));
i++;
if((i % 10) == 0){
digitalWrite(SPIN, LOW);
delay(100);
digitalWrite(SPIN, HIGH);
}
delay(300);
}
样例代码2 - 写入CSV格式数据
注意:在config.txt文件中,将FileFormat设置为1
uint16_t i = 0;
uint16_t j = 65535;
void setup(void)
{
Serial.begin(115200);
Serial.print("i,");
Serial.println("j");
}
void loop(void)
{
Serial.print(String(i)+",");
Serial.println(String(j));
i++;
j--;
delay(500);
}
效果如下:
样例代码3 - mind+写入数据
通过Serial.print向模块写入数据,每过一段时间保存一个文件
传感器RX接 UNO TX(1号引脚)
硬串口
效果如下:
软串口
扩展里面->功能模块->软串口
传感器RX 接UNO TX(6号引脚)
效果如下:
常见问题
Q: 模块上电时未能自动生产CONFIG.TXT文件。
A: 先确认是否使用UART接口的电源引脚进行供电,再检查存储的文件系统是否为FAT32。
Q: 快速向模块写入数据时SD灯不亮。
A: SD卡有10万次的擦写寿命,为保证SD寿命,模块写入数据后50ms左右或512个字节写入SD卡一次
Q: 模块什么时候进入U盘模式?什么是时候进入数据存储模式?
A: 使用USB主机连接模块时,模块进入U盘模式,此时不能往里存储数据,上电不会自动生产CONFIG.TXT文件和新的空白文件。其余情况模块进入数据存储模式,如果模块没有CONFIG.TXT文件将自动生成CONFIG.TXT文件和新的空白文件。
Q: 出现了不能删除的文件怎么解决?
A: 请格式化存储,再按照首次使用方法操作。
Q: 记录的数据乱码怎么解决?
A: 检查您打开的格式是否为UTF-8。此模块只能记录字符数据,如您写入原始数据或者hex数据,就会形成乱码。
更多问题及有趣的应用,可以 访问论坛 进行查阅或发帖。