Try to ony copy gyro data when it's fresh

This commit is contained in:
Allen
2011-02-24 12:53:16 -08:00
parent 9d043a27ad
commit 03ba316f63
+4 -4
View File
@@ -127,6 +127,10 @@ static inline void imu_aspirin_event(void (* _gyro_handler)(void), void (* _acce
imu_aspirin.i2c_trans_gyro.status == I2CTransSuccess && i2c_idle(&i2c2)) {
gyro_copy_i2c();
imu_aspirin.status = AspirinStatusIdle;
if (imu_aspirin.gyro_available_blaaa) {
imu_aspirin.gyro_available_blaaa = FALSE;
_gyro_handler();
}
}
if (imu_aspirin.gyro_eoc && i2c2.status == I2CIdle && i2c_idle(&i2c2)) {
if (imu_aspirin.i2c_trans_gyro.status == I2CTransSuccess) {
@@ -141,10 +145,6 @@ static inline void imu_aspirin_event(void (* _gyro_handler)(void), void (* _acce
gyro_read_i2c();
imu_aspirin.time_since_last_reading = 0;
}
if (imu_aspirin.gyro_available_blaaa && imu_aspirin.i2c_trans_gyro.status == I2CTransSuccess) {
imu_aspirin.gyro_available_blaaa = FALSE;
_gyro_handler();
}
if (imu_aspirin.accel_available) {
imu_aspirin.accel_available = FALSE;
accel_copy_spi();