Предмет: Информатика, автор: ter48248

#include <Keypad.h>

const byte ROWS = 4;
const byte COLS = 3;

char hexaKeys[ROWS][COLS] = {
{'1', '2', '3'},
{'4', '5', '6'},
{'7', '8', '9'},
{'*', '0', '#'}
};

int index = 0;
char password[4] = {'1', '2', '3', '4'};
char userPassword[4] = {};
bool alarm = false;
bool guardOn = false;

byte rowPins[ROWS] = {11, 10, 9, 8};
byte colPins[COLS] = {7, 6, 5};

Keypad customKeypad = Keypad(makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS);

bool checkPass() {
for (int i = 0; i < sizeof(password); i++) {
if (password[i] != userPassword[i]) {
return false;
}
}
return true;
}

void setup() {
pinMode(2, OUTPUT);
pinMode(3, INPUT);
Serial.begin(9600);
}

void loop() {
char customKey = customKeypad.getKey();

if (customKey) {
if (customKey == '#') {
guardOn = true;
} else if (customKey == '*') {
// Handle '*' key press if needed
} else {
userPassword[index] = customKey;
index++;

Serial.println(checkPass());

if (checkPass()) {
alarm = false;
guardOn = false;
index = 0;
for (int i = 0; i < sizeof(userPassword); i++) {
userPassword[i] = '*';
}
}
}
}

if (guardOn) {
digitalWrite(2, HIGH);
if (digitalRead(3)) {
tone(A0, 100);
}
} else {
digitalWrite(2, LOW);
noTone(A0);
}
сделайте чтоб код скидывался при нажатии на * на клавиатуре 4×4 в тинкеркад срочно нужно помогите умоляю ​

Ответы

Автор ответа: arinamalinina10
0
Попробуй метку сделать больше

ter48248: не помогло
Похожие вопросы