Ultra Low Power (5uA) I2C Sensor With Ambient Light Sensing (ALS) + Capacitive Proximity/Touch + Hall Effect Sensor + Inductive Proximity (Metal Detect)

Dependencies:   IQS621DisplayTerminal IQS62x mbed

Hello World! From Azoteq's IQS621 Ultra Low Power Multi-Sensor

This is a demo program for the Azoteq IQS621 ultra low power multi function sensor.

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


Low Cost Evaluation Board For Azoteq IQS621ultra low power I2C sensor for ambient light, magnetic field, capacitance, inductive proximity and temperature.

Files at this revision

API Documentation at this revision

Comitter:
AzqDev
Date:
Sun May 14 19:50:26 2017 +0000
Parent:
11:6258c43f559f
Child:
13:12c6c0af1536
Commit message:
Simplified main

Changed in this revision

IQS621DisplayTerminal.lib Show annotated file Show diff for this revision Revisions of this file
IQS62x.lib Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/IQS621DisplayTerminal.lib	Sat May 13 16:29:30 2017 +0000
+++ b/IQS621DisplayTerminal.lib	Sun May 14 19:50:26 2017 +0000
@@ -1,1 +1,1 @@
-https://developer.mbed.org/teams/Azoteq/code/IQS621DisplayTerminal/#cfd35dc9976a
+https://developer.mbed.org/teams/Azoteq/code/IQS621DisplayTerminal/#b57872cf5562
--- a/IQS62x.lib	Sat May 13 16:29:30 2017 +0000
+++ b/IQS62x.lib	Sun May 14 19:50:26 2017 +0000
@@ -1,1 +1,1 @@
-https://mbed.org/teams/Azoteq/code/IQS62x/#6a2f52b5ac46
+https://mbed.org/teams/Azoteq/code/IQS62x/#b77c819f6c6a
--- a/main.cpp	Sat May 13 16:29:30 2017 +0000
+++ b/main.cpp	Sun May 14 19:50:26 2017 +0000
@@ -41,21 +41,11 @@
 int main() {
     terminal.helloMessage(false); // say hello but don't wait for a keypress
     iqs62x.configure(); // configure the IC
+    char * color = iqs62x.getTable(color_any_register_that_changed_in_the_previous_20_reads) ;
     while(1) {
         iqs62x.readIqsRegisters(0,NUMBER_OF_REGISTERS); // read all the registers
         terminal.showStatus(iqs62x.I2Cspeed,iqs62x.I2CErrorCount); // show heading and number of I2C errors
-    
-        char * highlightTable; // a highlight table contains 1 byte for every register
-        // if a byte in a highlight table is nonzero, the corresponding register value will be highlighted during display
-        highlightTable = 0;                    // use a NULL table to make all registers print plain with no highlighting
-        highlightTable = iqs62x.readChanges;   // special table to highlight all registers that changed since the previous read
-        highlightTable = iqs62x.readChangesEver; // table that highlights all registers that ever changed since the previous read
-        highlightTable = iqs62x.writeFlag;     // special table to highlight all registers that were initialized - can be used to verify configure()
-        highlightTable = iqs62x.writeChanges;  // special table to highlight all registers that were written/configured but now contain a different value
-        
-        terminal.showRegisters(iqs62x.registers, highlightTable); // display the registers and highlight the ones marked in the table
-
+        terminal.showRegisters(iqs62x.registers, color, false); // display registers, color the registers that changed
     }    
 }
-
 // end of IQS621_HelloWorld.cpp
\ No newline at end of file