无人机底层驱动+STM32F4学习心得-6.MPU6050六轴传感器+磁力计初始化

  • MPU6050简单初始化步骤如下(仅供参考):
  1. 复位MPU6050。配置电源管理寄存器1(0x6B),复位:将bit7写1实现,复位后,默认值0x40,然后设置0x00-->唤醒MPU6050。
  2. 选择X/Y/Z其中一个轴作为参考坐标。同样也是配置电源管理寄存器1(0x6B)。
  3. 设置陀螺仪的输出频率。配置采样率分频寄存器(0x07),采样频率 = 陀螺仪输出频率/(1+SMPLRT_DIV) 。当DLPF is disable(DLPF_CFG=0 or 7),陀螺仪输出频率=8kHz;当DLPF is enabled(寄存器26),陀螺仪输出频率=1kHz
  4. 设置低通滤波频率。配置寄存器(0x1A),当滤波频率超过90Hz时无明显滤波效果。
  5. 设置陀螺仪最大量程。配置陀螺仪配置寄存器(0x1B)。
  6. 设置加速计最大量程。配置加速度传感器配置寄存器(0x1C);
  7. 详细初始化请参考手册:链接:https://pan.baidu.com/s/1Ck5ob78WyWUHvH3Jb41gjQ 
    提取码:dla0 
  • 从MPU6050寄存器中读取数据:
  1. 这里只读取MPU6050的陀螺仪、加速度计、温度的值。
  2. 加速度计的值分布在6个字节的地址上,分为X轴的高8位和低8位数据,Y轴的高8位和低8位数据,Z轴的高8位和低8位数据,寄存器地址为0x3B ~ 0x40。
  3. 同样陀螺仪的值也分布在6个字节的地址上,分为X轴的高8位和低8位数据,Y轴的高8位和低8位数据,Z轴的高8位和低8位数据,寄存器地址为0x43 ~ 0x48。
  4. 温度的值分为2个字节的地址,也是高八位和低八位。寄存器地址为0x41 ~ 0x42。
  • HMC5883L磁力计初始化步骤如下(仅供参考):
  1. 设置采样平均数,输出速率,模式。配置寄存器A(地址0)。
  2. 设置周围磁场强度及高斯增益(地磁场强度大约0.5~0.6高斯)。配置寄存器B(地址1)。
  3. 设置测量模式。配置模式寄存器(地址2)。
  4. 详细初始化请参考手册:链接:https://pan.baidu.com/s/1Kj4O-u4lEVTxg_kFB-4yyg 
    提取码:advp 
  • 从HMC5883L中读取数据:
  1. 磁力计的原始数据分布在6个字节的地址上,分为分为X轴的高8位和低8位数据,Y轴的高8位和低8位数据,Z轴的高8位和低8位数据,寄存器地址为3 ~8。(其中 7和8地址为Y轴的高八位和低八位)

猜你喜欢

转载自blog.csdn.net/qq_41422043/article/details/83820114
今日推荐