
16-клавишный емкостный сенсорный модуль TTP229 (I2C / 2-Wire)
# 16-клавишный емкостный сенсорный модуль TTP229 (I2C / 2-Wire) Сенсорная клавиатура на базе микросхемы TTP229BSF от RobotDyn содержит 16 емкостных сенсорных каналов. Модуль фиксирует касания пальцев,
- Артикул:
- 2351
# 16-клавишный емкостный сенсорный модуль TTP229 (I2C / 2-Wire)
Сенсорная клавиатура на базе микросхемы TTP229BSF от RobotDyn содержит 16 емкостных сенсорных каналов. Модуль фиксирует касания пальцев, металлических предметов или электропроводящих материалов (проводящие чернила, фрукты). Поддерживает два режима работы: простой 8-клавишный с прямыми выходами и 16-клавишный с передачей данных по двухпроводному последовательному интерфейсу (SCL/SDO).
---
### Технические характеристики
| Параметр | Значение |
| --- | --- |
| Микросхема | TTP229BSF (TonTouch) |
| Количество сенсорных каналов | 16 входов (Pads) |
| Напряжение питания (VCC) | 2.4 – 5.5 В DC |
| Интерфейс связи (16-key mode) | 2-проводный последовательный (SCL clock / SDO data) |
| Прямые выходы (8-key mode) | 8 каналов (`OUT1 – OUT8`), активный высокий уровень (HIGH) |
| Режимы работы | 8 клавиш (параллельный выход) / 16 клавиш (последовательный) |
| Автокалибровка | Да (~4 секунды подстройка под фоновую емкость) |
| Регулировка чувствительности | Заменой конденсатора C4 (1–50 нФ) |
| Габариты платы | 65 × 50 мм |
---
### Настройка режимов работы (Перемычка TP2)
- Режим 8 клавиш (TP2 разомкнута): Активированы входы 1–8. Выходы `OUT1–OUT8` напрямую дублируют нажатия. Поддерживается одновременное нажатие нескольких клавиш.
- Режим 16 клавиш (TP2 замкнута): Активированы все 16 сенсорных площадок. Данные считываются микроконтроллером по стробируемой линии `SCL` и `SDO`.
---
### Пример скетча для Arduino (Режим 16 клавиш)
Считывание состояния 16 сенсорных кнопок путем последовательной подачи импульсов на SCL:
```cpp
#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); // При нажатии уровень LOW
}
}
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("Нажата клавиша (маска): 0x");
Serial.println(keys, HEX);
}
delay(50);
}
```
---
### Область применения
- Панели ввода и клавиатуры: Замена механических кнопок в терминалах, кодовых замках и терминалах ввода PIN-кода.
- Герметичные интерфейсы: Управление приборами через защитное оргстекло, пластик или стекло.
- Музыкальные контроллеры: Создание DIY MIDI-клавиатур и интерактивных синтезаторов.
- Учебные STEM-проекты: Создание интерактивных наборов (аналоги MaKey MaKey) для экспериментов с проводимостью.
---
### Преимущества
- 1. Отсутствие подвижных деталей
- Емкостная технология исключает дребезг контактов и механический износ.
- 2. Гибкая настройка чувствительности
- Замена конденсатора C4 (например, на 4.7 нФ) позволяет работать через толстые защитные накладки.
- 3. Экономия портов контроллера
- В 16-клавишном режиме используется всего 2 цифровых пина (`SCL` и `SDO`).
- 4. Автоматическая калибровка
- Модуль адаптируется к изменениям влажности и температуры каждые 4 секунды.



