Class for making communication easier from code to i2c connected Rohm/Kionix sensors. Maybe could be used later also for abstracting Arduino/mbed os. Code ported from 'C'-library rohm-sensor-hal.

Dependents:   kionix-kx123-hello rohm-bh1790glc-hello simple-sensor-client rohm-SensorShield-example

Fork of rohm-sensor-hal by Rohm

Files at this revision

API Documentation at this revision

Comitter:
MikkoZ
Date:
Mon Oct 03 11:07:46 2016 +0000
Parent:
8:dea50f607a45
Child:
10:7ac47540f580
Commit message:
Doxygen documentation updated.

Changed in this revision

RegisterWriter/RegisterWriter.h Show annotated file Show diff for this revision Revisions of this file
--- a/RegisterWriter/RegisterWriter.h	Thu Sep 29 15:10:08 2016 +0000
+++ b/RegisterWriter/RegisterWriter.h	Mon Oct 03 11:07:46 2016 +0000
@@ -17,11 +17,14 @@
 
 #include "rohm_hal2.h"       //types, DEBUG_print*, USE_*_HARDWARE_I2C
 
+/**
+* RegisterWriter class for writing sensor registers via I2C object
+*/
 class RegisterWriter
 {
 public:
     /**
-    * Use pre-instantiated I2C instance for hal.
+    * Use pre-instantiated I2C instance for HAL.
     *
     * @param i2c_obj pre-instantiated i2c object.
     */
@@ -35,18 +38,51 @@
     */
     RegisterWriter(PinName sda = I2C_SDA, PinName scl = I2C_SCL);
 
-    /**
-    * RegisterWriter destructor
-    */
     ~RegisterWriter();
 
     /**
-    * read/write commands for sensor registers
+    * General read @buf_len value(s) to @*buf from sensor @reg in address @sad.
+    * @param sad Slave address of sensor
+    * @param reg Register of sensor
+    * @param *buf uint8_t[@buf_len] for read data
+    * @param buf_len amount of data to read from @reg
     */
     uint8_t read_register(uint8_t sad, uint8_t reg, uint8_t* buf, uint8_t buf_len);
+
+    /**
+    * FIFO Read @buf_len value(s) to @*buf from sensor @reg in address @sad.
+    * Difference is the usage of stop-bit between commands.
+    * @param sad Slave address of sensor
+    * @param reg Register of sensor
+    * @param *buf uint8_t[@buf_len] for read data
+    * @param buf_len amount of data to read from @reg
+    */
     uint8_t read_fifo_register(uint8_t sad, uint8_t reg, uint8_t* buf, uint8_t buf_len);
+
+    /**
+    * Write @data_len value(s) from @*data to sensor @reg in address @sad.
+    * @param sad Slave address of sensor
+    * @param reg Register of sensor
+    * @param *data uint8_t[@data_len] for written data
+    * @param data_len amount of data to written to @reg
+    */
     void write_register(uint8_t sad, uint8_t reg, uint8_t* data, uint8_t data_len);
+
+    /**
+    * Write 1 value from @data to sensor @reg in address @sad.
+    * @param sad Slave address of sensor
+    * @param reg Register of sensor
+    * @param data to be written
+    */
     void write_register(uint8_t sad, uint8_t reg, uint8_t data);
+
+    /**
+    * Read-change-write register (@sad/@reg)
+    * @param sad Slave address of sensor
+    * @param reg Register of sensor
+    * @param mask bits to clear before applying new @bits
+    * @param bits value to write
+    */
     bool change_bits(uint8_t sad, uint8_t reg, uint8_t mask, uint8_t bits);
 
 private: