Menu
CoddyTech

Параметры функции

Часть раздела Входные сигналы путешествия по Arduino на Coddy. Урок 20 из 22.

blinkOnce() всегда мигает на выводе 13 в течение 200 мс. Чтобы мигать на любом выводе в течение любого времени, передай функции параметры: переменные, перечисленные в её скобках, каждая с указанием типа, которые получают значения при вызове.

void blinkLed(int pin, int ms) {
  digitalWrite(pin, HIGH);
  delay(ms);
  digitalWrite(pin, LOW);
  delay(ms);
}

Значения при вызове — это аргументы. Они заполняют параметры по порядку: blinkLed(12, 200); выполняет блок, используя pin со значением 12 и ms со значением 200, а blinkLed(13, 600); — со значениями 13 и 600.

Поскольку порядок имеет значение, blinkLed(200, 12) будет пытаться мигать на выводе 200 в течение 12 мс.

challenge icon

Задание

Легко

Зелёный светодиод подключён к выводу 12, а красный — к выводу 13:

  • напиши void blinkLed(int pin, int ms): включи вывод, подожди ms, выключи, подожди ms
  • в loop() мигай зелёным светодиодом в течение 200 мс, затем красным — в течение 600 мс

Нажми Run, затем Check.

Попробуйте сами

const int greenPin = 12;
const int redPin = 13;

// напишите здесь void blinkLed(int pin, int ms)

void setup() {
  pinMode(greenPin, OUTPUT);
  pinMode(redPin, OUTPUT);
}

void loop() {
  // включите зелёный светодиод на 200 ms, затем красный на 600 ms
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Входные сигналы

Потренируйтесь самостоятельно: Песочница Arduino