예제 #1
0
void CurieIMUClass::setAccelerometerOffset(int axis, int offset)
{
    if (axis == X_AXIS) {
        setXAccelOffset(axis);
    } else if (axis == Y_AXIS) {
        setYAccelOffset(axis);
    } else if (axis == Z_AXIS) {
        setZAccelOffset(axis);
    }

    setAccelOffsetEnabled(true);
}
예제 #2
0
void CurieIMUClass::setAccelerometerOffset(int axis, float offset)
{
    int bmiOffset = offset / 3.9;

    if (bmiOffset < -128) {
        bmiOffset = -128;
    } else if (bmiOffset > 127) {
        bmiOffset = 127;
    }

    if (axis == X_AXIS) {
        setXAccelOffset(bmiOffset);
    } else if (axis == Y_AXIS) {
        setYAccelOffset(bmiOffset);
    } else if (axis == Z_AXIS) {
        setZAccelOffset(bmiOffset);
    }

    setAccelOffsetEnabled(true);
}
예제 #3
0
void CurieIMUClass::autoCalibrateAccelerometerOffset(int axis, int target)
{
    switch (axis) {
        case X_AXIS:
            autoCalibrateXAccelOffset(target);
            break;

        case Y_AXIS:
            autoCalibrateYAccelOffset(target);
            break;

        case Z_AXIS:
            autoCalibrateZAccelOffset(target);
            break;

        default:
            break;
    }

    setAccelOffsetEnabled(true);
}
예제 #4
0
void CurieIMUClass::noAccelerometerOffset()
{
    setAccelOffsetEnabled(false);
}
예제 #5
0
void CurieIMUClass::enableAccelerometerOffset(bool state)
{
    setAccelOffsetEnabled(state);
}