|
我现在的应用是配置好MPU9150的运动中断,来判断板子是静止还是运动状态,不需要进行姿态解算。我的中断配置是参照数据手册上的配置设置的,具体代码如下:
write_byte(PWR_MGMT_1, 0x00);
write_byte(PWR_MGMT_2, 0x00);
write_byte(ACCEL_CONFIG, 0x00);
write_byte(CONFIG, 0x00);
write_byte(INT_PIN_CFG, 0x80); //INT pin is active low push-pull
write_byte(INT_ENABLE, 0x40);
write_byte(MOT_DUR, 0x01);
//write_byte(MOT_THR, 20);
write_byte(MOT_THR, 0x1F);
write_byte(MOT_DETECT_CTRL, 0x00);
write_byte(ACCEL_CONFIG, 0x07);
write_byte(PWR_MGMT_2, 0xC7);
write_byte(PWR_MGMT_1, 0x20);
现在有这么几个问题:
1. 对MOT_THR寄存器的设置(就是判断运动状态的门限值)不太明白,有时候过于灵敏,有时候又要很大的运动动作才产生中断,不知道是否有比较标准的设置值。
2.如果我只是配置运动中断而不用解算姿态,那板子是否需要校准?碰到这么个问题,将板子放置某一角度,即使是静止状态下也会产生中断,不知道是否跟校准有关?
请各位如果用过运动中断的尽快给我一点指点,项目时间紧,请各位帮帮忙啦 |
阿莫论坛20周年了!感谢大家的支持与爱护!!
知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)
|