Недавно мы собирали светодиодный куб на этом микроконтроллере 3х3х3. Сегодня соберем светодиодный куб 4х4х4 на Arduino ( Freeduino ) с 20 контактами ( вместе с контактами АЦП ). В этом случае можно обойтись без регистров сдвига.
Необходимые материалы:
64 Светодиода
2. 16 Резисторов
3. 1 Arduino (я использовал Freeduino)
4. 1 Макетная плата
5. Паяльник
6. Дрель
7. Кусок дерева
Выбираем светодиоды. О типах светодиодов читайте ЗДЕСЬ. Желательно брать светодиоды рассеянного свечения, дабы свет был «заполняющим». Перед сборкой проверьте работоспособность каждого из них.
Рассчитываем резистор. Каждый светодиод имеет такие параметры как падение напряжения и рабочий ток. Мы выбрали светодиоды с такими характеристиками: 3,4 В и 20 мА. На выводах Arduino 5 В. Получаем ( 5-3,4 ) \ 0,020 = 80 Ом. Берем резисторы в 100 Ом. Можно рассчитать резисторы ЗДЕСЬ.
Принцип работы куба. Куб содержит 64 светодиода. 16 столбцов и 4 горизонтальных слоя. Более продвинутый куб - смотри тут. Аноды всех светодиодов каждого из столбцов соединяем вместе. Слои же соединяем катодами. Управление светодиодами происходит при подаче 5В на столбец и GNDна горизонтальный слой. Дабы не превышать ток запускаем только один столбец и один слой единовременно.
Изготавливаем шаблон. Возьмем доску и сверлим отверстия под светодиоды. Расстояние берется в зависимости от длины катода. У нас длина катода 25 мм, поэтому расстояние между отверстиями – 23 мм.
Изготовление слоев. Собираем слои, начиная с углового светодиода и направим его катод за пределы нашего куба. Также размещаем другой светодиод с торчащим выводом. Припаиваем другую линию, делая 4 слоя таким образом.
Сборка куба. Собрав все слои приступаем к сборке куба. Один слой в шаблон и отгибаем верхние концы торчащих выводов. К ним припаиваем следующий слой. Спаиваем таким образом все 4 слоя.
За основу куба была взята макетная плата и сделан корпус. Все это Вы можете сделать на свое усмотрение.
Прошивка.
Прошить достаточно не просто, т.к. для новичка это не привычно. Но немного помучавшись Вы во всем разберетесь. Помните о динамической индикации, и зажигайте только один слой за раз. Когда на слое LOW(0В), а на столбце HIGH(+5В) появляется разность потенциалов, что позволяет току проходить через светодиод. Когда на слое HIGH(+5В), разности потенциалов нет, и светодиоды не загораются. Когда на столбе HIGH(+5В), на нем горит светодиод заданного слоя. Когда на столбе LOW(0В), светодиоды не горят. Файл прошивки arduino40_LEDCube_4x4x4 [szapisi]