Library for Bosch Sensortec BMI160 IMU
Dependents: Rocket MAX32630FTHR_JOYSTICK MAX32630FTHR_IMU_Hello_World Pike_the_Flipper_Main_Branch ... more
Fork of BMI160 by
Diff: bmi160.h
- Revision:
- 14:646eb94fa2eb
- Parent:
- 13:5d132f873b07
- Child:
- 15:dc35ccc0b08e
--- a/bmi160.h Tue Dec 20 19:02:36 2016 +0000 +++ b/bmi160.h Tue Dec 20 19:32:26 2016 +0000 @@ -206,11 +206,16 @@ ///Error register data ///@{ - static const uint8_t FATAL_ERR = 0x01; - static const uint8_t ERR_CODE = 0x1E; - static const uint8_t I2C_FAIL_ERR = 0x20; - static const uint8_t DROP_CMD_ERR = 0x40; - static const uint8_t MAG_DRDY_ERR = 0x80; + static const uint8_t FATAL_ERR_MASK = 0x01; + static const uint8_t FATAL_ERR_POS = 0x00; + static const uint8_t ERR_CODE_MASK = 0x1E; + static const uint8_t ERR_CODE_POS = 0x01; + static const uint8_t I2C_FAIL_ERR_MASK = 0x20; + static const uint8_t I2C_FAIL_ERR_POS = 0x05; + static const uint8_t DROP_CMD_ERR_MASK = 0x40; + static const uint8_t DROP_CMD_ERR_POS = 0x06; + static const uint8_t MAG_DRDY_ERR_MASK = 0x80; + static const uint8_t MAG_DRDY_ERR_POS = 0x08; ///Enumerated error codes enum ErrorCodes @@ -237,6 +242,8 @@ static const uint8_t ACC_BWP_POS = 0x04; static const uint8_t ACC_US_MASK = 0x80; static const uint8_t ACC_US_POS = 0x07; + static const uint8_t ACC_RANGE_MASK = 0x0F; + static const uint8_t ACC_RANGE_POS = 0x00; ///Accelerometer output data rates enum AccOutPutDataRate @@ -287,10 +294,10 @@ ///Accelerometer configuration data structure struct AccConfig { - AccRange range; - AccUnderSampling us; - AccBandWidthParam bwp; - AccOutPutDataRate odr; + AccRange range; ///<Accelerometer range + AccUnderSampling us; ///<Accelerometr undersampling mode + AccBandWidthParam bwp; ///<Accelerometer bandwidth param + AccOutPutDataRate odr; ///<Accelerometr output data rate }; ///Accelerometer default configuration @@ -298,6 +305,13 @@ ///@} + ///@name GYR_CONF(0x42) and GYR_RANGE(0x43) + ///Data for configuring gyroscope + ///@{ + + ///@} + + ///Enumerated power modes enum PowerModes { @@ -422,6 +436,19 @@ int32_t setAccConfig(const AccConfig &config); + ///@brief Get accelerometer configuration.\n + /// + ///On Entry: + ///@param[in] config - Accelerometer configuration data structure + /// + ///On Exit: + ///@param[out] config - on success, holds accelerometer's current + ///configuration + /// + ///@returns 0 on success, non 0 on failure + int32_t getAccConfig(AccConfig &config); + + ///@brief Get accelerometer axis as float.\n /// ///On Entry: