Test program for capacitive sensing using the Freescale MPR121 on the Sparkfun SEN-10250 BoB
Fork of MPR121_HelloWorld by
Hello World program that prints the bit mapped value of the electrode that is detected to the console. Also lights a LED when a press or no press state is detected.
Hardware tested:
https://www.sparkfun.com/products/10250
Platforms tested:
Information
Must add pull-ups to the I2C bus!!
LED indication for LPC1768 & LPC11U24 are opposite of KL25Z. See schematics for details :)
Diff: main.cpp
- Revision:
- 0:6f4bcfe86ac2
- Child:
- 1:684222fa16bb
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Fri Jul 26 21:41:55 2013 +0000 @@ -0,0 +1,40 @@ +#include "mbed.h" +#include "MPR121.h" + +// TODO: put IC in low power mode when disabled + +DigitalOut myled(LED1); +DigitalOut off(LED4); +Timer t; + +LogUtil logger; + +I2C i2c(p28, p27); +InterruptIn irq(p26); +MPR121 touch_pad(i2c, irq, MPR121::ADDR_VSS ); + +int main() +{ + touch_pad.init(); + touch_pad.enable(); + t.start(); + while(1) + { + if(touch_pad.isPressed()) + { + uint16_t button_val = touch_pad.buttonPressed(); + LOG("button = 0x%04x\n", button_val); + myled = (button_val>0) ? 1 : 0; + } +// if(t.read_ms() > 5000) +// { +// touch_pad.disable(); +// off = 1; +// wait(5.0f); +// off = 0; +// touch_pad.enable(); +// t.reset(); +// } + + } +}