Эксперимент 10. Программный выключатель

Монитор порта можно использовать не только для вывода значения, но и управлять платой контроллера, отправляя команды.
Соберем проект в котором будем управлять включением и выключением светодиода посредством отправки команд через монитор порта.

Схема эксперимента

Рисунок 1. Электрическая принципиальная схема эксперимента Рисунок 2. Монтажная схема эксперимента

Программный код эксперимента

Exp10
  1. const int Led = 2;
  2.  
  3. void setup() {
  4. Serial.begin(9600);
  5. Serial.println("Введите ON для включения и OFF для выключения светодиода");
  6. pinMode(Led, OUTPUT);
  7. }
  8.  
  9. void loop() {
  10. // Получаем команды на включение-выключение светодиода на 2 пине.
  11. String str = Serial.readString();
  12. // Если команда «ON» то включаем светодиод.
  13. if (str == "ON" or str == "on") digitalWrite(Led, HIGH);
  14. // Если команда «OFF» то выключаем светодиод.
  15. if (str == "OFF" or str == "off") digitalWrite(Led, LOW);
  16. }

Для взаимодействия с монитором порта в функции setup() вызываем метод begin класса Serial и указываем скорость соединения. Для удобства пользователя, здесь же выводим в монитор инструкции, какие команды нужно вводить для управления. В основном цикле программы при помощи метода readString() класса Serial считываем введенные команды в переменную str типа String. В условиях операторов if проверяем какая команда была введена, и соответственно включаем или выключаем светодиод.

Дополнительное задание

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