Ardupilot UAVCAN 学习《5》

目录


摘要

本节主要记录自己通过单片机解析出ICM20689的加速度和陀螺仪数据,组成UAVCAN协议格式数据,发送给飞控,并从飞控中解析出需要的加速度和陀螺仪数据。


调试工具如下图:
Ardupilot UAVCAN 学习《5》
Ardupilot UAVCAN 学习《5》

1.单片机解析IMU数据

1.初始化IMU

Ardupilot UAVCAN 学习《5》
Ardupilot UAVCAN 学习《5》
Ardupilot UAVCAN 学习《5》

2.初始化CAN总线

配置UAVCAN总线的周期是500kbps,扩展帧数据格式
Ardupilot UAVCAN 学习《5》

3.解析IMU数据

Ardupilot UAVCAN 学习《5》

2.组包IMU数据形成UAVCAN格式

这里组包IMU数据形成UAVCAN需要的数据类型,周期性发送数据到飞控,任务周期是1ms
Ardupilot UAVCAN 学习《5》
Ardupilot UAVCAN 学习《5》
Ardupilot UAVCAN 学习《5》

3.周期性调用函数

Ardupilot UAVCAN 学习《5》
Ardupilot UAVCAN 学习《5》

需要注意的是:
Ardupilot UAVCAN 学习《5》
Ardupilot UAVCAN 学习《5》
Ardupilot UAVCAN 学习《5》
下面是多帧传输的格式:
Ardupilot UAVCAN 学习《5》
上面我们演示了单帧传递的方式,多帧传输的代码目前还没折腾,有折腾过的可以一起交流。