所有分类
主题 主题
平台 平台
我的工作台
userHead
注册时间 [[userInfo.create_time]]
创造力 [[userInfo.creativity]]
[[userInfo.remark]]
[[d.project_title]]
articleThumb
[[d.material_name]]
timelineThumb
进入工作台
折叠
所有分类 我的工作台
展开

串口数据记录器使用记

风隐 风隐 2022-04-30 08:44:33

一、串口数据记录器简介

串口数据记录器通俗来说,就相当于一个U盘。具有USB功能,连接电脑可读取存储的数据文件。与U盘不同的是可以记录主控板的串口数据,自己生成数据文件。数据存储时,通过指示灯闪烁可以方便的观察数据写入情况。板载保存按键,可以将数据文件分开存储。

projectImage

1、串口数据记录器特性

自带USB功能,无需读卡器读取文件

板载128MB储存,无需额外TF卡

支持多种波特率,兼容性强

写入指示灯,便于观察数据写入情况

2、技术规格

供电电压:3.3V~5V

工作电流:32mA

USB协议:USB 2.0

工作温度范围:-30℃~85℃

工作湿度范围:5%RH~85%RH

产品尺寸:32x27mm

3、首次使用

①串口数据记录器用数据线连接电脑,点击鼠标右键,选择属性,检查文件格式。如果存储未进行格式化,先格式化存储,文件系统为FAT32。

projectImage
projectImage
projectImage

②模块接各种主控板通电2S以上,模块自动生成CONFIG.TXT文件,SD灯会闪烁一次。

③检查CONFIG.TXT文件是否正常的生成,打开CONFIG.TXT文件,可以修改模块的通讯波特率和文件存储名字。

projectImage
projectImage
projectImage

4、注意事项

①未生成CONFIG.TXT文件之前不要往模块串口发送数据。
②不要同时连接USB和串口。
③通过USB连接电脑,建议先弹出U盘再拔模块。

5、数据记录器接口

序号

引脚、按键

功能描述

1VCC/+

电源正极

2GND/-

电源负极

3RX/R

UART接收

4TX/T

UART发送

5S/SAVE

保存引脚/按键,保存当前文件,并新建一个文件用来存储接下来的数据,低电平保存

projectImage

SD LED指示灯为模块与存储之间数据交互的指示灯,当有数据写入或新建文件时灯闪烁。

二、数据存储测试

1、硬件

Arduino UNO主控板、串口数据记录器

材料清单 材料清单
1x
DFRduino UNO R3(含USB线|传感器扩展板)
1x
Gravity: 串口数据记录器

2、软件:

①操作系统:基于windows 7操作系统;

②软件:Mind+最新版本,下载地址:https://mindplus.cc/

projectImage
projectImage

三、程序编写

1、添加Arduino UNO主控板

projectImage

1、拖曳积木编写程序

(1)用主控板硬串口存储数据

①模块RX接主控板TX(1号引脚)

projectImage

②接线图

projectImage

③选择端口号,主控板连接电脑上传程序,串口数据写入过程数据记录器LED闪烁。串口数据记录器与主控板断开,连接电脑,弹出U盘设备,打开FILE文件。

projectImage

③运行结果

第一次串口数据记录器能够记录英文、数字,汉字和特殊字符不能记录,FILE文件里显示乱码。正常数据存储也会出现乱码,按主控板RST键,可以让数据存储简洁,避免乱码出现。如果有错误文件和空文件出现,删除错误文件和空文件,就可以存储正常文件了。

第二次查找问题,是TXT文件编码的问题,修改为UTF-8,再次传输,汉字、特殊字符均能正常存储,修改编码方式见下文。

(2)用主控板软串口存储数据

①在Mind+的扩展库、功能模块,添加“软串口”。

projectImage

②拖曳积木编写程序

projectImage

代码第三行设置主控板2号引脚为Rx,3号引脚为Tx。

③接线图

projectImage

④运行结果

projectImage

特别注意:串口记录器模块文本文档编码为UTF-8。修改编码的方法如下图:

projectImage
projectImage

三、串口数据记录器记录温度实验

中学物理热学熔化、凝固、沸腾、比热容实验,要每隔相等的时间测量、记录一次温度。测量温度采用传统的液体温度计,实验效果很差。用DS18B20温度传感器、串口数据记录器能够轻松测量、记录温度数据。实验数据记录及时、准确,特别方便物理课堂教学。

projectImage

1、添加Arduino UNO主控板、串口数据记录器、语音合成模块、DS18B20温度传感器、1602液晶显示屏。另外准备电热水壶、冷水,本实验探究水沸腾温度随时间变化关系。

材料清单 材料清单
1x
DFRduino UNO R3(含USB线|传感器扩展板)
1x
Gravity: 串口数据记录器
1x
Gravity:中英文语音合成模块V2.0
1x
Gravity: 18B20 防水温度传感器套件
1x
Gravity: I2C LCD1602 液晶显示屏 (蓝底)
projectImage
projectImage
projectImage

1、拖曳积木编写程序

projectImage

代码第2、3、4行为液晶、语音合成模块初始化,第5、6行为串口数据记录器初始化,设置主控板TX(发送)为2号引脚,RX(接收)为3号引脚。第7行的作用,延时2秒等待模块启动。第8行向模块输出文字信息“温度数据”,第9行为液晶显示温度,第10行主控板向模块发送温度数据,第11行语音合成模块说出温度值。第12行的作用是等待5秒再次进行检测,同时液晶屏清屏。

特别注意:

①主控板TX引脚发出信息,串口数据记录器模块RX引脚接收信息。模块TX发送信息,主控板RX接收信息。

TX——RX

②串口记录器模块文本文档编码为UTF-8。

3、接线图

projectImage

4、运行结果

每隔5秒串口记录器模块灯闪烁一次,液晶屏温度显示温度改变,语音合成模块说出温度。

projectImage
projectImage

       测第一组数据时,我还没有给电热水壶通电。第二组数据通电了,可以看到从第二组数据开始,温度迅速升高。最后一组数据温度变小,是将18B20温度传感器从热水壶中取出了。

经验总结:

1、程序正确无误,上传程序到98%停止上传。

解决办法:把模块与主控板断开,重新上传。

2、多次上传程序,主控板不会向串口数据记录器模块无法传输数据。

解决办法:

①把模块与主控板断开,需要数据传输再连主控板。

②模块与主控板连接上,多按主控板RST键。

③防止数据文件过长,按模块SAVE键,可以生成新的文件。

④TXT文件编码改为UTF-8。

Makelog作者原创文章,未经授权禁止转载。
0
0
评论
[[c.user_name]] [[c.create_time]]
[[c.parent_comment.count]]
|
[[c.comment_content]]