Циклы 1 — Введение в циклы Arduino

Введение

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

Что такое цикл в программировании

Цикл — это конструкция, которая выполняет код определённое количество раз или до выполнения заданного условия. Пример из жизни: если нужно моргнуть лампой 10 раз, вместо того чтобы писать 10 команд, мы используем цикл, который сам считает количество повторений.

Бесконечный цикл loop() в Arduino

В Arduino есть особая функция loop(), в которой размещается основной код программы. Она выполняется бесконечно, начиная с момента запуска платы. Это и есть главный цикл программы.


void setup() {
  // Код, который выполняется один раз
}

void loop() {
  // Код, который выполняется снова и снова
}
  

Отличие от циклов for, while, do...while

  • for — выполняет код заданное количество раз, удобно для счётчиков.
  • while — выполняет код, пока условие истинно.
  • do...while — выполняет код хотя бы один раз, затем проверяет условие.

Внутри loop() можно использовать любые из этих циклов для управления выполнением программы.

Практика

Пример 1 — цикл for для мигания светодиодом


int ledPin = 13;

void setup() {
  pinMode(ledPin, OUTPUT);
}

void loop() {
  for (int i = 0; i < 5; i++) { // Мигаем 5 раз
    digitalWrite(ledPin, HIGH);
    delay(500);
    digitalWrite(ledPin, LOW);
    delay(500);
  }
  delay(2000); // Пауза перед повторением
}
  

Пример 2 — бесконечный цикл while(true)


void loop() {
  while (true) { // Никогда не закончится
    // Действие, которое выполняется всегда
  }
}
  

Такой код может быть полезен в тестах, но в реальных проектах обычно используют стандартный loop().

Проект: «Моргающий маяк»

Светодиод мигает заданное количество раз, затем пауза — как маяк на берегу.


int ledPin = 13;

void setup() {
  pinMode(ledPin, OUTPUT);
}

void loop() {
  // Моргаем 3 раза
  for (int i = 0; i < 3; i++) {
    digitalWrite(ledPin, HIGH);
    delay(300);
    digitalWrite(ledPin, LOW);
    delay(300);
  }
  delay(2000); // Пауза перед следующим циклом мигания
}
  

Заключение

Циклы позволяют экономить время программиста и ресурсы микроконтроллера. Понимание того, как и когда использовать разные типы циклов, — основа для написания эффективных скетчей Arduino.

Циклы 2 — Цикл for

<< Проекты << Все товары >> Статьи, уроки >>

Написать отзыв

Примечание: HTML разметка не поддерживается! Используйте обычный текст.
    Плохо           Хорошо
Корпус пластиковый 100х68х50мм

Корпус пластиковый 100х68х50мм

Герметичный корпус из толстого добротного пластика для электронных устройств или соединительных коро..

264.05грн.

Arduino подключение двигателя постоянного тока и управление им.

Arduino подключение двигателя постоянного тока и управление им.

Arduino и использование двигателей. Подключение двигателя постоянного тока и управление им.1. Управл..

Преобразователь RS232 в TTL

Преобразователь RS232 в TTL

Преобразователь RS232 в TTL – модуль для подключения устройств с разъёмом DB9 к любительским контрол..

59.56грн.

Циклы 8 — Оптимизация циклов

Циклы 8 — Оптимизация циклов

Циклы 8 — Оптимизация циклов Введение Оптимизация циклов в Arduino особенно важна, когда..

Таймеры и FreeRTOS на ESP32

Таймеры и FreeRTOS на ESP32

Таймеры и FreeRTOS на ESP32 ESP32 работает под управлением FreeRTOS, и в дополнение к аппаратным ..