Помогите с матричной клавиатурой
- Войдите на сайт для отправки комментариев
Чт, 14/01/2016 - 13:42
Подключил матричную клавиатуру к Arduino Mega 2560 R3. Всё работает отлично, но хотелось бы сделать так: нажимаю на звездочку - ввожу старый код - ввожу новый код - сохраняется. Как это реализовать можно?
#include <Keypad.h> char* secretCode = "1234"; int position = 0; const byte rows = 4; const byte cols = 3; char keys[rows][cols] = { {'1','2','3'}, {'4','5','6'}, {'7','8','9'}, {'*','0','#'} }; byte rowPins[rows] = {8, 7, 6, 5}; byte colPins[cols] = {4, 3, 2}; Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, rows, cols); int redPin = 12; int greenPin = 53; void setup() { pinMode(redPin, OUTPUT); pinMode(greenPin, OUTPUT); setLocked(true); } void loop() { char key = keypad.getKey(); if (key == '#') { position = 0; setLocked(true); } if (key == secretCode[position]) { position++; } if (position == 6) { setLocked(false); } delay(50); } void setLocked(int locked) { if (locked) { digitalWrite(redPin, HIGH); digitalWrite(greenPin, LOW); } else { digitalWrite(redPin, LOW); digitalWrite(greenPin, HIGH); } }
Также хотил спросить по саму микруху. Это нормально, что она после 20-25 минут на ощупь теплая?
Попробуй так:
Как-то так, конечно по китайски, зато понятно. Можно в цикл загнать.
Попробуй так:
вот не пройдет компиль топикстартер спросит почему?
и не уверен что все 4 цифры кода не получаться одинаковыми с одного нажатия. может это в библе и реализовано.
Ок, спасибо!
А по поводу температуры ничего? Сейчас подключил матричную клавиатуру и дисплей HD44780. Спустя пару минут - микруха теплая, градусов под 40-45.