
INT中断输出,AD0设置地址AD0=0 地址=0X68 AD0=1 地址0X69,SCL/SDA IIC接口
1.初始化IIC
2.复位mpu6050,由电源管理寄存器0X6B控制
3.设置角速度加速度满量程范围
4.设置其他参数
5.设置系统时钟
6.使能
DEVICE_RESET=1复位
SLEEP=0正常工作模式
TEMP_DIS用于设置是否使能温度传感器,设置为0,则使能CLKSEL[2:0]用于选择系统时钟
陀螺仪配置寄存器0X1B
FS_SEL[1:0]用于设置满量程范围
加速度配置寄存器0X1C
AFS_SEL[1:0]用于设置满量程范围
FIFO使能寄存器0X23
在简单读取传感器数据,可以不用FIFO,设置为0
采样率分频寄存器0X19
采样频率=陀螺仪输出频率/(1+SMPLRT_DIV)
一般设置为采样率的一半
配置寄存器0X1A
看数字低通滤波器设置位
加速度输出寄存器0x3B-0X40
陀螺仪输出 0X43-0X48
温度传感器数据输出0X41-0X42高8位低8位,通过温度换算
欧拉角yaw航向角 roll横滚角 pitch俯仰角
dmp输出的是四元数,采用q30格式,q30是一个常量
上位机
匿名四轴上位机
MPU6050两者程序是可以通用的,只需要改下ID即可就可以直接替换使用。ICM20602是6050的优化版本主要增加SPI通讯方式,改善了数据稳定性。MPU6050为全球首例整合性6轴运动处理组件,相较于多组件方案,免除了组合陀螺仪与加速时间轴之差的问题,减少了大量的封装空间。当连接到三轴磁强计时,MPU-60X0提供完整的9轴运动融合输出到其主I2C或SPI端口(SPI仅在MPU-6000上可用)。
ICM 20602是一个6轴运动跟踪装置,它结合了一个3轴陀螺仪,3轴加速度计,在一个小的3毫米×3毫米×0.75毫米(16引脚LGA)封装。
自动下滑,用timer可以实现。松开即可停止,这个不是很清楚。
下滑的速度有+-控制,需要热键,
网上查一下估计可以实现。
给我个邮箱。
----------------------
针对补充的问题,最小化了之后,所以才使用热键的。热键可以实现的。 用热键控制timer的时间。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)