Ultra Low Power (5uA) 2D Rotating Magnetic Angle Sensor + Touch + Inductive Proximity (Metal Detect)
Dependencies: IQS62x IQSDisplayTerminal mbed
IQS624 Hello World
Ultra Low Power (5uA) I2C ProxFusion™ sensor for 2D Magnetic Angle + Touch + Proximity
IQS624 connected to mbed LPC1768. The five wires are - 2x I2C, 2x Power, 1x RDY.
You can get get a low cost (<$10) evaluation kit containing the small board shown above (cables & LPC1768 not included) from Mouser - http://bit.ly/IQS624-Eval-Kit-Mouser
IQS624 Information
Azoteq IQS624 is an ultra low power (5uA) I2C sensor for 2D Rotating Magnetic Fields, Capactive Touch and Inductive Proximity.
Designed for next generation user interfaces.
Data sheet & eval kit info: http://www.azoteq.com/products/proxfusion/iqs624?mbed
IQS624 mbed Component Link
IQS624 Pinout
IQS624 Data Sheet & Evaluation Kit Information
http://www.azoteq.com/products/proxfusion/iqs624?mbed
IQS624 Interconnection
IQS624 connected to mbed Teensy 3.1 (actually Teensy 3.2) using 5 wires - 2x I2C, 2x Power, 1x RDY.
IQS624 YouTube Links
IQS624 1-minute YouTube video: http://bit.ly/IQS624Video
ProxFusion for active pens: https://youtu.be/tUImswNPQY4
Diff: main.cpp
- Revision:
- 20:f0e446e5b209
- Parent:
- 19:691019fc9891
- Child:
- 21:5e3955335251
diff -r 691019fc9891 -r f0e446e5b209 main.cpp --- a/main.cpp Sat May 13 16:12:26 2017 +0000 +++ b/main.cpp Sun May 14 16:25:11 2017 +0000 @@ -25,8 +25,8 @@ // 10. mbed LPC11U24 Azoteq adapter AZP690E01 [SDA,SCL,RDY] wired to LPC11U24 [p28,p27,p26] // These two boards additionally require the USBDevice library: https://developer.mbed.org/users/mbed_official/code/USBDevice/ -// 11. Teensy 3.1 Azoteq adapter AZP690E01 [SDA,SCL,RDY] wired to Teensy 3.1 [p18,p19,p2] -// 12. Teensy 3.2 Azoteq adapter AZP690E01 [SDA,SCL,RDY] wired to Teensy 3.2 [p18,p19,p2] +// 11. Teensy 3.1 Azoteq adapter AZP690E01 [SDA,SCL,RDY] wired to Teensy 3.1 [p18,p19,p2] +// 12. Teensy 3.2 Azoteq adapter AZP690E01 [SDA,SCL,RDY] wired to Teensy 3.2 [p18,p19,p2] // Direct wiring of ST Micro Nucleo boards to AZP690E01 (IQS621-EVAL-1 board) // CN10-3 = SCL, CN10-5 = SDA, CN10-33 = RDY, CN11 = GND, CN7-16 = 3.3V @@ -39,14 +39,16 @@ IQS62xDisplay terminal; // class to display IQS62x registers on a terminal IQS62xIO iqs62x; // class for basic IQS62x block read and write -int main() { +int main() +{ terminal.helloMessage(false); // say hello and don't wait for user keypress to continue iqs62x.configure(); // configure the IC while(1) { // main loop where we continuously display all the registers 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 = iqs62x.readChanges; // table that contains all registers that changed since the previous read - terminal.showRegisters(iqs62x.registers, highlightTable); // display the registers and highlight the ones marked in the highlight table + char * highlightTable = iqs62x.readChanges; // table with all registers that changed during previous 20 reads +#define DUMP_ALL_REGISTERS false /* dump (or not) all 16 registers on each line - nonexisting registers return 0xee */ + terminal.showRegisters(iqs62x.registers, highlightTable, DUMP_ALL_REGISTERS); // color all registers flagged in the highlight table } }