在项目开发测试的时候,调试是最费时间的,所以适当借助工具是很有必要的,这篇推文将介绍一下上位机可视化调试。
软件下载: https://vofa.plus/downloads/?index=0 文档说明: https://vofa.plus/docs/learning
|传输协议
RawData:RawData协议适用于不需要解析数据,仅仅查看字节流的需求。RawData不做采样数据解析。RawData不做采样数据解析。就相当于普通的串口助手。 firewater:本协议是CSV风格的字符串流,直观简洁,编程像printf简单。但由于字符串解析消耗更多的运算资源(无论在上位机还是下位机),建议仅在通道数量不多、发送频率不高的时候使用。 justfloat:本协议是小端浮点数组形式的字节流协议,纯十六进制浮点传输,节省带宽。此协议非常适合用在通道数量多、发送频率高的时候。
| 简单使用
为了更好地使用和测试,这里使用了虚拟串口工具,并不是使用真实的硬件,下面就根据三种协议简单使用,更多用法请查阅官方使用文档。
RawData
这个协议可以当作普通的串口工具使用,发什么数据就会显示什么出什么数据,这个协议适用于不需要解析数据,仅仅查看字节流的需求。
firewater
这是VOFA+里最简单的绘制波形协议,建议在通道数量不多、发送频率不高的时候使用。这个协议在发送数据的时候,注意要加换行,不然是不会打印数据的。
1、连接上串口,再把控件拖到对应界面上
2、简单发送点数据测试通信是否正常
3、绑定数据用于查看波形
4、动态更新数据,刷新波形显示
5、多通道测试并显示,并按步骤3绑定数据
justfloat
这个协议具有一定的数格式,适合在通道数多且发送频率高的时候使用。
说明文档: https://vofa.plus/docs/learning/dataengines/justfloat
发送特定结构的数据格式才能被识别,不然是不会出结果的。
数据格式 #defineCH_COUNTstructFrame{ floatch_data[CH_COUNT]; unsignedchartail[4]{0x00,0x00,0x80,0x7f}; }; ch_data为小端浮点数组,里面放着需要发送的CH_COUNT个通道。 tail为帧尾。
浮点数转十六进制:
#include"stdio.h" voidfloat_to_hex(void) { floatf=123.45f; unsignedchar*hex=(unsignedchar*)&f; for(inti=0;i< 4; i++) printf("0x%02X ", hex[i]); printf(" "); } int main() { float_to_hex(); return 0; }
效果图如下:
简单介绍了一下该工具的使用,各位根据自己的需求进行深入探索,来加快自己的项目开发进度!
责任编辑:彭菁
-
上位机
+关注
关注
27文章
940浏览量
54771 -
调试工具
+关注
关注
1文章
47浏览量
12631 -
可视化
+关注
关注
1文章
1190浏览量
20924
原文标题:技巧|可视化调试
文章出处:【微信号:玩转单片机,微信公众号:玩转单片机】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论