void MPU9150::getAccelScaled(float *ax, float *ay, float *az) { int16_t a1, a2, a3; getAcceleration(&a1, &a2, &a3); uint8_t rangeMode = getFullScaleAccelRange(); int fullScaleRange; switch (rangeMode) { case (0) : fullScaleRange = ACCEL_FCR_2; break; case (1) : fullScaleRange = ACCEL_FCR_4; break; case (2) : fullScaleRange = ACCEL_FCR_8; break; case (3) : fullScaleRange = ACCEL_FCR_16; break; default: fullScaleRange = ACCEL_FCR_2; break; } *ax = normalize(a1, fullScaleRange); *ay = normalize(a2, fullScaleRange); *az = normalize(a3, fullScaleRange); }
int CurieIMUClass::getAccelerometerRange() { int range; switch (getFullScaleAccelRange()) { case BMI160_ACCEL_RANGE_2G: range = 2; break; case BMI160_ACCEL_RANGE_4G: range = 4; break; case BMI160_ACCEL_RANGE_8G: range = 8; break; case BMI160_ACCEL_RANGE_16G: default: range = 16; break; } return range; }
int CurieIMUClass::getAccelerometerRange() { return getFullScaleAccelRange(); }