介绍

VOFA+是一个精致的数据可视化上位机软件,支持多个数据接口(串口、网口)、自定义数据引擎和定制数据可视化控件,是一个不可多得的自动化调参软件(示波器类似物),个人觉得它将串口调参的功能发挥到了极致

前端

数据引擎和数据接口参数配置:选择FireWater引擎,数据接口选串口,串口配置115200 8N1

img

通道数据展示:通道开关+名称+颜色+小数点位置

img

可以控制缓冲区里边可视化数据点数:点击红色原点进行波形放大、缩小

img

文本展示区,可以实时展示接收+发送内容

img

控件

可以点击左侧的控件栏,左键选中控件并拖到波形展示区域

img

主窗口支持多个Tab分页,可以将不同的数据分类展示,支持分类的重命名

img

绑定

数据通道绑定X轴已经Y轴,只要在控件右键弹出菜单就可以配置X轴、Y轴,其它控件同理

img

指定上位机的时间戳为X轴,当然你可以用数据通道指定的X轴(不用上位机的时间戳)

img

FireWater数据引擎+串口数据接口为例:使用指定格式输出数据:”%f,%f,%f,%f\n”,只要往printf输出格式化数据就行,以下嵌入式代码用于生成自定义的正弦波数据,printf的参数配置需要和上位机的串口配置一致

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
// 打印表头
printf("Angle,Sin(x),Cos(x),Sin(x)*Cos(x),Cos(x)*Cos(x)\r\n");

// 生成三角函数数据
float angle = 0.0f; // 角度(度)
float angleRad; // 角度(弧度)
float sinVal, cosVal; // sin(x)和cos(x)值
float sinCosVal, cosSquareVal; // sin(x)*cos(x)和cos(x)*cos(x)值

for(;;) {
// 每15度输出一次数据
while(angle <= 360.0f)
{
// 转换为弧度
angleRad = angle * 0.01745329f; // 0.01745329 = π/180

// 计算三角函数值
sinVal = sin(angleRad);
cosVal = cos(angleRad);
sinCosVal = sinVal * cosVal;
cosSquareVal = cosVal * cosVal;

// 使用指定格式输出数据:"%f,%f,%f,%f\n"
printf("%f,%f,%f,%f\r\n", sinVal, cosVal, sinCosVal, cosSquareVal);

// 角度增加15度
angle += 15.0f;

// 延时,避免输出太快
DEVICE_DELAY_US(500); // 延时100ms
}
angle = 0;
}

波形实时展示效果

img

总结

理论上也能支持CAN接口,要是支持CAN就完美了


© 2025 hywing 使用 Stellar 创建
总访问 113701 次 | 本页访问 326