Menu
CoddyTech

Возвращаемые значения

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

Функция также может возвращать значение. Укажи тип значения вместо void и заверши функцию с помощью return и значения:

int readPercent() {
  int reading = analogRead(A0);
  return map(reading, 0, 1023, 0, 100);
}

Вызов тогда обозначает это значение, как и analogRead(). Ты можешь сохранить его, вывести или сравнить:

int percent = readPercent();
if (readPercent() > 50) {
  // ...
}

return также сразу завершает функцию: строки после него не выполняются. Переменные, созданные внутри функции, как reading здесь, существуют только во время её выполнения; возвращённое значение позволяет получить результат.

challenge icon

Задание

Легко

Потенциометр подключён к A0, а LED — к пину 13:

  • напиши int readPercent(), которая считывает значение с A0 и возвращает его, преобразованное в диапазон от 0 до 100
  • в loop() сохрани результат вызова readPercent() в переменную и выведи его
  • включай LED, когда процент больше 50, иначе выключай его; жди 100 мс

Нажми Run, поверни ручку, затем нажми Check.

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

const int ledPin = 13;

// напишите здесь int readPercent()

void setup() {
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  // int percent = readPercent();
  // выведите значение, включите светодиод, если оно больше 50, подождите 100 мс
}
quiz iconПроверьте себя

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

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

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