Лампа настрою на attiny13

Лампа настрою - це світлодіодний RGB світильник, що плавно змінює колір світіння випадковим чином. У Мережі можна знайти безліч різних схем таких ламп, причому, як правило, на базі щодо потужних мікроконтролерів. Мені хотілося зробити лампу на основі самого примітивного AVR мікроконтролера ATTINY13.

Схема вийшла лампи тривіальна:

Лампа настрою на attiny13

Алгоритм роботи наступний:

  • випадковим чином генерується значення RGB колірної точки і інтервал часу, через яке цей колір буде досягнутий
  • щоб кольори виходили "красивими" один з RGB компонент випадковим чином зануляют
  • на перериванні таймера-лічильника висить обробник саморобного Шиман, а через кожен цикл ітерації Шиман обчислюються поточні кольору світіння світлодіодів

Проект написаний і скомпільований в AVRStudio 5.0. Помічений кумедний момент - скомпільована Debug-версія прошивки зайняла тисяча двадцять дві байта, а Release-версія - цілих 1 094 байта, що робить останню абсолютно непридатною для прошивки в кілобайтний контролер. Налаштування студії я не чіпав, все за замовчуванням.

Для запису прошивки використовував avrdude. програмування в ньому робиться командою:

Друкована плата лампи:

Лампа настрою на attiny13

Потужний світлодіод встановлений на радіатор, зроблений з корпусу старого алюмінієвого електролітичного конденсатора:

Лампа настрою на attiny13

В якості корпусу для лампи узятий оптоволоконний світильник на батарейках, "начинка" якого була повністю вилучена.

Лампа настрою на attiny13

Схема і плата Eagle + PDF і SVG файли для Лутай
Прошивка і вихідні (AVR Studio 5)
скомпільована прошивка

Схожі статті