Как включить/выключить светодиод одной и той же ИК-кнопкой?
Я пытаюсь включить/выключить светодиод с помощью того же кода case():. Но это не работает, может кто-нибудь мне помочь?
@Tomer, 👍-4
Обсуждение1 ответ
Лучший ответ:
▲ 0
Было бы хорошо, если бы вы добавили свой скетч, если он у вас есть.
В принципе, вам необходимо создать логическую переменную, которая сохранит текущее состояние светодиода. Когда вы получаете ИК-команду, внутри обработчика ИК-кнопки инвертируется состояние логического значения. Затем соответствующим образом замените светодиод.
Что-то вроде:
Константная/глобальная переменная:
#define LED_PIN 8
int ledState;
В настройке:
ledState = FALSE;
digitalWrite(LED_PIN, ledState);
В боковом цикле:
case IR_BUTTON_CHANGE_LED:
ledState = ledState == LOW ? HIGH : LOW; // Инвертируем состояние
digitalWrite(LED_PIN, ledState); // Установка светодиода в соответствии с состоянием
break;
,
@Michel Keijzers
Смотрите также:
- Реализовать связь Visible Light с помощью Arduino
- 4-битный счетчик вверх и вниз
- Скетч мигания ESP8266 не мигает светодиодом
- Акцептант векселей ИКТ
- Как запустить 4 светодиода последовательно на основе кнопочного входа?
- Как включить 3 светодиода в повторяющейся последовательности, чтобы все три светодиода затем выключались при отпускании используемой кнопки?
- Как заставить Arduino реагировать на последовательную информацию?
- Светодиод L продолжает гореть
Пробовали ли вы проверить текущее состояние и действовать соответствующим образом?, @Kwasmich