目录
VOFA+软件介绍
VOFA+是一个很方便的串口调试助手软件,不仅可以当成普通的串口调试助手使用,还可以显示变量的曲线,非常方便观测系统变量变化情况,基础功能都是免费的。
下载地址:VOFA+ | VOFA+
MCU底层通信代码实现
这里我们选择的通信协议JustFloat,MCU需要按照下图的格式发送数据,才能被VOFA+自动识别通道,并显示。直接看代码会更直接。
代码如下,这里我们定义了一个数组,根据自己想要上传的变量数量,进行定义。由于上传的是浮点数由4个byte组成。
static uint8_t tempData[16] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x80,0x7F};
函数定义
上传数据函数,函数内容很少,需要注意的有以下几点。
1. static float temp[3] 是定义要上传的变量数组,这里上传了电流,电机角度,电机速度
2. 发送的字节数是16正是定义的tempdata[16]
void UploadData_vofa(void)
{
extern UART_HandleTypeDef huart2;
static float temp[3];//float temp[15];
static uint16_t time_count;
temp[0]=Ia_A;
temp[1]=Hall_Angle;
temp[2]=Hall_Speed;
memcpy(tempData, (uint8_t *)&temp, sizeof(temp));
HAL_UART_Transmit_DMA( &huart2, (uint8_t *)tempData, 16);
}
函数调用
这里避免发送频率过快,避免丢掉数据,设置了发送周期,可视情况设定
到这里MCU底层代码已经配置好了,编译下载就可以了。
VOFA+显示波形配置
点1,展开后配置串口通信的参数配置好后点6连接
如下图,点1,拖动波形显示的控件
右键显示所有的信号
看看效果:
VOFA+显示电机运行状态
总结
合理利用工具可以加速开发的速度,Simulink串口对电脑资源占用还是挺大的,VOFA还可以根据电机的性能配置数据刷新率,是一个挺好用的开发工具!