Library to read and write Azoteq IQS6xx device registers via I2C.

Dependents:   IQS620_HelloWorld IQS622_HelloWorld IQS624_HelloWorld IQS621_HelloWorld ... more

Library: IQS62x

Library to read and write Azoteq IQS6xx device registers via I2C.

Supported Devices

Components / IQS620A
Ultra low power sensor for magnetic field, capacitive touch and inductive proximity. Empowers next-generation user interfaces.

Components / IQS621
Azoteq IQS621 ultra low power sensor for ambient light, magnetic field, capacitance and inductive proximity. Empowers next-generation user interfaces.

Components / IQS622
Azoteq IQS622 ultra low power sensor for ambient light, active (reflective) IR, magnetic field, capacitance and inductive proximity. Empowers next-generation user interfaces.

Components / IQS624
Ultra low power sensor for rotating magnetic field, capacitive touch, and inductive proximity. Empowers next-generation user interfaces.

Handy Table of ProxFusion Device Features


ALS = Ambient Light Sensor PIR = Passive Infrared

/media/uploads/AzqDev/mbed-azoteq-proxfusion-handy-table-of-product-features.jpg

Revision:
14:2514595e2753
Parent:
12:5a9bbbd6e312
Child:
16:b77c819f6c6a
--- a/IQS62x.h	Sat May 13 09:26:47 2017 +0000
+++ b/IQS62x.h	Sat May 13 10:12:37 2017 +0000
@@ -31,13 +31,15 @@
     DigitalIn IQSready; // ready pin
     const static int I2Cspeed = I2CSPEED; // I2C clock rate
     int I2CErrorCount; // number of I2C errors
+    int IQSframes; // number of reads we've done
     char I2CBuffer    [I2CBufferSize]; // I2C read buffer
 
-    char writeFlag     [I2CBufferSize]; // to remember our if we wrote to this register
-    char lastWrite     [I2CBufferSize]; // to remember what we wrote to this register
-    char lastRead      [I2CBufferSize]; // to remember what we read from this register
-    char readChanges   [I2CBufferSize]; // to log changes from previous read
-    char writeChanges  [I2CBufferSize]; // to log changes from what we wrote
+    char writeFlag       [I2CBufferSize]; // to remember our if we wrote to this register
+    char lastWrite       [I2CBufferSize]; // to remember what we wrote to this register
+    char lastRead        [I2CBufferSize]; // to remember what we read from this register
+    char readChanges     [I2CBufferSize]; // to log changes from previous read
+    char readChangesEver [I2CBufferSize]; // to log changes from previous read BUT this one never forgets a change
+    char writeChanges    [I2CBufferSize]; // to log changes from what we wrote
 
     char * registers; // pointer to I2C read buffer
     IQS62xIO(); // constructor