16 Tasten Kapazitive Touch-TTP229 I2C Module
Überblick
Kapazitives Touch-Modul basierend auf dem TTP229BSF mit 16 unabhängigen Touch-Eingängen, kommunizierend über I²C-ähnliches serielles Protokoll (2 Drähte). Erkennt Berührung auf jedem leitfähigen Material — eigene PCB-Pads, Metallobjekte, leitfähige Tinte oder sogar Früchte (perfekt für MaKey MaKey-Projekte).
Spezifikationen
| Spezifikation | Wert |
|---|---|
| Sensor IC | TTP229BSF |
| Touch Inputs | 16 (or 8 in 8-key mode) |
| Interface | I2C (2-wire serial) or single-output mode |
| Operating Voltage | 2.4 V – 5.5 V |
| Operating Current (16-key mode) | 2.5 µA typical |
| Operating Current (8-key mode) | 2.0 µA typical |
| Sensitivity Adjustment | External capacitor 0–50 pF |
| Re-calibration Period | ~4 seconds (auto) |
| Output Logic | Active HIGH on key press |
| Multi-touch | Single-key only (16-key mode); multi in 8-key mode |
| Operating Temperature | −40 °C to +85 °C |
Typische Anwendungen
- Eigene Tastaturen (PIN-Eingabe, Menünavigation)
- Musik-Controller (MIDI-Tasten)
- Interaktive Kunstinstallationen
- Bildungsprojekte à la MaKey MaKey (Bananen-Klavier)
- Industrielle Bedienpanels mit versiegelter Oberfläche
Programmierung
#define SCL_PIN 2
#define SDO_PIN 3
uint16_t readTouch() {
uint16_t data = 0;
for (int i = 0; i < 16; i++) {
digitalWrite(SCL_PIN, LOW);
delayMicroseconds(2);
digitalWrite(SCL_PIN, HIGH);
delayMicroseconds(2);
if (digitalRead(SDO_PIN) == LOW) {
data |= (1 << i); // active LOW on press
}
}
return data;
}
void setup() {
pinMode(SCL_PIN, OUTPUT);
pinMode(SDO_PIN, INPUT);
digitalWrite(SCL_PIN, HIGH);
Serial.begin(9600);
}
void loop() {
uint16_t keys = readTouch();
if (keys) {
Serial.print("Keys: 0x");
Serial.println(keys, HEX);
}
delay(50);
}