Тема: MPR121 - малопотребляющий контроллер сенсорных емкостных клавиатур
Основная статья - http://rcl-radio.ru/?p=131456
Данный контент доступен только зарегистрированным пользователям.
#include <MPR121.h>
#include <Wire.h>
const uint8_t LEDPIN = 13; // pin 4 is the MPR121 interrupt on the Bare Touch Board
void setup() {
Serial.begin(9600);
MPR121.begin(0x5A); // MPR121 I2C address
MPR121.setInterruptPin(LEDPIN);
MPR121.setTouchThreshold(40); // Устанавливает порог касания равным 40, допустимые значения от 0 до>255
MPR121.setReleaseThreshold(20); // Устанавливает порог разблокировки равным 20, допустимые значения от 0 до>255.ПРИМЕЧАНИЕ: это значение должно быть меньше значения касания.
MPR121.setFFI(FFI_10);
MPR121.setSFI(SFI_10);
MPR121.setGlobalCDT(CDT_4US); // reasonable for larger capacitances
MPR121.autoSetElectrodes(); // autoset all electrode settings
}
void loop() {
MPR121.updateAll();
for (int i = 0; i < 12; i++) {
if (MPR121.isNewTouch(i)) {
Serial.print("button ");
Serial.println(i);
}
}
}