#include <Keypad.h>
const byte ROWS = 4; // Число строк
const byte COLS = 4; // Число столбцов
char keys[ROWS][COLS] = {
{'1', '2', '3', 'A'},
{'4', '5', '6', 'B'},
{'7', '8', '9', 'C'},
{'*', '0', '#', 'D'}
};
byte rowPins[ROWS] = {2, 3, 4, 5};
byte colPins[COLS] = {6, 7, 8, 9};
Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);
String inputCode = ""; // Переменная для хранения кода
const String password = "1234"; // Заданный пароль
const int ledPin = 10;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
pinMode(ledPin, OUTPUT);
}
void loop() {
char key = keypad.getKey(); // Получение символа
if (key) {
inputCode += key; // Добавление символа к строке
Serial.println(inputCode);
}
if (inputCode == password) {
Serial.println("Доступ разрешён");
inputCode = ""; // Сброс введённых данных
digitalWrite(ledPin, HIGH); // Включить светодиод
delay(5000); // Задержка 5 секунд
digitalWrite(ledPin, LOW); // Выключить светодиод
}
if (inputCode.length() > 4) { // Если длина больше 4 символов
Serial.println("Ошибка: неверный пароль");
inputCode = ""; // Сброс
}
}