本文从多方面、多层次介绍模块使用、软件使用、代码编写。希望各位多多指点
任务
根据WT1-IMU产品资料中协议说明,将解读出的姿态角打印至上位机。
硬件
1.使用板子型号为stm32f401ccu6
该板子一共有USART1、USART2、USART6三个串口
查看板子引脚原理和手册
得出以下引脚图
2.使用的姿态传感器WT1-IMU
它包含三轴陀螺仪、三轴加速度计。领先的基于 Kalman 滤波原理并具有自主知识产权的传感器融合算法,可以实时提供高达 100Hz 更新率的数据,从而满足各种高精度的应用需求,实现准确的动作捕捉和姿态估计。模块内部集成了姿态解算器,配合动态卡尔曼滤波算法,能够在动态环境下准确输出模块的当前姿态,姿态测量精度0.2°,稳定性极高,性能甚至优于某些专业的倾角仪。
关于该模块的资料:WT1-IMU产品资料 (yuque.com)
3.使用usb转ttl
模块使用方法:
ch340驱动下载与安装;
4.硬件连接
用杜邦线和面包板将上面元件连接起来
WT-IMU的VCC接usb转ttl的3V3,GND接板子的GND,RX接PA9,TX接PA10;
usb转ttl的GND接板子的GND,RX接板子PA11,TX接PA12
烧录用DAPLink,接线简单不追述。
软件
- Kiel5
具体安装和操作方式不进行具体讲解
- 维特智能上位机
- 串口调试助手
我用的是野火串口调试助手和VOFA+
下载方法:
下载地址:链接:百度网盘 请输入提取码 提取码:rau0 (百度云下载,包含Windows版本、Ubuntu版本)
详情介绍:【野火新版多功能调试助手】下载链接及功能说明,功能包括:串口调试、网络调试、摄像头调试、PID调试,二进制文件编辑 - 电脑上位机 - 野火电子论坛 - Powered by Discuz!
- vofa+
下载路径:VOFA-Plus上位机 | VOFA-Plus上位机
检验
单独用WT-IMU进行检测
接线用usb转ttl连接模块(注意不要将TX和RX接错),用维特上位机进行查看数据
代码编写
原理:
首先WT-IMU传感器将数据按照数据帧的方式通过USART1的发送到单片机,单片机将数据按照WT61协议将数据解算成对应角度,数据再通过串口6重定向打印到上位机。
编写过程
main.c
#include "stm32f4xx.h"
#include "bsp_usart.h"
#include "wt_imu.h"
extern volatile uint32_t TimingDelay;
extern float fAng[3];
extern float Temp;
extern uint8_t Flag;
//软延时
void Delay( u32 count )
{
while(count--)
{ }
}
int main(void)
{
/* 初始化串口 */
Debug_USART1_Config();
Debug_USART6_Confi