Ви не увійшли.
Сторінки 1
Подскажите пожалуйста взял из другого скетча там работает именно однократное нажатие, в таком случае не работает в порт при зажатой кнопки постоянно валит 1 или 2, при отладке заметил что переменная knopka_a и knopka_b даже не переходит в 1! Что не так?
int button1 = 7;
int button2 = 8;
int knopka_a = 0;
int knopka_b = 0;
void setup () {
Serial.begin(9600);
pinMode(button1, INPUT);
digitalWrite(button1, 1);
pinMode(button2, INPUT);
digitalWrite(button2, 1);
}
void loop () {
if (digitalRead(button1) == 0 && knopka_a == 0) {
knopka_a = 1;
Serial.print("1");
}
if (digitalRead(button2) == 0 && knopka_b == 0) {
knopka_b = 1;
Serial.print("2");
}
if (digitalRead(button1) == 1 && knopka_b == 1) knopka_b = 0;
if (digitalRead(button2) == 1 && knopka_a == 1) knopka_a = 0;
delay(100);
}
Остання редакція ArturBamb (2016-04-16 14:44:41)
Неактивний
ну ладно смотрим алгоритм
void loop () {
если на входе 0 (кнопка нажата )и статус ноль то
if ((digitalRead(button1) == 0() && (knopka_a == 0) {
идем сюда и выводим 1
knopka_a = 1;
Serial.print("1");
}
если кнопка1 отпушена на входе 1 но статус кнопки 2 в 1 то снимаем признак кнопки 2
if (digitalRead(button1) == 1 && knopka_b == 1) knopka_b = 0;
думаю что статусы попутали, пива хочу, не хочу ковырять чужой алгоритм, )
точно так должно быть ????
if (digitalRead(button1) == 1 && knopka_b == 1) knopka_b = 0;
кнопка 1 но статус кнопки 2?
delay(100);
}
Неактивний
Сторінки 1