Azoteq IQS624 Serial Terminal Display Class

Dependents:   IQS624_HelloWorld Nucleo_ACM1602_I2C_DC_Angle

Library: IQSDisplayTerminal

Library for formatted display of IQS624 registers on a serial terminal

Screen Capture

Below is a screen capture of formatted output on a serial terminal program.
Note that over a million frames were captured with zero I2C errors. /media/uploads/AzqDev/iqs624-display-screencap-1m.gif

IQS624 Summary

Ultra low power I2C sensor for 2D Magnetic Angle, Capacitive touch and Inductive Proximity

IQS624 mbed Component Link

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


IQS624 Pinout

/media/uploads/AzqDev/iqs624-pinout-s3.gif

/media/uploads/AzqDev/iqs624-and-lpc1768-tiny.gif

IQS624 Connected to mbed LPC1768 board. The five wires are power(2), I2C(2) and RDY(1).

IQS624 Data Sheet

Azoteq IQS624 Data sheet & Evaluation Kit Information: http://bit.ly/IQS624_ds



IQS624 YouTube Link

IQS624 1-minute YouTube video: http://bit.ly/IQS624Video

Committer:
AzqDev
Date:
Tue Feb 07 22:36:01 2017 +0000
Revision:
2:1403d6a6af7b
Parent:
0:77730e5a870b
Child:
3:7932615d9349
Tested for Teensy 3.1 and Teensy 3.2; Added USBDevice library for boards with supported USB peripheral (e.g. Teensy)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AzqDev 0:77730e5a870b 1 // A class library to display Azoteq IQS62x registers on a terminal
AzqDev 0:77730e5a870b 2 #include "mbed.h"
AzqDev 2:1403d6a6af7b 3
AzqDev 0:77730e5a870b 4 #define DISPLAY_BAUD_RATE 115200 /* baud rate of serial terminal */
AzqDev 2:1403d6a6af7b 5
AzqDev 2:1403d6a6af7b 6 #if defined(TARGET_TEENSY3_1) || defined (TARGET_TEENSY3_2) || IQS_USE_USBSERIAL
AzqDev 2:1403d6a6af7b 7 #include "USBSerial.h"
AzqDev 2:1403d6a6af7b 8 #endif
AzqDev 2:1403d6a6af7b 9
AzqDev 2:1403d6a6af7b 10 #if defined(TARGET_TEENSY3_1) || defined (TARGET_TEENSY3_2) || IQS_USE_USBSERIAL
AzqDev 2:1403d6a6af7b 11 class IQS62xDisplay : public USBSerial { // use our own USB serial port (requires USB driver to be installed, see Teensy Website)
AzqDev 2:1403d6a6af7b 12 public: void baud(int baudRate);
AzqDev 2:1403d6a6af7b 13 #else
AzqDev 2:1403d6a6af7b 14 class IQS62xDisplay : public Serial { // use ARM mbed virtual serial port
AzqDev 2:1403d6a6af7b 15 #endif
AzqDev 2:1403d6a6af7b 16
AzqDev 0:77730e5a870b 17 public:
AzqDev 0:77730e5a870b 18 int frameCounter;
AzqDev 0:77730e5a870b 19 IQS62xDisplay(); // constructor
AzqDev 0:77730e5a870b 20 void helloMessage(bool); // show startup message
AzqDev 0:77730e5a870b 21 void showStatus(int,int); // show headings and I2C Error Count
AzqDev 0:77730e5a870b 22 void showRegisters(char *); // show IQS62x registers
AzqDev 0:77730e5a870b 23 };