Подскажите, как заать последовательность нажатия кнопок

theflyman
Offline
Зарегистрирован: 02.05.2017

Форумчане! Пишу с просьбой помочь, ибо сам что-то не смог найти что-то подобное. Каким образом можно задать последовательность нажатия кнопок. Идея: есть три последовательности, все разные. И каждая последовательность включает одну из трех реле. Как же мне эти самые последовательности задать? Пробовал через несколько if и переменную, ниже покажу код, но получалась ерунда: Релешки открывались после нажатия второй кнопки.

P.S. Не судите меня строго, я только начал изучать ардуино.

void setup() {
 
pinMode(2, INPUT);
pinMode(3, INPUT);
pinMode(4, INPUT);
pinMode(5, INPUT);
pinMode(6, INPUT);
pinMode(7, INPUT);
pinMode(8, INPUT);
pinMode(9, INPUT);
pinMode(10, INPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
pinMode(13, OUTPUT);
 
digitalWrite(11, 0);
digitalWrite(12, 0);
digitalWrite(13, 0);
 
 
 
}
 
void loop() {
 
int x; // Переключалка
if(digitalRead(2) == 1) {
  x = 2;
}
if(digitalRead(5) == 1 && x == 2) {
  x = 3;
}
if(digitalRead(10) == 1 && x == 3) {
  digitalWrite(13, 1);
  x=4;
}
}
 
Спасибо
ulis
ulis аватар
Offline
Зарегистрирован: 09.03.2011

Для начала, неплохо было бы научиться выражать свои мысли и к каждой строчке кода, как рекомендуют классики - писать три строчки комментариев .... У вас, что, каждая клавиша подключена к отдельному входу дуни? И что есть х - нечто типа состояния вашего цифрового автомата? И что значит - последовательность нажатия кнопок. Число перестановок из 9 кнопок по 3 повторяющих равно 729 - наверно, можно обойтись меньшим числом кнопок?

toc
Offline
Зарегистрирован: 09.02.2013

theflyman, посмотрите библиотеку http://playground.arduino.cc/Code/Password