Menu
CoddyTech

Преобразование в проценты

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

Показания от 0 до 1023 мало о чём говорят человеку. Процент от 0 до 100 понятнее. map() преобразует число из одного диапазона в другой:

int percent = map(reading, 0, 1023, 0, 100);

Функция принимает пять чисел: значение, нижнюю и верхнюю границы его диапазона, а также нижнюю и верхнюю границы нового диапазона. 0 становится 0, 1023 становится 100, а значение, находящееся на четверти диапазона, оказывается на четверти нового диапазона: 256 становится 25.

map() работает с целыми числами и отбрасывает дробную часть, что подходит для процентов.

challenge icon

Задание

Легко

Потенциометр подключён к A0. Выводи, насколько он повернут, в процентах:

  • считай значение с A0
  • преобразуй показание в диапазон от 0 до 100 с помощью map()
  • выведи процент, затем подожди 100 мс

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

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

void setup() {
  Serial.begin(9600);
}

void loop() {
  int reading = analogRead(A0);
  // преобразовать показание в проценты с помощью map(), вывести его и подождать 100 ms
}
quiz iconПроверьте себя

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

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

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