Условия, которые необходимо соблюдать при программировании матриц динамической индикации:
Быстро мелькающий объект кажется человеческому глазу постоянно светящимся. Это свойство человеческого глаза ЂЂЂ инертность. Как вы догадались, именно на этом свойстве и основан метод вывода информации в светодиодной матрице. Например, чтобы вывести на «экран» некий символ, нужно последовательно, проходя все «пиксели» матрицы с высокой скоростью, включать светодиод в нужном месте.
«Хорошо, а если нам, например, нужно зажечь несколько светодиодов в разных позициях матрицы, а все остальные оставить выключенными?» ЂЂЂ спросите Вы. При статической индикации это не представляется возможным. Для этого нужно использовать динамическую индикацию.
В таком случае нам понадобится лишь 16 цифровых вводов/выводов. Например, чтобы зажечь светодиод в левом верхнем углу, нам нужно на pin13 (см. картинку) подать лог 1, а на pin9 лог 0. Такой способ отображения называется статическая индикация.
В данной светодиодной матрице находится 64 красных светодиода. Если выводить контакты каждого светодиода отдельно, то понадобится 64 контакта на корпусе матрицы и микроконтроллер с 65 цифровыми портами ввода/вывода. Это нецелесообразно и невыгодно. Поэтому на заводе-изготовителе светодиоды объединяют в матрицы различных размеров (в нашем случае 8х8), то есть в 8 групп по строкам и столбцам следующим образом:
Данная статья не претендует на толкование как единственно возможного метода отображения и прокрутки информации на светодиодной матрице. Я с удовольствием выслушаю ваши замечания и предложения по улучшению метода/функций. Данная статья ЂЂЂ изложение личного опыта и описание результата, которого я добился.
«Бегущая строка» ЂЂЂ динамическая индикация на примере светодиодной матрицы RL-M2388 и Arduino Mega
«Бегущая строка» ЂЂЂ динамическая индикация на примере светодиодной матрицы RL-M2388 и Arduino Mega / Хабрахабр
Комментариев нет:
Отправить комментарий