Menu
CoddyTech

Столбчатая диаграмма с потенциометром

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

Ряд светодиодов может показывать число в виде полосы: чем больше светодиодов горит, тем больше число. Здесь число зависит от ручки потенциометра.

Сначала преобразуй показание в количество светодиодов, которые нужно включить: от 0 до 5:

int count = map(analogRead(A0), 0, 1023, 0, 5);

Затем пройди по каждому светодиоду с помощью цикла for и определи, что делать с каждым из них. Светодиоды до позиции count включены, остальные выключены:

for (int i = 0; i < 5; i++) {
  if (i < count) {
    digitalWrite(ledPins[i], HIGH);
  } else {
    digitalWrite(ledPins[i], LOW);
  }
}

Часть else важна: когда ты поворачиваешь ручку вниз, именно она выключает светодиоды, которые больше не входят в полосу.

challenge icon

Задание

Средне

Потенциометр подключён к A0, а светодиоды находятся в ledPins. Создай столбчатую диаграмму:

  • преобразуй показание в число от 0 до 5 с помощью map()
  • зажги столько светодиодов, начиная с первого в массиве, а остальные выключи
  • подожди 10 мс, затем повтори

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

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

const int knobPin = A0;
int ledPins[] = {2, 3, 4, 5, 6};

void setup() {
  for (int i = 0; i < 5; i++) {
    pinMode(ledPins[i], OUTPUT);
  }
}

void loop() {
  // преобразуйте считанное значение в число от 0 до 5
  // зажгите первые светодиоды в количестве, равном полученному числу, а остальные выключите
}
quiz iconПроверьте себя

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

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

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