IMU函数

IMU相关底层API函数使用说明。

头文件的引入

#include  "imu.h"

IMU初始化

//该函数用于初始化IMU硬件
void IMU_Init(void);

IMU读取

//该函数用于读取当前板子yaw轴,pitch轴,roll轴角度
//需要输入三个用于读取当前板子yaw轴,pitch轴,roll轴角度三个变量的地址
void IMU_Date_Get(float*yaw,float*pitch,float*roll)

IMU温度读取

//该函数用于读取当前板子陀螺仪的温度值
//需要输入一个float类型数据地址
void IMU_Tem_Get(float* IMU_Tem)

####气压计数据读取

//该函数用于读取当前板子当前气压计读取的高度
//需要输入一个float类型数据地址
void Altitude_Data_Get(float* Altitude)

IMU原始数据读取

//该函数用于读取当前板载陀螺仪,磁力计的原始数据
//需要输入三个用于读取当前板子三轴加速度测量值,三轴陀螺仪测量值,三轴地磁计测量值的数组,数组中前三个元素为读取的数据
void IMU_Old_Data(int16_t* IMU_Acce,int16_t* IMU_Gyro,int16_t* IMU_Magn)

IMU串口回调

//IMU串口通讯协议回调函数,参数对应串口通讯协议参数
void IMU_Serial_Callback(char *type){}

示例

//每隔50ms读取一次IMU数据
#include "imu.h"//引入头文件 "imu.h"
float IMU_yaw,IMU_pitch,IMU_roll;//构建float类型的变量,用于获取当前板子yaw轴,pitch轴,roll轴角度
void user1_main(void)
{
	IMU_Init();//初始化IMU相关硬件以及算法
	while(1)
	{
		//通过输入三个全局变量的地址,来获取IMU的三轴角度数据
		IMU_Date_Get(&IMU_yaw,&IMU_pitch,&IMU_roll);
		delay_ms(50);//每隔50ms读取一次IMU数据
	}
}