После того, как я изготовил матрицу 8х10, ко мне обратилось множество людей с просьбой создать матрицу большего размера, а также обеспечить запись данных в матрицу с помощью ПК. Потому в один прекрасный день я собрал светодиоды, которые остались после изготовления светодиодного куба, и решил все-таки сделать матрицу большего размера с учетом требований, о которых меня просили коллеги.
Ну, и чего же вы ждете? Берите светодиоды и паяльник, потому, что мы сейчас вместе будет делать светодиодную матрицу 24х6!
Шаг 1: Сбор всего необходимого
Для данного проекта вам потребуется базовый набор инструментов: паяльник, припой, щипцы, немного проволоки, кусачки, инструмент для снятия изоляции провода, а также приспособления для демонтажа, если они вам необходимы.
Для изготовления матрицы необходимо:
1. 144 светодиода
2. 24 резистора (номинал определяется по типу светодиодов, в моем случае 91 Ом)
3. Десятичный счетчик 4017
4. 6 резисторов номиналом 1 кОм
5. 6 транзисторов 2N3904
6. Длинная макетная плата
7. Arduino
8. 3 x 74HC595 регистра сдвига
10. Несколько штыревых разъемов
Шаг 2: Как это работает?
Идея работы светодиодной матрицы заключается в следующем: обычно информация разбивается на небольшие части, которые далее передаются одна за другой. Таким способом вы может сэкономить множество выводов на Arduino и сделать вашу программу достаточно простой.
Теперь пришло время задействовать 3 сдвиговых регистра, которые умножают несколько выходов и позволяют сэкономить множество выводов arduino.
Каждый сдвиговый регистр имеет 8 выходов и вам нужно лишь 3 вывода arduino для контроля почти неограниченного числа сдвиговых регистров.
Мы также будем использовать десятичный счетчик 4017 для сканирования рядов. С помощью него можно сканировать до 10 рядов, поскольку у вас есть лишь 10 выходов, однако для контроля их необходимо всего лишь 2 вывода.
4017 — это очень полезная микросхема. Ознакомиться с ее работой можно по сноске
Как я сказал ранее, сканирование выполняется с помощью десятичного счетчика 4017, посредством подсоединения одного ряда к земле за один раз и пересылки данных через сдвиговые резисторы в колонки.
Шаг 3: Схемное решение
Единственными элементами, которые я не указал на схеме, являются резисторы ограничения тока, поскольку их номинал зависит от типа используемых светодиодов. Потому их величину вам необходимо вычислить самостоятельно.
Для расчета величин 24 резисторов перейдите по следующей ссылке: LED-калькулятор.
Сначала необходимо посмотреть спецификацию светодиодов, чтобы узнать прямое напряжение и прямой ток. Эту информацию можно узнать у продавца. Схема работает от напряжения 5В. Следовательно, вам необходим источник питания напряжением 5В.
Загрузите оригинальный файл, чтобы более подробно изучить схему (нажмите на схему для увеличения изображения).
Я также добавил макет печатной платы управления. Данный макет изготовлен благодаря инструментальному средству Willard 2.0.
Шаг 4: Пайка светодиодов
Пайка 144 светодиодов для создания матрицы может оказать трудной задачей, если вы не знаете наверняка, как это сделать.
Последний раз я паял матрицу, используя много проволочных джамперов, которые очень тяжело припаивались. Потому в этот раз я более творчески подошел к данной проблеме.
Вам необходимо согнуть вниз положительный вывод светодиода по направлению к другим выводам и сделать ряд, далее отрезать неиспользуемую часть вывода, и попытаться сделать эти соединения низкими, насколько это возможно. Далее аналогично выполнить эту процедуру для всех положительных выводов.
Теперь отрицательные выводы соединены в колонку и их пайка затруднена из-за положительного ряда на их пути. Потому вам необходимо согнуть отрицательный вывод на 90 градусов, далее сделать мостик над положительным рядом к следующему отрицательному выводу и так далее для остальных светодиодов.
Я не стану объяснять, как припаивать сдвиговые регистры и остальные компоненты, поскольку у каждого есть свой стиль и методы работы.
Шаг 5: Программирование матрицы
Вот мы и подошли к последнему этапу нашего проекта – программированию матрицы.
До этого я уже написал две программы, которые имеют много общего.
Я добавил программу, которая получает слово или предложение от последовательного монитора IDE arduino и отображает его на матрице. Код программы достаточно простой и не претендует на лучший в мире, но он действительно работает. Вы можете написать свой код или изменить мой на свое усмотрение.
Я приложил файл в формате excel, чтобы вы сумели создать свои собственные знаки и символы.
Вот как это работает:
Создайте требуемый символ пиксель за пикселем (не беспокойтесь, это очень легко) и скопируйте выходную строку следующим образом — #define {OUTPUT LINE}
В дальнейшем я планирую добавить код для анимации, когда у меня появится больше времени.
Шаг 6: Устройство готово!
Поздравляю! Вы самостоятельно сделали матрицу a 24×6 и теперь можете оперативно выводить на нее все, что вам нужно.
Теперь вы можете протестировать матрицу, придумать новые программы или улучшить интерфейс.
Список радиоэлементовОбозначение
Тип
Номинал
Количество
ПримечаниеМагазинМой блокнот
Плата ArduinoArduino Uno1
U1-U3
Сдвиговый регистрCD74HC5953
U4
Специальная логикаCD4017B1
K561ИЕ8Q1-Q6
Биполярный транзистор2N39046
Резистор91 Ом24
Резистор1 кОм6
Светодиод144
Добавить все
Скачать список элементов (PDF)
Прикрепленные файлы:
- arduino106.rar (10 Кб)