2 светодиода - состояния... Я использовал красный и зеленый. (необязательно)
Max232 или ST232.
16 резисторов для светодиодов (100-400 Ом) .
2x Резистор 470 Ом ограничивает ток светодиодов
1x Резистор 10K
4x резистор 2.2k
4x NPN транзистор BC338 (или другой транзистор, способного к коммутации 250 мА)
1x 10uF конденсатор
1x 1000uF конденсатор
6x 0.1uF керамических конденсатор
2x 22pF керамических конденсатор
1x кварц 14,7456 МГц
2x кнопки
переключатель
Разъем для питания 12v
Разъем для питания 5V
RS-232 интерфейс не является обязательным и может не устанавливатся.
Куб соединяется в слоя с общим катодом!
Синим обозначен слой, таких слоев четыре, в слоях светодиоды собираются катодами вместе т.е. с общим катодом.
Красным обозначен столбик, всего 16-ть контактов от каждого столбика (16-ть столбиков), эти контакты припаиваются к плате, в столбиках светодиоды собираются с общим анодом!
Куб должен перезагрузиться и начать работать. Он будет работать на 1MHz (очень медленно), используя его внутренний генератор. И некоторые из светодиодов не будут работать, потому что некоторые GPIO порты используются для JTAG по умолчанию...
Для включения внешнего генератора и отключить JTAG, мы должны поставить в программе предохранитель байт:
запустить "AVRDUDE-с-р usbtiny M16-U lfuse: м: 0xef: м."
и "AVRDUDE-с-р usbtiny M16-U hfuse: м: 0xc9: м".
Будьте внимательны при выполнении этого шага! Если вы получаете это неправильно, вы можете полностью уничтожить микроконтроллера! Если вы используете другой, чем микроконтроллер ATmega16, обязательно прочитайте внимательно, прежде чем данные измените в предохранительном байте!
После ввода правильного байта-предохранитель, куб должен перезагрузиться и начать работу на регулярной скоростью все светодиоды должны работать.
Наслаждайтесь вашим кубом
Софт доступен в авторской статье.
P.S. В целях сохранения популяции микроконтроллеров :) рекомендую не использовать данный "софт" . Таким же образом можно корректировать прошивку через ICSP разъем !
С УВ Nikolai4
Скачать печатную плату от пользователя GoldenDiver