Доброго времени суток!
Максимально новичок в работе с ардуино и программным кодом, но пытаюсь разобраться, поставлена цель: механический контактор замыкающие некие контакты необходимо перевести на управление одной не фиксируемой кнопкой, а так же активация устройства при получении сигнала с кан шины(пока что в скетче опробовано только с помощью кнопки, далее начну разбираться с кан шиной). Строиться схема будет на ардуино нано и сборке из 6ти реле. На данный момент собрана схема и скетч только в виртуальном виде на сайте WOKWI, так же пошел немного не по правильному пути и использовал AI генератор кода для создания кода по необходимым мне условиям. Управление кнопками почти что отрабатывает как нужно, но есть одно НО - при включении Реле №5 второй кнопкой и последующей его работе в течении заданного времени не возможно использовать первую кнопку. Прошу не закидывать помидорами, а дать дельный совет либо ткнуть носом в нужном направлении.
Под кнопки я бы воспользовался готовой библиотекой, хотя бы от Гайвера, вроде никто не плевался на неё, ну или огрызком от Квона, с шестью кнопками не пробовал но не вижу почему не должно работать, из функционала там доступны короткое и длинное нажатие
Подскажите пожалуйста где эти библиотеки взять и как ими воспользоваться. У меня по сути использоваться будет только одна кнопка (если перейти по ссылке на макет это “красная кнопка”), вторая кнопка пока что временная вместо нее должен встать интерфейс кан шины.
Чтение состояние кнопок (это любая библиотека может сделать, например я пользуюсь kakmyc_btn.h)
Из прочитанных состояний кнопок сформировать “задания на выполнение”
Выполнить задания (выставить на пинах управления реле соответствующие сигналы)
Потом будет проще добавить CAN: Ловишь свой сигнал в CAN (или как там правильно у него, я с ним никогда не рабтал), так же формируешь “задания на выполнение” и 3 часть отработает сама.
Потом уже можно всякого выпендрежа добавить - блокировать/не блокировать управление кнопками если активен CAN и тп…
Ну я бы так делал, если бы мне подобное нужно было бы сделать…
Перепроверил, и верно заметили самая первая строчка в посте №1 не содержит строку #include <Bounce2.h>, Приношу извинения.!! ПС. не пойму как отредактировать первое сообщение.
В промте для АИ пишешь “создай неблокирующий код”. Если на аглицком промты пишешь то, “create non blocking code with Arduino IDE for board Ardiuno Nano…” и так далее.
чует мое сердце, что скоро на форуме будут вопросы: “помогите написать промт для ЧатГПТ, шоп он он родил скетч, который…”. Пипец деградация!