4.01.1. Лабораторная работа №4.1.1.md


Мигание внешним светодиодом

Тема работы

В этой лабораторной работе мы сделаем то, с чего начинают все инженеры и программисты в мире микроконтроллеров — заставим светодиод мигать! Мы подключим внешний светодиод к плате Рудирон и напишем простую программу, которая будет им управлять.

Цель

  • Научиться физически подключать внешние компоненты (светодиод, резистор) к GPIO пинам платы Рудирон.
  • Закрепить использование команд pinMode() и digitalWrite() для управления цифровым выходом.
  • Написать и загрузить свою первую программу для управления внешним устройством.

Оборудование и материалы

  • Отладочная плата Рудирон.
  • Макетная плата.
  • 1 светодиод (любого цвета).
  • 1 резистор номиналом 220 Ом.
  • 2 соединительных провода.
  • USB-кабель для подключения Рудирона к компьютеру.
  • Компьютер с настроенной средой Arduino IDE.

Ход работы

  1. Сборка схемы

    Сначала соберём нашу простую электронную схему. Мы подключим светодиод к пину 5 платы Рудирон. Этот пин выбран не случайно — к нему также подключён встроенный светодиод L1, поэтому они будут мигать синхронно!

    • Вставьте светодиод в макетную плату. Помните о полярности: длинная ножка (анод) — это «+», короткая (катод) — это «−».
    • Подключите резистор. Один вывод резистора (220 Ом) соедините с короткой ножкой светодиода (катодом). Резистор нужен, чтобы ограничить силу тока и защитить светодиод от перегорания.
    • Соедините с Рудироном:
      • Длинную ножку светодиода (анод) с помощью провода подключите к пину 5 на плате Рудирон.
      • Второй вывод резистора с помощью другого провода подключите к пину GND (земля) на плате Рудирон.
  2. Настройка перемычек и подключение к ПК

    Подготовим плату к загрузке кода:

    • Установите перемычку PRG | RUN в положение PRG.
    • Подключите Рудирон к компьютеру с помощью USB-кабеля.
    • В Arduino IDE выберите вашу плату (Rudiron_Buterbrod_R10_20MHz) и правильный COM-порт.
  3. Написание и загрузка кода

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

    • Откройте Arduino IDE и введите следующий код:

      // Назначаем пину 5 понятное имя - ledPin
      const int ledPin = 5;
      
      // Эта функция выполняется один раз при старте
      void setup() {
        // Настраиваем пин 5 на работу в режиме ВЫХОДА (OUTPUT)
        pinMode(ledPin, OUTPUT);
      }
      
      // Эта функция выполняется в бесконечном цикле
      void loop() {
        digitalWrite(ledPin, HIGH); // Включаем светодиод (подаём 3.3 В)
        delay(1000);                // Ждём одну секунду
      
        digitalWrite(ledPin, LOW);  // Выключаем светодиод (подаём 0 В)
        delay(1000);                // Ждём ещё одну секунду
      }
      
    • Нажмите кнопку «Upload» (стрелка вправо), чтобы загрузить код на плату.
  4. Наблюдение за результатом

    Сразу после загрузки ваш внешний светодиод на макетной плате, а также встроенный светодиод L1 на плате Рудирон, начнут синхронно мигать: секунду горят, секунду не горят.

Результаты

Вы успешно собрали свою первую электронную схему и написали для неё программу. Вы увидели прямую связь между командами в коде (digitalWrite, delay) и физическим поведением устройства (миганием светодиода).

Анализ результатов

  • Команда pinMode(ledPin, OUTPUT) в setup() «сообщила» микроконтроллеру, что пин 5 будет использоваться для отправки сигналов, а не для их приёма.
  • Внутри loop() команда digitalWrite(ledPin, HIGH) подаёт на пин 5 напряжение 3.3 В, зажигая светодиод.
  • digitalWrite(ledPin, LOW) отключает напряжение, и светодиод гаснет.
  • delay(1000) создаёт паузу в 1000 миллисекунд (1 секунду), чтобы мы могли увидеть изменение состояния.

Выводы

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

Вопросы для самопроверки

  1. Какая команда настраивает пин на работу в режиме выхода?
  2. Что произойдёт, если в команде delay() указать значение 100 вместо 1000?
  3. Зачем в схеме нужен резистор? Что может случиться со светодиодом, если его не использовать?
  4. Можно ли подключить светодиод к другому цифровому пину, например, к пину 6? Что для этого нужно изменить в коде?
  5. Как изменить программу, чтобы светодиод подавал сигнал SOS (три короткие вспышки, три длинные, три короткие)?

Поздравляем с первым успешным проектом! Вы готовы двигаться дальше. Переходите к следующей лабораторной работе, чтобы научиться не только отправлять, но и получать сигналы с помощью кнопок.