Цикли 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 размітка не підтримується! Використовуйте звичайтий текст.
    Погано           Добре
Термопара K-типу -100...800°C 5х100мм

Термопара K-типу -100...800°C 5х100мм

Термопара K-типу (ТХА, хромель-алюмель) використовується для вимірювання високих температур до 1250&..

204.73грн.

Шестерня для зубчатого ременю на 40 зубців під вісь 8 мм

Шестерня для зубчатого ременю на 40 зубців під вісь 8 мм

Використовується для передачі та редукції обертаючого моменту від двигуна до вісі 8 ммКількість зубц..

87.33грн.

Які види датчиків можна підключити до Arduino для вимірювання параметрів навколишнього середовища

Які види датчиків можна підключити до Arduino для вимірювання параметрів навколишнього середовища

Які види датчиків можна підключити до Arduino для вимірювання параметрів навколишнього середовищ..

Модуль Bluetooth SPP-C

Модуль Bluetooth SPP-C

Протокол зв'язку : Bluetooth специфікація v2.1+EDRРадіус дії : до 10 метрів (рівень потужності 2)Нап..

112.48грн.

Шилд для Arduino Nano и GSM SIM800

Шилд для Arduino Nano и GSM SIM800

Шилд для проектів з використанням плати контролера Arduino Nano та GSM модуля SIM800. Вирішує пробле..

279.68грн.