Ви не увійшли.
dantist1983 пише:Вот здесь!
if (key == 0 )
{
m = 1;
lcd.setCursor (0, 2);
lcd.write(" MOTOR ");// мотор включен
delay(20);
if (key == 0 && m == 1)
{
m = 0;
lcd.setCursor (0, 2);
lcd.write(" MOTOR OF ");// мотор должен быть выключить
}
}
не срабатывает отключение мотора после повторного нажатия клавиши поскольку переменая "key" имеет значение 0, не почему тоНемного непонятно где здесь собтвенно цикл) Кинь полную прогу, и какая у нее стоит задача.
Может по делу.
Судя по написаному второй if не имеет значения.1. В первый if заходим, когда key=0 > присваем m=1 >[теперь у нас key=0, m=1] 2. Во второй if заходим, когда [key=0, m=1] - тоесть всегда, приваем m=0> 3. Выходим из воторого if 4. Выходим из первого if. 5. Идем в пункт 1 где опять же при выполнении условия мы присваеваем m=1;
Надо больше когда. Я так понимаю есть некий второй кусок кода, где при повторном нажатий включается мотор, а переменная m для того что б контроллировать имеено нажатие и отжатие. Тогда разговор другой)
В общем решил не парится навешаю на другой вход еще одну кнопку( педаль) ,
З.Ы. В общем работаю над блоком управления для Електрошпателя и воскотопки и цыфровым управлением можностьи бормашини! щас повикидиваю весь хлам из черновика и кину на всеобщее обозрение!
Вот здесь!
if (key == 0 )
{
m = 1;
lcd.setCursor (0, 2);
lcd.write(" MOTOR ");// мотор включен
delay(20);
if (key == 0 && m == 1)
{
m = 0;
lcd.setCursor (0, 2);
lcd.write(" MOTOR OF ");// мотор должен быть выключить
}
}
не срабатывает отключение мотора после повторного нажатия клавиши поскольку переменая "key" имеет значение 0, не почему то
Немного непонятно где здесь собтвенно цикл) Кинь полную прогу, и какая у нее стоит задача.
Может по делу.
Судя по написаному второй if не имеет значения.
1. В первый if заходим, когда key=0 > присваем m=1 >[теперь у нас key=0, m=1]
2. Во второй if заходим, когда [key=0, m=1] - тоесть всегда, приваем m=0>
3. Выходим из воторого if
4. Выходим из первого if.
5. Идем в пункт 1 где опять же при выполнении условия мы присваеваем m=1;
Надо больше когда. Я так понимаю есть некий второй кусок кода, где при повторном нажатий включается мотор, а переменная m для того что б контроллировать имеено нажатие и отжатие. Тогда разговор другой)
Вот здесь!
if (key == 0 ){m = 1; lcd.setCursor (0, 2);
lcd.write(" MOTOR ");// мотор включен
delay(20);
if (key == 0 && m == 1){
m = 0; lcd.setCursor (0, 2); lcd.write(" MOTOR OF ");// мотор должен быть выключить
}
}
не срабатывает отключение мотора после повторного нажатия клавиши поскольку переменая "key" имеет значение 0, не почему то