Параметры функции
Часть раздела Входные сигналы путешествия по 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 мс.
Задание
ЛегкоЗелёный светодиод подключён к выводу 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
}
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Входные сигналы
Потренируйтесь самостоятельно: Песочница Arduino