资源简介
mpu6050+地磁传感器通过卡尔曼滤波得出姿态角,加入HMC588模块,对yaw角度进行融合校准。
代码片段和文件信息
///******************** (C) COPYRIGHT 2014 ANO Tech ********************************
// * 作者 :匿名科创
// * 文件名 :data_transfer.c
// * 描述 :数据传输
// * 官网 :www.anotc.com
// * 淘宝 :anotc.taobao.com
// * 技术Q群 :190169595
//**********************************************************************************/
//#include “data_transfer.h“
//#include “usart.h“
//#include “imu.h“
//#include “mpu6050.h“
//#include “ak8975.h“
//#include “ms5611.h“
//#include “rc.h“
//#include “ctrl.h“
//#include “time.h“
//#include “usbd_user_hid.h“
///////////////////////////////////////////////////////////////////////////////////////
////数据拆分宏定义,在发送大于1字节的数据类型时,比如int16、float等,需要把数据拆分成单独字节进行发送
//#define BYTE0(dwTemp) ( *( (char *)(&dwTemp) ) )
//#define BYTE1(dwTemp) ( *( (char *)(&dwTemp) + 1) )
//#define BYTE2(dwTemp) ( *( (char *)(&dwTemp) + 2) )
//#define BYTE3(dwTemp) ( *( (char *)(&dwTemp) + 3) )
//dt_flag_t f; //需要发送数据的标志
//u8 data_to_send[50]; //发送数据缓存
///////////////////////////////////////////////////////////////////////////////////////
////Data_Exchange函数处理各种数据发送请求,比如想实现每5ms发送一次传感器数据至上位机,即在此函数内实现
////此函数应由用户每1ms调用一次
//void ANO_DT_Data_Exchange(void)
//{
// static u8 cnt = 0;
// static u8 senser_cnt = 10;
// static u8 status_cnt = 15;
// static u8 rcdata_cnt = 20;
// static u8 motopwm_cnt = 20;
// static u8 power_cnt = 50;
//
// if((cnt % senser_cnt) == (senser_cnt-1))
// f.send_senser = 1;
//
// if((cnt % status_cnt) == (status_cnt-1))
// f.send_status = 1;
//
// if((cnt % rcdata_cnt) == (rcdata_cnt-1))
// f.send_rcdata = 1;
//
// if((cnt % motopwm_cnt) == (motopwm_cnt-1))
// f.send_motopwm = 1;
//
// if((cnt % power_cnt) == (power_cnt-1))
// f.send_power = 1;
//
// cnt++;
///////////////////////////////////////////////////////////////////////////////////////
// if(f.send_version)
// {
// f.send_version = 0;
// ANO_DT_Send_Version(43001004000);
// }
///////////////////////////////////////////////////////////////////////////////////////
// else if(f.send_status)
// {
// f.send_status = 0;
// ANO_DT_Send_Status(RollPitchYawbaroAlt0fly_ready);
// }
///////////////////////////////////////////////////////////////////////////////////////
// else if(f.send_senser)
// {
// f.send_senser = 0;
// ANO_DT_Send_Senser(mpu6050.Acc.xmpu6050.Acc.ympu6050.Acc.z
// mpu6050.Gyro.xmpu6050.Gyro.ympu6050.Gyro.z
// ak8975.Mag_Adc.xak8975.Mag_Adc.yak8975.Mag_Adc.z0);
// }
///////////////////////////////////////////////////////////////////////////////////////
// else if(f.send_rcdata)
// {
// f.send_rcdata = 0;
// ANO_DT_Send_RCData(Rc_Pwm_In[0]Rc_Pwm_In[1]Rc_Pwm_In[2]Rc_Pwm_In[3]Rc_Pwm_In[4]Rc_Pwm_In[5]Rc_Pwm_In[6]Rc_Pwm_In[7]00);
// }
///////////////////////////////////////////////////////////////////////////////////////
// else if(f.send_motopwm)
// {
// f.send_motopwm = 0;
// ANO
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 11529 2017-05-16 21:37 RM_mcu2\ANO_DT.c
文件 1379 2017-05-16 21:37 RM_mcu2\ANO_DT.h
文件 267 2017-04-24 19:34 RM_mcu2\bsp_Init.c
文件 12495 2017-05-11 22:30 RM_mcu2\communication.c
文件 0 2017-05-11 22:21 RM_mcu2\communication.h
文件 6956 2015-12-10 17:06 RM_mcu2\DebugConfig\Target_1_STM32F103RC.dbgconf
文件 6956 2015-12-10 17:06 RM_mcu2\DebugConfig\Target_1_STM32F103RC_1.0.0.dbgconf
文件 6956 2015-12-10 17:06 RM_mcu2\DebugConfig\Target_1_STM32F103ZE_1.0.0.dbgconf
文件 339 2017-05-16 21:46 RM_mcu2\EventRecorderStub.scvd
文件 10371 2017-05-10 07:01 RM_mcu2\imu.c
文件 556 2017-04-05 17:12 RM_mcu2\imu.h
文件 5561 2017-05-06 20:46 RM_mcu2\Jli
文件 755 2017-05-06 20:36 RM_mcu2\Jli
文件 1409 2017-05-10 06:21 RM_mcu2\Kalman_Filter.c
文件 140 2017-05-10 06:19 RM_mcu2\Kalman_Filter.h
文件 173973 2019-04-05 15:19 RM_mcu2\Listings\RM_mcu2.map
文件 55031 2019-04-05 15:19 RM_mcu2\Listings\startup_stm32f10x_hd.lst
文件 1266 2017-06-07 12:04 RM_mcu2\main.c
文件 388 2017-05-14 00:41 RM_mcu2\main.h
文件 13617 2017-05-09 23:23 RM_mcu2\mpu6050_driver.c
文件 8708 2017-04-05 16:31 RM_mcu2\mpu6050_driver.h
文件 5202 2017-06-07 12:06 RM_mcu2\mpu6050_i2c.c
文件 198 2017-04-05 16:12 RM_mcu2\mpu6050_i2c.h
文件 1438 2017-05-10 18:45 RM_mcu2\mpu6050_interrupt.c
文件 167 2017-04-05 16:59 RM_mcu2\mpu6050_interrupt.h
文件 18 2019-04-05 15:19 RM_mcu2\ob
文件 30 2019-04-05 15:19 RM_mcu2\ob
文件 4496 2019-04-05 15:19 RM_mcu2\ob
文件 329525 2019-04-05 15:19 RM_mcu2\ob
文件 2329 2019-04-05 15:19 RM_mcu2\ob
............此处省略105个文件信息
- 上一篇:很实用的旅游订票管理系统
- 下一篇:STM 图片显示TFT 正点原子
相关资源
- K5环境+STM32+MPU6050+卡尔曼滤波源码
- mpu6050寄存器手册中文版
- MPU6050的C代码程序包括DMP直接解算姿态
- MPU6050、磁力计、气压计传感器原理及
- PIX4飞控+光流源代码.rar
- stm32+MPU6050+GPS+SD卡读写+ad采集+串口输
- clean flight 软件
- stm32103c8t6mpu6050采集程序(无其它多余
- PIXHAWK飞控源码
- 飞控stm32程序
- px4飞控源码
- CC3D飞控官方固件及PCB电路图
- betaflight汉化版
- Verilog IIC读MPU6050-融合滤波-单轴-代码
- PIX4飞控+光流源代码
- stm32风力摆
- MPU6050 DMP
- 基于stm32智能手环.zip
- 四旋翼飞控程序
- STM32F103C8T6接收福斯i6遥控器信号1286
- STM32_MPU6050DMP硬件I2C读取欧拉角
- MWC2.4飞控源码
- MPU6050 DMP+ADXL345+NRF24L01+HAL库+STM32F103C
- MPU6050姿态解算STM32源码(互补滤波、
- MPU6050中文版使用说明书
- 基于51单片机的指南针
- PX4的电路原理图
- 飞控初学者调试_EXUAV-开源飞控之王
- stm32f10x 飞控 天地飞接收头WFLY progra
- 两轮平衡小车K5环境+STM32+MPU6050+卡尔曼
评论
共有 条评论