STM32 VOFA+串口调试助手提升电机控制调试效率(下位机代码和上位机操作演示)

目录

VOFA+软件介绍

MCU底层通信代码实现

VOFA+显示波形配置

总结


VOFA+软件介绍

VOFA+是一个很方便的串口调试助手软件,不仅可以当成普通的串口调试助手使用,还可以显示变量的曲线,非常方便观测系统变量变化情况,基础功能都是免费的。

下载地址:VOFA+ | VOFA+

STM32 VOFA+串口调试助手提升电机控制调试效率(下位机代码和上位机操作演示)_第1张图片

MCU底层通信代码实现

这里我们选择的通信协议JustFloat,MCU需要按照下图的格式发送数据,才能被VOFA+自动识别通道,并显示。直接看代码会更直接。

STM32 VOFA+串口调试助手提升电机控制调试效率(下位机代码和上位机操作演示)_第2张图片

代码如下,这里我们定义了一个数组,根据自己想要上传的变量数量,进行定义。由于上传的是浮点数由4个byte组成。

 static uint8_t tempData[16] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0x80,0x7F};

 STM32 VOFA+串口调试助手提升电机控制调试效率(下位机代码和上位机操作演示)_第3张图片

 

 函数定义

 上传数据函数,函数内容很少,需要注意的有以下几点。

1. static float temp[3] 是定义要上传的变量数组,这里上传了电流,电机角度,电机速度

2. 发送的字节数是16正是定义的tempdata[16]

STM32 VOFA+串口调试助手提升电机控制调试效率(下位机代码和上位机操作演示)_第4张图片

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);
	
}

 函数调用

这里避免发送频率过快,避免丢掉数据,设置了发送周期,可视情况设定

STM32 VOFA+串口调试助手提升电机控制调试效率(下位机代码和上位机操作演示)_第5张图片

 到这里MCU底层代码已经配置好了,编译下载就可以了。

VOFA+显示波形配置

点1,展开后配置串口通信的参数配置好后点6连接 

STM32 VOFA+串口调试助手提升电机控制调试效率(下位机代码和上位机操作演示)_第6张图片

如下图,点1,拖动波形显示的控件

STM32 VOFA+串口调试助手提升电机控制调试效率(下位机代码和上位机操作演示)_第7张图片

 右键显示所有的信号STM32 VOFA+串口调试助手提升电机控制调试效率(下位机代码和上位机操作演示)_第8张图片

 看看效果:

VOFA+显示电机运行状态

总结

合理利用工具可以加速开发的速度,Simulink串口对电脑资源占用还是挺大的,VOFA还可以根据电机的性能配置数据刷新率,是一个挺好用的开发工具!

你可能感兴趣的:(STM32,代码生成,单片机,stm32)