Преобразование в проценты
Часть раздела Входные сигналы путешествия по Arduino на Coddy. Урок 10 из 22.
Показания от 0 до 1023 мало о чём говорят человеку. Процент от 0 до 100 понятнее. map() преобразует число из одного диапазона в другой:
int percent = map(reading, 0, 1023, 0, 100);Функция принимает пять чисел: значение, нижнюю и верхнюю границы его диапазона, а также нижнюю и верхнюю границы нового диапазона. 0 становится 0, 1023 становится 100, а значение, находящееся на четверти диапазона, оказывается на четверти нового диапазона: 256 становится 25.
map() работает с целыми числами и отбрасывает дробную часть, что подходит для процентов.
Задание
ЛегкоПотенциометр подключён к A0. Выводи, насколько он повернут, в процентах:
- считай значение с A0
- преобразуй показание в диапазон от 0 до 100 с помощью
map() - выведи процент, затем подожди 100 мс
Нажми Run, поверни потенциометр, затем нажми Check.
Попробуйте сами
void setup() {
Serial.begin(9600);
}
void loop() {
int reading = analogRead(A0);
// преобразовать показание в проценты с помощью map(), вывести его и подождать 100 ms
}
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Входные сигналы
Потренируйтесь самостоятельно: Песочница Arduino