FastMap
Быстрое масштабирование чисел с плавающей точкой и гарантией результата в заданном диапазоне
Установка
Последняя опубликованная версия- Скачайте архив — реестр отдает его уже проверенным.
- В Arduino IDE выберите «Скетч → Подключить библиотеку → Добавить .ZIP библиотеку».
- Укажите скачанный файл — библиотека появится в списке доступных.
SHA-256:b225e95bdaa3291449ff1e8a9e69692ca1570f60b53367aa17804fe1939e26ecFastMap-0.4.3-b225e95b.zipОписание
Встроенная функция map() в Arduino теряет точность из-за целочисленного деления, плюс может экстраполировать значения за границы выходного диапазона, если входные данные выходят за пределы. FastMap решает обе проблемы: работает с float и double, предварительно вычисляет коэффициенты для производительности и гарантирует, что результат остаётся в нужном диапазоне через функцию constrainedMap(). Параметры принимают числа с плавающей точкой, что сохраняет точность при масштабировании. Есть также функция back() для обратного преобразования, правда с целыми числами она работает хуже. Учти, что нулевой диапазон на входе или выходе при инициализации вызовет ошибку и вернёт false.