
4×4 Membrane Keypad
DFRobot (референс FIT0129); есть безымянные варианты · 4×4 мембранная клавиатура; референс DFRobot FIT0129
Ввод цифр и команд через 16-кнопочную пассивную матрицу.
Автор: SLDV LAB
Опубликовано · Обновлено
О МОДУЛЕ
Что делает 4×4 мембранная клавиатура; референс DFRobot FIT0129
Мембранная клавиатура объединяет 16 кнопок в четыре ряда и четыре столбца. Документированный образец — DFRobot FIT0129 с клеевым слоем и гибким шлейфом. Это пассивная матрица, в ней нет отдельного I²C-контроллера. Рисунок клавиш и порядок жил необходимо сверить: произвольная восьмиконтактная мембрана не гарантирует ту же распайку.
Библиотека по очереди сканирует линии и сопоставляет пару «ряд–столбец» символу. В примере задан распространённый рисунок 1–9, A–D, *, 0, #; он является настраиваемой картой приложения. Приведённая производителем внутренняя схема использует обозначения 0–F, поэтому её номера нельзя принимать за обязательные надписи на лицевой стороне.
Без подтверждённых развязывающих диодов нельзя рассчитывать на корректные произвольные комбинации клавиш: возможен ghosting. Пример рассчитан на последовательные одиночные нажатия. Клавиатура не хранит PIN и не обеспечивает защиту сама по себе; проверка доступа и ограничение попыток относятся к приложению. Гибкий шлейф не следует резко перегибать у выхода из мембраны.
Мембранная клавиатура 4×4, DFRobot FIT0129. Фото: DFRobot; https://www.dfrobot.com/product-450.html. Лицензия на повторное использование не установлена. Удалён фон; объект равномерно масштабирован, детали и маркировка сохранены.
Схема соединений SLDV LAB показывает функции контактов для примера карточки; порядок строк не задаёт физическое расположение выводов.
Характеристики
- Кнопок
- 16
- Матрица
- 4 ряда × 4 столбца
- Сигнальных линий
- 8
- Встроенный контроллер
- Нет
- Монтаж референса
- Клеевой слой и гибкий шлейф
- Питание модуля
- Отдельное питание не требуется: матрица подключается только к GPIO. С Uno линии сканируются уровнями 5 В, с ESP32 — 3,3 В; не подключать один шлейф одновременно к двум контроллерам.
ПРАКТИКА
Подключение
| Контакт модуля | Контакт платы | Назначение |
|---|---|---|
| R1 / ряд сверху 1 | D9 Uno R3 | Определить по матрице и прозвонке шлейфа; rowPins в таком же порядке. |
| R2 / ряд сверху 2 | D8 Uno R3 | Определить по матрице и прозвонке шлейфа; rowPins в таком же порядке. |
| R3 / ряд сверху 3 | D7 Uno R3 | Определить по матрице и прозвонке шлейфа; rowPins в таком же порядке. |
| R4 / ряд сверху 4 | D6 Uno R3 | Определить по матрице и прозвонке шлейфа; rowPins в таком же порядке. |
| C1 / столбец слева 1 | D5 Uno R3 | colPins; постоянный VCC/GND к шлейфу не подводят. |
| C2 / столбец слева 2 | D4 Uno R3 | colPins; постоянный VCC/GND к шлейфу не подводят. |
| C3 / столбец слева 3 | D3 Uno R3 | colPins; постоянный VCC/GND к шлейфу не подводят. |
| C4 / столбец слева 4 | D2 Uno R3 | colPins; постоянный VCC/GND к шлейфу не подводят. |
| Альтернатива ESP32 DevKitC / ESP32-WROOM-32 | R1–R4 → GPIO13,14,16,17; C1–C4 → GPIO18,19,25,26 | Заменить массивы GPIO. Только для указанной WROOM-32; на WROVER или других ESP32 выводы могут быть заняты. |
Подходит для Arduino, ESP32. Выберите контакты по документации своей платы.
ВАШ ПРОЕКТ · ВАШ ДАТЧИК
Интегрируйте модуль с ChatGPT
Скопируйте запрос в ChatGPT. Укажите свою плату и среду разработки — получите подключение и код для своего проекта.
Помоги интегрировать 4×4 Membrane Keypad (4×4 мембранная клавиатура; референс DFRobot FIT0129) в мой проект. Сначала уточни точную плату контроллера, среду, маркировку и фото компонента, задачу и условия эксплуатации. Не переноси параметры референсного изделия на внешне похожий безымянный экземпляр. Не угадывай нумерацию восьмиконтактного шлейфа. Сначала найди матрицу прозвонкой и сопоставь её надписям; настрой карту символов и Keypad 3.1.1. Объясни ghosting и ограничения getKey для одиночного ввода. Подготовь согласованные распиновку, питание и уровни сигналов, необходимые зависимости, полный минимальный пример и пошаговую проверку. Объясни обработку дребезга, обрыва или недостоверных показаний, если это применимо. Для ESP32 уточни модификацию и доступные GPIO; 5 В на GPIO ESP32 недопустимы. Не заявляй о стендовом тестировании без результатов измерений.
Библиотеки
Установите библиотеку для своей среды и откройте пример из её документации.
Что именно прописать
- Среда
Arduino Uno R3 / AVR Boards 1.8.6 / Keypad 3.1.1Keypad by Mark Stanley, Alexander Brevig; проверена опубликованная версия API.
- Заголовок
#include <Keypad.h>Добавить в начало скетча.
- Ряды
R1–R4 = D9,D8,D7,D6R1 — верхний ряд по лицевой стороне; это функциональные названия, не номера жил.
- Столбцы
C1–C4 = D5,D4,D3,D2C1 — левый столбец; соответствие выводов сначала определить прозвонкой.
- Инициализация
Keypad keypad(makeKeymap(keys), rowPins, colPins, 4, 4);Карта символов должна соответствовать вашей наклейке; фильтр в примере 20 мс.
Uno R3 · одиночные нажатия через Keypad
cpp#include <Arduino.h>
#include <Keypad.h>
constexpr byte ROWS = 4, COLS = 4;
char keys[ROWS][COLS] = {
{'1','2','3','A'},
{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}
};
byte rowPins[ROWS] = {9, 8, 7, 6};
byte colPins[COLS] = {5, 4, 3, 2};
Keypad keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);
void setup() {
Serial.begin(115200);
keypad.setDebounceTime(20);
}
void loop() {
const char key = keypad.getKey();
if (key != NO_KEY) Serial.println(key);
}
Полный скетч для Keypad 3.1.1; API сверён с опубликованным Keypad.h. Номера жил шлейфа намеренно не угаданы: массивы подключаются к предварительно найденным рядам/столбцам. На оборудовании не запускался.
Определение шлейфа и проверка всех клавиш
text1. Отсоедините шлейф от электроники и включите мультиметр в режим прозвонки.
2. Найдите пару проводников, замыкаемую верхней левой клавишей. Повторите для остальных клавиш верхнего ряда: общий проводник будет R1, остальные — C1–C4.
3. Клавиши первого столбца позволят найти R2–R4. Запишите собственную таблицу «номер жилы → R/C».
4. Подключите функциональные R/C к GPIO из карточки и последовательно проверьте все 16 символов в Serial Monitor 115200.
5. При перестановке символов исправьте порядок rowPins/colPins или keymap. Комбинации нескольких клавиш отдельно не считаются проверенными.
Это план первичной проверки, а не отчёт о выполненном испытании. Сначала работайте без нагрузки и без движущихся механизмов.
Проекты с этим компонентом
Все проектыСвязанные проекты пока не опубликованы.


