При классическом, в линейном цикле от 0 до 255, изменении яркости светодиоды визуально зажигаются нелинейно - где-то от 0 до 48 яркость увеличивается быстро, а от 48 до 255 изменение яркости едва заметно. То есть для равномерного включения надо первый период зажигать медленно, а второй - или с увеличенным шагом, или с меньшим временем задержки. Есть ли подобные формулы, где приращение не постоянное, а зависящее от "близости к концу цикла", дабы не изобретать велосипед (вложенные или условные циклы)? На ум приходит логарифмическая линейка, где риски нелинейны, либо какой нибудь коэффициент k = i / 10.
Ключевое слово здесь - "заметно", т.е. глаз не видит разницы между этими уровнями освещенности. Тут сказывается два фактора - малый угловой размер источника и "логарифмическая" природа глаза как фотоприемника. Если смотреть на рассеянный и отраженный свет от светодиода, то разница будет заметна немного лучше. Решение назвали верно - калибровка, в результате которой получится таблица значений параметра ШИМ, возможно, гораздо меньшего размера. Вопрос только в том, какой прибор использовать в качестве калибратора.