Exemplo n.º 1
0
void imu_periodic(void) {
  hmc5843_periodic();
  if (imu_aspirin.status == AspirinStatusUninit) {
    configure_gyro();
    configure_accel();
    imu_aspirin.status = AspirinStatusIdle;
  }
  else
    imu_aspirin.gyro_available_blaaa = TRUE;
}
Exemplo n.º 2
0
void imu_periodic(void) {
  hmc5843_periodic();
  if (imu_aspirin.status == AspirinStatusUninit) {
    configure_gyro();
    configure_accel();
    imu_aspirin_arch_int_enable();
    imu_aspirin.status = AspirinStatusIdle;
  }
  else {
    imu_aspirin.gyro_available_blaaa = TRUE;
    imu_aspirin.time_since_last_reading++;
  }

}
Exemplo n.º 3
0
void imu_periodic(void) {
  hmc5843_periodic();
  if (imu_aspirin.status == AspirinStatusUninit) {
    configure_gyro();
    configure_accel();
    //imu_aspirin_arch_int_enable();
    imu_aspirin.accel_tx_buf[0] = (1<<7|1<<6|ADXL345_REG_DATA_X0);
    imu_aspirin.status = AspirinStatusIdle;
  } else {
    imu_aspirin.gyro_available_blaaa = TRUE;
    imu_aspirin.time_since_last_reading++;
    imu_aspirin.time_since_last_accel_reading++;
    spi_submit(&(ADXL345_SPI_DEV), &aspirin_adxl345);

    //if (imu_aspirin.time_since_last_accel_reading > ASPIRIN_ACCEL_TIMEOUT) {
    //  configure_accel();
    //  imu_aspirin.time_since_last_accel_reading=0;
    //}
  }
}