Ранее мы собирали светодиодные кубы на этом контроллере 3х3х3 и 4х4х4. В данной конструкции будет использоваться 5 дешифраторов по 3-8 линии на каждый ( общенародное название демультиплексоры ). Это необходимо для преобразования двоичного сигнала с 5 битного параллельного входа в 25 битный выход, который и призван управлять светодиодами. Особенность дешифратора – высокий уровень сигнала будет только на одной из 25 линий. Если на пяти контактах Arduino 01010 (10 в двоичной системе), дешифраторы принимают этот сигнал и выводят его на свой 10 контакт. Всего их 25 с номерами 0-24.
Используются NPNтранзисторы, спаянные на катодах каждой плоскости куба. Куб собирается на печатной плате, которая изготовлена на заводе. Тем самым мы избежали кучи проводов. Можно конечно и помучиться с проводами. Это на Ваше усмотрение.
Пример работы этого куба:
Перед сборкой необходимо удостовериться, что дешифраторы выдают высокий уровень сигнала на один из выводов, высокий на другие. Ниже представлена схема и таблица:
Собираем куб:
Изготавливаем куб из светодиодов. Более простой светодиодный куб можно смотреть здесь. Для этого используем 5 мм светодиоды ( дешевые ) с короткими выводами, плюс нам понадобится провод.
Сверлим в доске отверстия необходимого диаметра с расстоянием между осей 2,5 см. Вставляем светодиоды и соединяем вместе. Так выполняем 5 слоев.
Соединяем полученные слои между собой. Расстояние между каждым слоем не менее 2,5 см. Расстояние соблюдать строго, дабы не получился эффект вытянутости или неровности. От каждого слоя от катода проводим вниз куба по проводу, которые впоследствии впаяем в плату. Готовьтесь, будет порядка 300 точек спайки.
Макет схемы:
Подключаем 5х5х5 светодиодный куб кабелем САТ5. Схема собрана на макетной плате. Выбираете угол куба, который будет начальной точкой и подключаем его к аноду – пин 0 дешифратора. Следующим анодом будет ближайший анод по оси Х, после того когда аноды по этой оси заканчиваются, переходим на ось У. Между дешифратором и столбцом используются резисторы в 150 Ом.
Катоды подключаем через транзисторы NPN. Между базой и транзистором используем резистор. Первый вывод транзистора к GND. Второй к Arduino, третий к катоду.
Программа:
Пишем программу.
В коде 4 основные части:
- LEDs.h: Номера всех контактов и массивов.
- DisplayBasics.pde: Ряд основных «форм» в кубе, для использования в модели.
- Patterns.pde: Программы отображения ( см. видео )
- LEDCubePCB.pde:Конечный вариант кода
Номер исполняемой программы изменяется в зависимости от положения потенциометра.
Печатная плата:
Данная плата разработана в среде Eagle. Вы можете скачать исходники, которые можно подвергнуть редактированию. Плата изготавливается либо на заводе, либо при помощи так называемого ЛУТ.
Все собираем, программируем и пользуемся.
Ссылка на исходные файлы и программное обеспечение. arduino39_LEDCube_5x5x5[szapisi]