Я прошу Вас помочь мне разобраться, как остановить цикл при удержании кнопки? Есть три тэны которые будут управляться релюшками, одна кнопка при каждом нажатии будет включать дополнительную тэну, а вторая кнопка в обратном порядке будет отключать тэны. Есть также и кнопка "СТОП", которая одним нажатием выключает все тэны.
Так вот, вопрос в следующем, как сделать так чтобы при долгом нажатии все тэны сразу не включились? В интернете находил информацию, что как то это можно через таймер реализовать...но у меня с этим ничего не получилось...
Запоминаете предыдущее состояние кнопки и срабатывание производите только в том случае, если она нажата, а предыдущее состояние - не нажата. После чего, делаете защитный интервал для подавления дребезга контактов кнопки.
_________________ А люди посмотрят и скажут: "Собаки летят. Вот и осень."
Button= h1; // опросили кнопку для первоначальной установки переменной
while(1) { _delay_ms(10); // для подавления дребезга кнопки
oldButton= Button; // предыдущее состояние кнопки Button= h1; // текущее состояние кнопки
if(oldButton && !Button) // момент нажатия кнопки { if(DataTimer) DataTimer= 0; // если кнопка нажата во время работы таймера, то останавливаем таймер else DataTimer= 555; // если таймер стоял, то запускаем его // число 555 соответствует 555*10мсек= 5550мсек= 5,55 сек таймера }
if(DataTimer) --DataTimer; }
Вот так.
Если я правильно понял, мне нужно сделать что-то наподобие этого? Только что-то у меня не получается...
Так как вы написали: задержка, сохранение предыдущего, опрос нового, повтор - никогда работать не будет. потому как надо с нажатием попасть в очень короткий период времени. Надо прочитать и сразу сохранить, задержка, повторить. И в любом месте задержки проверяь условие. кажется, фигню написал. Приведённый код верный. А... это не ваш.
_________________ А люди посмотрят и скажут: "Собаки летят. Вот и осень."
Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Что-то я не могу понять, что за беда с подключением ТЭНов. По идее должна быть общая масса, а реле должны подключать соответствующий ТЭН. Не? __________ Просчитал по положениям реле (все 8 возможных состояний). Полная ахинея получается.
Что-то я не могу понять, что за беда с подключением ТЭНов. По идее должна быть общая масса, а реле должны подключать соответствующий ТЭН. Не? __________
Вы правы, обычно так и подключают (общая масса, а реле коммутирует соответствующий ТЭН с источником питания). Но здесь 2-е ТЭНы одинаковой мощности и длины (они подключены параллельно), а третий ТЭН имеет более большую мощность и длину (подключен последовательно с теми двумя ТЭНами)
Это не моя идея, так задумано инженерами которые проэктировали данный бойлер (Только изначально ТЭНы управлялись программным пакетным переключателем) Как объясняет производитель, такое подключение ТЭН имеет более большую рассеиваемую мощность (теплоотдачу) при малых мощностях потребляемого бойлером тока
Цитата:
Просчитал по положениям реле (все 8 возможных состояний). Полная ахинея получается.
Подскажите пожалуйста более правильный вариант кода, я в программировании новичёк...
Что обратной связи нет в вашем бойлере?Датчик температуры? Какой тогда смысл "городить" контроллер, если можно тумблерами все включать и выключать?
Обратной связи для МК нет. Поддержку температуры думал оставить заводскую, к баку с водой прикручен термостат "KSD 301 75 10A", с помощью его поддерживается температура воды на уровне 75°С. Фаза приходит на термостат, а с термостата на силовые контакты реле.
Alexander90h, глюкнет ваше изобретение при первых же включениях ТЕН'ов.
Насчёт того, что это изобретение глюкнет при первом включении, вполне возможно, если контакты на реле прикипят и оно не отключит фазу или ноль при переключении. Родной программный пакетный переключатель уже не рабочий и заменить его нечем, я не нашел подходящий по размерам... кстати, на него тоже приходила фаза с нулём и таким же образом переключались контакты
Аlex писал(а):
Поставьте тумблеры и не занимайтесь ерундой. МК тут явно излишен.
Вы правы, гораздо проще поставить пару тумблеров, наверное так и сделаю...
Вы правы, гораздо проще поставить пару тумблеров, наверное так и сделаю...
Никого не слушай, не прикипят контакты реле, если выбрать правильные реле, с запасом мощности разумеется, даже если ошибешся с выбором реле то ничего, купишь другие, если реле попадется бракованное то на этот случай - защита термостатом сработает или если критично важно - можно поставить по 2 реле на канал для страховки.
В 675-ом есть отличный 10-и разрядный АЦП - с помощью одного терморезистора за "5 коппеек" можно организовать регулируемый термостат, на этом же контроллере, в будущем, можно согласовать работу нескольких устройств, к примеру в ванне тёплый пол будет выключатся при включении тэнов в бойлере, чтобы избежать излишней нагрузки на проводку, к немуже можно прикрутить модуль управления по wi-fi или сети, сейчас таких на Ali валом...
Это всё не обязательно, но используя МК - ты в разы расширяешь возможности казалось бы банального бойлера, и самое главное - получаешь навыки, настоящие практические навыки, создания цифровых систем контроля и управления, а тумблер - любой дурак может поставить...
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения