My implementation of Bosh BMI160 Only I2C is tested so far.
Dependents: test_BMI160 TFT_test_MAX32630FTHR
Revision 4:93f16677f730, committed 2017-09-12
- Comitter:
- Rhyme
- Date:
- Tue Sep 12 00:52:49 2017 +0000
- Parent:
- 3:9d3079170b35
- Commit message:
- documents addded
Changed in this revision
BMI160.h | Show annotated file Show diff for this revision Revisions of this file |
diff -r 9d3079170b35 -r 93f16677f730 BMI160.h --- a/BMI160.h Tue Sep 12 00:34:16 2017 +0000 +++ b/BMI160.h Tue Sep 12 00:52:49 2017 +0000 @@ -51,25 +51,140 @@ * @returns the chip ID (supposed to be 0xD1) */ uint8_t getChipID(void) ; + +/** + * get range of Acc (0x41) + * @param none + * @returns accelerometer g-range + * @note the value is 2, 4, or 8 + */ uint8_t getAccRange(void) ; + +/** + * get range of Gyr (0x43) + * @param none + * @returns Angular Rate Range and Resolution + * @note the values are + * @note 2000 ( 16.4 LSB/deg/s <-> 61.0 mdeg/s/LSB) + * @note 1000 ( 32.8 LSB/deg/s <-> 30.5 mdeg/s/LSB) + * @note 500 ( 65.6 LSB/deg/s <-> 15.3 mdeg/s/LSB) + * @note 250 (131.2 LSB/deg/s <-> 7.6 mdeg/s/LSB) + * @note 125 (262.4 LSB/deg/s <-> 3.8 mdeg/s/LSB) + */ int16_t getGyrRange(void) ; + +/** + * get Raw acc x value + * @param none + * @returns 16bit signed value + */ + int16_t getAccRawX(void) ; - int16_t getAccRawX(void) ; +/** + * get Raw acc y value + * @param none + * @returns 16bit signed value + */ int16_t getAccRawY(void) ; + +/** + * get Raw acc z value + * @param none + * @returns 16bit signed value + */ int16_t getAccRawZ(void) ; + +/** + * get Raw gyr x value + * @param none + * @returns 16bit signed value + */ int16_t getGyrRawX(void) ; + +/** + * get Raw gyr y value + * @param none + * @returns 16bit signed value + */ int16_t getGyrRawY(void) ; + +/** + * get Raw gyr z value + * @param none + * @returns 16bit signed value + */ int16_t getGyrRawZ(void) ; + +/** + * get Raw acc x,y,z values + * @param 16bit array address to receive the data + * @returns none + */ void getAccRaw(int16_t *value) ; - void getGyrRaw(int16_t *value) ; +/** + * get Raw gyr x,y,z values + * @param 16bit array address to receive the data + * @returns none + */ + void getGyrRaw(int16_t *value) ; + +/** + * get acc x value + * @param none + * @returns value (-acc_range ~ +acc_range) + */ float getAccX(void) ; + +/** + * get acc y value + * @param none + * @returns value (-acc_range ~ +acc_range) + */ float getAccY(void) ; + +/** + * get acc z value + * @param none + * @returns value (-acc_range ~ +acc_range) + */ float getAccZ(void) ; + +/** + * get gyr x value + * @param none + * @returns value (-gyr_range ~ +gyr_range) + */ float getGyrX(void) ; + +/** + * get gyr y value + * @param none + * @returns value (-gyr_range ~ +gyr_range) + */ float getGyrY(void) ; + +/** + * get gyr z value + * @param none + * @returns value (-gyr_range ~ +gyr_range) + */ float getGyrZ(void) ; + +/** + * get acc x, y, z values + * @param float array address to receive the values + * @returns none + * @note the value range is (-acc_range ~ +acc_range) + */ void getAcc(float *value) ; + +/** + * get gyr x, y, z values + * @param float array address to receive the values + * @returns none + * @note the value range is (-gyr_range ~ +gyr_range) + */ void getGyr(float *value) ; private: