Управление одной кнопкой тремя реле

Точно! Время удержания не обновил. Щас поправим.

Э как меня “завернуло” :smiley: В одной строке две уместил ))) Поправил.

1 лайк

А ТС -у надо ещё считать короткие нажатия))

print(0х30) напечататет 48, а write - ‘0’

так и есть, только здесь 2 разных типа, в лямбде char, а у тебя?
Когда передается char, обе функции одинаковы, только write сначала преобразовывает параметр в int, а print этого не делает, у него для char уже есть соотвецтвующая перегрузка. Вот и всё. Чесно говоря, однохренственна.

Ну мы этим в ужасной конструкции под названием “switch” будем заниматься. Логично же…))

Да, конечно. А если бы Geoerge ещё сам хоть пару строчек написал, было-бы вообще замечательно ))

1 лайк

Я жду, надеюсь и верю в это )))
Поэтому по несколько строк добавляю, а не весь код разом :slight_smile:

Оно ему надо? Писателей тут и без него девать некуда. Скажите человеку спасибо, что дал местным бездельникам возможность что-то написать и получить удовольствие :slight_smile:

2 лайка

Просто Тс не поспевает за ВООМ)) Воому надо скорость раз в пять уменьшить))

Итак, идем дальше. Читаем условие задачи:

И тут же появляется масса вопросов:

  1. Следующее короткое нажатие при включенном Р2 что делает? Отключает Р2 и включает Р1?
  2. “Короткое время” - это сколько?
  3. А после того как прошло “короткое время” что должно произойти?

Думаю, что отвечать на вопросы можно всем, не только ТС (он и не появляется тут, похоже).

@anonimSimen , кстати, хотел вчера спросить, но забыл. Сегодня компилятор напомнил:

warning: unused parameter 'f' [-Wunused-parameter]
   stdout = fdevopen([](char ch, FILE* f)->int {return Serial.print(ch); }, NULL);

Можно не обращать внимания?

Можно. Если раздражает, напиши так

    stdout = fdevopen([](char ch, __attribute__((unused)) FILE* f)->int {return Serial.print(ch); }, NULL);

А можно и “заюзать”, чтобы компилятор заткнулся.

Друзья спасибо. Ваша компетенция и желание помочь приятно удивляет.
Увы дописать что либо умное в плане кода, на данном этапе вряд ли мне удасться.
Обещаю все ваши советы и рекомендации учесть, попытаться разобраться и испытать на деле.

Постараюсь внести ясность. Предложенные мной заморочки с алгоритмом (управлением конечным устройством - электродвигатель лебедки с встроеным контроллером) обусловлены следующем.
С одной стороны, исполнитель - контроллер двигателя с конечными датчиками и т.д. - управление осуществляется по 3 каналам NO. (вверх/вниз/стоп)
С другой стороны радиоканал с одной кнопкой на передатчике и одним NO либо NC в приемнике.
посредине ардуинка или ESP8266.
Поправьте меня если не корректно описал задачу.

Почему ты, в этом случае, не готов просто заказать нужный код? Он тебе обойдется не дороже 2000р.

Я с радостью оплачу, если стоимость услуги будет выставлена в грн.

чем-то не устраивает биткоин?

не ясно, почему вы тогда задаете вопросы на этом форуме