My implementation of Bosh BMI160 Only I2C is tested so far.

Dependents:   test_BMI160 TFT_test_MAX32630FTHR

Revision:
4:93f16677f730
Parent:
3:9d3079170b35
--- 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: