Небольшое вступление.
Давно было желание изготовить светодиодную матрицу, а еще больше поиграться с написанием скетчей для ее оживления. И вот наконец-то дошли руки. (Самое удивительное, что плату сделал достаточно быстро, а вот написание программы и оформление статьи — самое времязатратное дело).
Итак, попробуем сделать светодиодную матрицу, размером 8х8. Причем, для удешевления конструкции, возьмем не готовую платформу, а 64 светодиода. (Не поверите, по деньгам выходит почти в три раза дешевле. Конечно, с запайкой придется повозиться, но эти трудности меня не остановили).
Возможно, я немного перестарался в написании, но очень хотелось рассказать все досконально. Как часто пишут в инете: «феерическая расстановка точек над….» По традиции, разобью статью на три части: «Теория», «HARD» и «SOFT» 🙂
Итак, часть первая, «Теоретическая».
Кому все давно известно и понятно, смело можем пропускать 🙂
Что такое светодиодная матрица?
Логично предположить, что светодиодная матрица состоит из светодиодов.
Светодиод (LED англ. Light Emmiting Diode) это Свето Излучающий Диод. И ни как не лампочка!!! А так как это диод, то он, (кроме того, что может излучать свет) является полупроводниковым прибором.
Светодиоды могут быть различных цветов, размеров, форм, мощностей и т.д. (Погуглите на эту тему самостоятельно).
Самыми ходовыми (у Ардуинщиков) являются круглые, 3-х (реже 5-ти) миллиметровые, с диффузионной (рассеивающей) линзой, стандартные.
Важной характеристикой светодиода является зависимость падения напряжения от тока при прямом и обратном включениях. По графику (смотри ниже) можно определить, что каждому значению тока соответствует свое падение напряжения на светодиоде. Чем выше значение тока, тем выше падение напряжения (и тем выше яркость).
— Полярность: светодиод в одну сторону не проводит ток, а в другую проводит и при этом светится. Поэтому, если перепутать полярность — светодиод не будет светится, но при этом не перегорит.
— Напряжение пробоя: Если при неправильно включенном светодиоде увеличить обратное напряжение больше допустимого светодиод сгорит. Обычно около — 5 вольт.
— Рабочий ток: Светодиод, когда светится, имеет максимально допустимый прямой ток (If), если этот ток больше допустимого — светодиод сгорит. Максимальный ток светодиода зависит от его модели.
!ВАЖНО!
Светодиод нельзя напрямую подключать к источнику напряжения!!!
Ниже способы подключения и пример расчета токоограничивающего резистора:
Немного поясню. В расчетах мы используем закон Ома 🙂 I=U/R.
Кому лень считать и лазить по справочникам, советую воспользоваться ON-Line калькулятором.
Там, кстати, вы найдете и более точные параметры для разных светодиодов.
Общее между светодиодом и лампочкой только то, что они излучают свет, больше сходств нет:)
Очень хорошо описано все, что касается светодиодов тут. Рекомендую ознакомиться, ну а кому лень читать, скажу по простому:
* У светодиода два вывода: Анод (длинная ножка) и Катод (короткая ножка).
* Если через светодиод пропустить ток в прямом направлении (+ к Аноду, а минус — к Катоду) — то он будет светиться.
* Для нормальной работы светодиода, протекающий через него ток должен быть, как правило, от 3 до 20 мА.
Теперь будем плавно переходить к вопросу объединения светодиодов в нечто БОЛЬШЕЕ и, самое главное, управлению этим «объединением».
Дальше по тексту, для простоты понимания, пока забудем про токи, резисторы и т.п. Будем считать, что все это у нас уже обеспечено.
Ага, значит два провода на один светодиод…
Хм, а если у нас 4 светодиода — понадобиться 8 проводов, для 16 — 32!!! Не, так не годится. Попробуем немного сэкономить на выводах. В первом приближении, мы запросто можем все катоды объединить и посадить на землю
Подаем на вывод №1 положительный потенциал — загорается первый светодиод ну и т.д.
Тот же принцип, но несколько строк 🙂
Вроде все хорошо. Мы в такой схеме можем независимо управлять каждым светодиодом и зажигать их в нужной нам комбинации. Это , так называемый, режим статической индикации. Но есть тут и ложка дегтя… В такой схеме соединения, мы имеем для 9 светодиодов — 9 управляющих линий. А для 64 светодиодов — соответственно 64 вывода. Короче, сколько светодиодов, столько и управляющих сигналов. Довольно расточительно…
Ужимаемся еще.
И тут на сцене появляется динамическая индикация.
Динамическая индикация – это метод отображения целостной картины через быстрое последовательное отображение отдельных элементов этой картины. Причем, «целостность» восприятия получается благодаря инерционности человеческого зрения. (На этом принципе, как вы догадываетесь, построено кино и телевидение :)).
В светодиодной матрице светодиоды соединены между собой следующим образом:
Получается по схеме, что светодиоды собраны в строки и столбцы. Если подать «1» в столбец (т.е., подать нужное напряжение), а одну (или несколько) строк соединить с землей, то загорятся светодиоды на пересечении этих строк и столбца.
Пару примеров, поясняющих данный принцип:
Я выбрал для реализации самый удобный вариант матрицы — 8х8 (не буду объяснять почему… Но дам подсказку: 1 байт=8 бит).
А как выводить нужное изображение на такую матрицу?
Ответ: построчно. (Ну или по столбцам)
Напомню, что в один момент времени будут гореть нужные светодиоды только одной строки. И получается, что при высоких частотах, человеческий глаз не способен разглядеть эти переключения, и кажется что картинка горит постоянно. (кстати, в интернете рекомендуется не использовать частоты кратные 50Гц).
Рассмотрим, вывод на матрицу изображения буквы «А»
Условимся, что за активность («притянутость к земле») строки у нас отвечает регистр «ROW REGISTER«, а за нужные (для текущей строки) колонки «COLUMN REGISTER«.
Весь вывод картинки будет состоять из восьми шагов. На каждом шаге к земле будет подключена только одна строка.
Думаю, что последняя картинка очень хорошо объясняет весь процесс. Как мне показалось, добавить словами тут и нечего. Пора переходить к вопросу воплащения задуманного в жизнь.
To be continued… (или по нашему) Продолжение следует…
0 комментариев на «“Очередной шилд. Светодиодная матрица 8х8. (Сага в 3-х частях). Часть 1 (Теоретическая)”»
Часть 1 в заголовке предполагает наличие частей 2 и 3. Меня как раз интересовала последняя часть, хотя и вторая, часть, HARD, была бы интересна. Но что-то увы, тема заглохла. Как бы ознакомиться с продолжением?
Ну да… Были задуманы три части. Но, я потерял интерес к этому шилду… Хотя и железка была сделана и какой-то софт был написан. Могу поискать наработки, если есть жгучий интерес 🙂 Просто возвращаться к этой теме и дописывать статьи — большого желания нет. Простите…
Если не трудно, пришлите, что есть. vlipt @ mail. primorye. ru
наверняка что-нибудь полезное будет.
Из всего что найдено на просторах интернета эта статья оказалась наиболее понятной моему маленькому мозгу. Очень жаль, что нет продолжения… Если всё-таки наработки остались, я бы была крайне благодарна за них!