Modified for compatibility with Rev.E. hardware

Fork of AkmSensor by AKM Development Platform

Revision:
37:c76d2edf3426
Parent:
34:1ea3357c8d9a
Child:
43:45225713cd58
--- a/akmanalogsensor.h	Fri May 19 23:13:23 2017 +0000
+++ b/akmanalogsensor.h	Wed May 24 20:23:22 2017 +0000
@@ -11,8 +11,10 @@
  *
  * List of Devices: 
  *
- * Current Sensors: CQ3300, CQ3301, CQ3302, CQ3303, CQ330A, CQ330B, CQ330E,
- * CQ330F, CQ330G, CQ330H
+ * Current Sensors CQ32xx: CQ3200, CQ3201, CQ3202, CQ3203, CQ3204, CQ320A, CQ320B,
+ * 
+ * Current Sensors CQ33xx: CQ3300, CQ3301, CQ3302, CQ3303, CQ330A, CQ330B, CQ330E,
+ * CQ330F, CQ330G, CQ330H, CQ330J
  * 
  * Linear Sensors: EQ430L, EQ431L, EQ432L, EQ433L
  *
@@ -28,7 +30,20 @@
     typedef AkmSensor base;
 
     /**
-     * Sub-IDs for current sensor devices. Primary ID = 09h
+     * Sub-IDs for current sensor CQ32xx devices. Primary ID = 07h
+     */
+    typedef enum {
+        SUB_ID_CQ3200               = 0x01,         /**< CQ3200: ID = 01h */
+        SUB_ID_CQ3201               = 0x02,         /**< CQ3201: ID = 02h */
+        SUB_ID_CQ3202               = 0x03,         /**< CQ3202: ID = 03h */
+        SUB_ID_CQ3203               = 0x04,         /**< CQ3203: ID = 04h */
+        SUB_ID_CQ3204               = 0x05,         /**< CQ3204: ID = 05h */
+        SUB_ID_CQ320A               = 0x06,         /**< CQ320A: ID = 06h */
+        SUB_ID_CQ320B               = 0x07,         /**< CQ320B: ID = 07h */
+    } SubIdCurrentSensor3v;
+    
+    /**
+     * Sub-IDs for current sensor CQ33xx devices. Primary ID = 09h
      */
     typedef enum {
         SUB_ID_CQ3300               = 0x01,         /**< CQ3300: ID = 01h */
@@ -41,7 +56,11 @@
         SUB_ID_CQ330F               = 0x08,         /**< CQ330F: ID = 08h */
         SUB_ID_CQ330G               = 0x09,         /**< CQ330G: ID = 09h */
         SUB_ID_CQ330H               = 0x0A,         /**< CQ330H: ID = 0Ah */
-    } SubIdCurrentSensor;
+        SUB_ID_CQ330J               = 0x0B,         /**< CQ330J: ID = 0Bh */
+        SUB_ID_CZ3813               = 0x0D,         /**< CQ3813: ID = 0Dh */
+        SUB_ID_CZ3814               = 0x0E,         /**< CQ3814: ID = 0Eh */
+        SUB_ID_CZ3815               = 0x0F,         /**< CQ3815: ID = 0Fh */
+    } SubIdCurrentSensor5v;
 
     /**
      * Sub-IDs for miscellaneous devices. Primary ID = 0Ah
@@ -56,9 +75,9 @@
      */
     typedef enum {
         SUB_ID_EQ430L               = 0x01,         /**< EQ430L: ID = 01h */
-        SUB_ID_EQ431L               = 0x02,         /**< EQ */
-        SUB_ID_EQ432L               = 0x03,         /**<  */
-        SUB_ID_EQ433L               = 0x04,         /**<  */
+        SUB_ID_EQ431L               = 0x02,         /**< EQ431L: ID = 02h */
+        SUB_ID_EQ432L               = 0x03,         /**< EQ432L: ID = 03h */
+        SUB_ID_EQ433L               = 0x04,         /**< EQ433L: ID = 04h */
     } SubIdLinearSensor;
 
     /**