DMP-ICM20948
// app.cpp
void app() {
DMP_ICM20948 icm;
DMP_ICM20948Settings icmSettings =
{
.mode = 1, // 0 = low power mode, 1 = high performance mode
.enable_gyroscope = false, // Enables gyroscope output
.enable_accelerometer = false, // Enables accelerometer output
.enable_magnetometer = false, // Enables magnetometer output // Enables quaternion output
.enable_gravity = false, // Enables gravity vector output
.enable_linearAcceleration = false, // Enables linear acceleration output
.enable_quaternion6 = true, // Enables quaternion 6DOF output
.enable_quaternion9 = false, // Enables quaternion 9DOF output
.enable_har = false, // Enables activity recognition
.enable_steps = false, // Enables step counter
.gyroscope_frequency = 1, // Max frequency = 225, min frequency = 1
.accelerometer_frequency = 1, // Max frequency = 225, min frequency = 1
.magnetometer_frequency = 1, // Max frequency = 70, min frequency = 1
.gravity_frequency = 1, // Max frequency = 225, min frequency = 1
.linearAcceleration_frequency = 1, // Max frequency = 225, min frequency = 1
.quaternion6_frequency = 50, // Max frequency = 225, min frequency = 50
.quaternion9_frequency = 50, // Max frequency = 225, min frequency = 50
.har_frequency = 50, // Max frequency = 225, min frequency = 50
.steps_frequency = 50 // Max frequency = 225, min frequency = 50
};
icm.init(icmSettings);
while(1){
icm.task();
//run_icm20948_accel_controller();
//run_icm20948_gyro_controller();
//run_icm20948_mag_controller();
//run_icm20948_linearAccel_controller();
//run_icm20948_grav_controller();
run_icm20948_quat6_controller(&icm, true);
//run_icm20948_quat9_controller(true);
//run_icm20948_har_controller();
//run_icm20948_steps_controller();
//HAL_UART_Transmit(&huart2, (const uint8_t*)sensor_string_buff, 5, 1000);
HAL_Delay(100);
}
}