РадиоКот >Лаборатория >Цифровые устройства >

Теги статьи:

К на МК.

Автор: igorkov
Опубликовано 17.03.2008

Идея навеяна устройством "Микроконтроллерное сердце". Однако использует ATMega-микроконтроллер и оформлено не в виде сердца, а в виде буквы. Думаю, взяв его как базу, можно легко оформить и для других букв.
Потребовалось сделать устройство, наподобии "Микроконтроллерного сердца", но PIC-контроллеров не было. Зато лежали несколько Mega8 и 5 проводков.
К AVR я не прикасался больше года, поэтому как использовать периферию уже полностью забыл. Старые проекты не нашел, поэтому пришлось мастерить заново. Скачал последний WinAVR, нашел в нем прекрасный Makefile, быстро создал болванку проекта. Основная проблема оказалась с перываниями. На запросы гугл выдавал достаточно "бородатые" статьи, а GCC судя по всему серьезно менял структуру для обработки прерываний и вообще заголовочных файлов, поэтому ничего не работало. Спас мануал по libc и файл листинга lss, по которому проверялось, что магический вектор установился.
Так, это так сказать предисловие, которое никому не нужно.
Дальше полезная часть:

Устройство представляет из себя маленькую платку, на которой с одной стороны напаяны светодиоды (10 штук) в форме буквы "К", с другой установлена батарейка CR2032 и микроконтроллер ATmega8L.
Принципиальная схема устройства:

Схема

С ней все понятно: контроллер, к портам подключены 10 светодиодов с ограничительными резисторами. Фильтр на питании, выключатель питания и... все.
Полный список компонентов:
ATMega8L TQFP-32 x1
KP-2012S SMD-805 x10 (зеленые светодиоды)
100 Om SMD-805 x10
0.1 SMD-805 x1
Держатель CR2032 x1
CR2032 x1

Плата: 26*30mm, двухсторонний монтаж.
Внешний вид устройства:

Фото

Замечания по плате:
1) Сделаны площадки для подпайки проводков на время отладки программы.
2) Линия RESET выведена к площадкам через ногу ADC7. На работу это не сказывается, т.к. входное сопротивление этой ноги очень велико.
Замечания по программе:
1) Для добавления эффекта требуется в строке 537 изменить приведение по модулю 8 (8 эффектов) на какое-то другое и в switch добавить варианты case. Есть пустой case 8, который в данный момент не задействован.
2) Реализован программый шим на 10 каналов для обработки свечения светодиодов. По хорошему надо было реализовать как-то по-другому, однако ничего лучше в голову не пришло.
3) Обработка прерывания занимает значительное время, поэтому величины задержек в программе не действительны и подбирались "на глаз".

Файлы:
Печатная плата в формате SL 5.0.
Прошивка МК с исходниками.

Вопросы, как всегда в Форум.