Datasheet
// Turn off multitouch so only one button pressed at a time
cap.writeRegister(0x2A, 0x80); // 0x2A default 0x80 use 0x41 — Set multiple touches back to off
cap.writeRegister(0x41, 0x39); // 0x41 default 0x39 use 0x41 — Set "speed up" setting back to off
cap.writeRegister(0x72, 0x00); // 0x72 default 0x00 — Sets LED links back to off (default)
cap.writeRegister(0x44, 0x41); // 0x44 default 0x40 use 0x41 — Set interrupt on press but not release
cap.writeRegister(0x28, 0x00); // 0x28 default 0xFF use 0x00 — Turn off interrupt repeat on button hold
EIFR = 1; // clear flag for interrupt 1
attachInterrupt(1, routine_Interrupt_CAP1188, FALLING);
}
void loop() {
// Serial.println(digitalRead(3));
uint8_t touched = cap.touched();
if (touched == 0) {
// No touch detected
// return;
}
for (uint8_t i=0; i<8; i++) {
if (touched & (1 << i)) {
Serial.print("C"); Serial.print(i+1); Serial.print("\t");
}
}
Serial.println();
delay(50);
Serial.print("Interrupt: "); Serial.println(interrupt);
}
void routine_Interrupt_CAP1188() {
++interrupt;
}
© Adafruit Industries https://learn.adafruit.com/adafruit-cap1188-breakout Page 18 of 19