Конвертер шрифтов для дисплеев оборудования

Разработан «Конвертер шрифтов» для дисплеев оборудования. Любой шрифт (векторный, пиксельный, символьный), можно преобразовать в шрифт дисплея, с выбором его размера и начертания, вне зависимости от кодировки. Конвертер все преобразовывает в матрицу символов, состоящую из пикселей.

При использовании цветных дисплеев отнимается значительное процессорное время. При прорисовке символов, время, затрачиваемое на прорисовку, оказалось значительным (в определенной функции, при прорисовки 8 символов 16х16 пикс 30 мс). Попытался оптимизировать функцию отображения строки. Символы стали рисоваться только те, которые изменились. Снизил время прорисовки в 2 раза, но проблему не решило. При 1 прорисовке терялось n кол-во
импульсов счетчика, так как функция прорисовки является непрерываемой. То есть пока не прорисуется заданный символ, контроллер не видел импульсов со счетчиков. Чем больше символы, тем больше тратилось времени на их отображение.

Задача была решена следующим образом: функция прорисовки была сделана прерываемой, с шагом прорисовки в 1, 2 или 4 линии за 1 раз. При изменении символа (допустим, это отображение чисел, при их изменении), функция прорисовки обрывалась, так как прорисовывать устаревший символ уже не было необходимости и начинала прорисовку нового (изменившегося) символа заново.

Время прорисовки (в сравнении одной и той же процедуры работы прибора до и после модернизации) сократилось в 200 раз.

Кроме шрифтов конвертер поддерживает преобразование пиксельных изображений с индексацией цветов, оптимизацией памяти и загрузки без фонового цвета.