Перейти к содержанию

Цикл for в языке Ардуино

Цикл for в Ардуино

Как работает цикл for Ардуино, как правильно использовать цикл в программе и каких ошибок следует избегать. Познакомимся с использованием цикла for на примере плавного затухания светодиода. Для этого мы будем управлять светодиодом через аналоговый выход c ШИМ модуляцией, чтобы он постепенно включался и выключался. На этом простом примере мы покажем, как остановить цикл или перейти от одного цикла к другому.

Необходимые компоненты:

  • Arduino Uno / Arduino Nano / Arduino Mega
  • светодиод и резистор
  • макетная плата
  • коннекторы

Дополнительные материалы на эту тему:

  1. Цикл while в языке Ардуино
  2. Функция millis, многозадачность в Ардуино
  3. Циклы void loop и void setup в Ардуино

Цикл for используется для повторения команд, заключенных в фигурные скобки. Задача состоит в том, чтобы инициализировать некую переменную с заданным начальным значением и заставить ее изменяться на фиксированный шаг (приращение) при каждом проходе цикла for(). При достижении определенного условия происходит выход из оператора. Рассмотрим синтаксис, предоставленный официальным сайтом arduino.cc

Описание цикла for в языке Arduino IDE

Цикл for в Ардуино

Синтаксис for Arduino

for (initialization; condition; increment) { блок операторов }
  • initialization — мы присваиваем начальное значение переменной, которая будет развиваться в нашем цикле. Обратите внимание, что можно объявить переменную в этой точке (просто добавьте тип переменной перед ней, например, int i = 0)
  • condition — цикл будет выполняться до тех пор, пока это условие истинно. Если оно верно, выполняется блок операторов и приращение. Когда условие condition становится ложным, цикл завершается
  • increment — приращение, это значение, на которое будет изменяться переменная при каждом проходе через цикл for arduino

Плавное включение и выключение светодиода

В следующей программе первый цикл начинается (initialization) с начального значения переменной i=0, условие (condition) гласит, что цикл фор будет выполняться до тех пор, пока переменная меньше или равна заданному значению i<=255. Приращение (increment) указывает на то, что переменная будет увеличиваться на единицу на каждом шаге. Выход из цикла for в Arduino IDE произойдет, когда переменная станет больше значения 255.

Скетч для цикла for Arduino с примером


#define LED 10

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

void loop() {
  for(int i=0; i<=255; i++) {
     analogWrite(LED, i);
     delay(10);
  }

  for(int i=255; i>=0; i--) {
     analogWrite(LED, i);
     delay(10);
  }
}

Инструкция break для выхода из цикла

Если вы хотите выйти из всего цикла фор, независимо от заданных параметров в условиях, используйте оператор break или goto. Оператор break позволяет выйти из цикла for, и программа продолжит выполнение следующих команд в скетче. Оператор goto позволяет не только выйти из цикла, но и продолжить выполнение команд из любого места программы, например, можно перейти к другому циклу while или for в скетче.

Заключение. Каждый цикл в C++ и в языке программирования Arduino — это действие, которое повторяется несколько раз или бесконечно много раз. Ни одна программа для Arduino не обходится без циклов, например, цикл void вызывается в бесконечном цикле. Существует три типа циклов: for, while и do while. Сегодня мы сосредоточились на операторе for и рассмотрели, как он работает на простом примере со светодиодом.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

newzaym
➜