Цикли 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 размітка не підтримується! Використовуйте звичайтий текст.
    Погано           Добре
Розробка пристроїв на ESP32 / Arduino / STM32 під замовлення

Розробка пристроїв на ESP32 / Arduino / STM32 під замовлення

Розробка пристроїв на ESP32 / Arduino / STM32 під замовлення Потрібен прототип або го..

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

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

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

29.41грн.

Аудіо штекер 3,5мм папа з гвинтовим клемником

Аудіо штекер 3,5мм папа з гвинтовим клемником

Стерео штекер 3,5 мм для монтажу електричних кіл передачі звукового сигналу за допомогою гвинтового ..

94.08грн.

Стабілітрони 0,5Вт набір 3,3 ... 12В 100шт.

Стабілітрони 0,5Вт набір 3,3 ... 12В 100шт.

Набір стабілітронів 10 номіналів по 10шт.Номінальна потужність 0,5ВтРобоча температура -65°C ....

137.48грн.

Набір датчиків ваги 200кг

Набір датчиків ваги 200кг

4 тензодатчика для вимірювання ваги до 200 кг при мостовому з'єданніКожний окремий датчик розрахован..

194.71грн.