Обработка нажатия кнопок в arduino nano v3
- Войдите на сайт для отправки комментариев
Вс, 22/02/2015 - 20:41
Доброго времени суток.
Опишу ситуацию к 12 и 11 цифровым портам подключены кнопки
при нажатие кнопки на 11 порту включаем моторчик, при нажатие кнопки на 12 порту моторчик останавливаем но кнопка остается зажатой т.е состояение все время HIGH.
Теперь необходимо обработать ситуацию когда кнопка на 12 порту зажата, нажимаем кнопку на 11 порту необходимо чтоб моторчик вращался в другую сторону, но ничего не происходит
Делаю такую проверку
int val=0;
void loop() {
if (digitalRead(11) == HIGH && val==0) {
val=1;
digitalWrite(OUT1,HIGH);
digitalWrite(OUT2,LOW);
}
if(digitalRead(12)==HIGH)
{
digitalWrite(OUT1,LOW);
digitalWrite(OUT2,LOW);
}
if(digitalRead(11)==HIGH && digitalRead(12)==HIGH)
{
val=0;
digitalWrite(OUT1,LOW);
digitalWrite(OUT2,HIGH);
}
}
Не подскажете как обработать такую ситуацию?
Похоже в последнем условии надо еще проверить состояние val, для чего то вы ее ввели в программу?
Надо проверять и в предпоследнем if, иначе будет выключать всегда, пока нажата 12.
Похоже в последнем условии надо еще проверить состояние val, для чего то вы ее ввели в программу?
Надо проверять и в предпоследнем if, иначе будет выключать всегда, пока нажата 12.
Спасибо, попробую проверить так.