Управління світлодіодами полягає в їх включенні і виключенні за допомогою спеціальної схеми. Єдиний спосіб включити і вимкнути світлодіод в схемі на рис. 2.4 – подати і відключити напругу живлення. Однак світлодіоди можна вмикати / вимикати за допомогою мікроконтролера і отримувати цікаві світлові візерунки. На рис. 2.8 показана принципова схема, що складається з мікроконтролера Tinyl3 і п’яти світлодіодів.

Рис. 2.8. Управління світлодіодами від мікроконтролера

Всі світлодіоди підключені до контактів мікроконтролера через резистори. Два світлодіоди (LED1 і LED2) підключені за схемою з загальним анодом до джерела живлення, а інші три (LED1, LED2 і LED3) – за схемою із загальним катодом до загальної шини. Ці два різні способи використані тільки для прикладу. Для мікросхем 74-й серії TTL-вентилів (наприклад, 7400 або 74LS00) переважніше підключення зовнішнього навантаження до джерела харчування, ніж до загальної шини. Однак для сучасних мікросхем КМОП (таких, як мікроконтролери AVR) спосіб підключення світлодіодів не має значення.

У схемі на рис. 2.8 світлодіоди LED1 і LED2 загоряться, коли на відповідному виході контролера буде логічний нуль, а інші світлодіоди – коли на відповідних виходах з’явиться логічна одиниця. Величина опору резистора залежить від необхідного струму через світлодіод, який не повинен перевищувати вихідний струм мікроконтролера. Максимальний вихідний струм мікроконтролерів AVR – 40 мА. Напруга джерела живлення повинно бути більше порогового напруги включення світлодіодів. Наприклад, двох лужних батарейок (3 В) буде достатньо для включення червоних світлодіодів. Однак сині світлодіоди працювати не будуть. Для їх роботи напруга живлення має дорівнювати 5 В.

Мікроконтролер може перемикати світлодіоди з будь-якою частотою. Однак якщо частота комутації перевищує 20 Гц, то світлодіоди будуть неприємно мерехтіти. При збільшенні частоти, наприклад “до 100 Гц, мерехтіння зникне і світлодіоди будуть здаватися постійно включеними. Насправді світлодіоди будуть включатися і виключатися з частотою 100 Гц, однак людське око не може реагувати на настільки швидке перемикання. Це цікаве явище (воно називається модуляцією інтенсивності світіння) ми будемо використовувати для зміни інтенсивності світіння світлодіодів.

Рис. 2.9. Сигнал з широтно-імпульсною модуляцією

На рис. 2.9 показаний сигнал з широтно-імпульсною модуляцією (ШІМ, PWM), що має частоту F = UT (показана на верхньому графіку). Припустимо, що частота F дорівнює 100 Гц. При постійній частоті сигналу міняємо час знаходження сигналу в стані логічної одиниці. Хай цей час одно ΤΊ. Ставлення періоду Т до часу 71 називається шпаруватістю сигналу. Сигнали, показані на рис. 2.9, можна без зусиль згенерувати за допомогою микроконтроллерной схеми, наведеної на рис. 2.8. Якщо сигнал, позначений як 50%, подати на світлодіод LED3 через контакт РВ2 даної схеми, то спостерігач побачить інтенсивність світіння 50% від тієї, яка буде отримана у разі подання на контакт РВ2 постійної логічної одиниці (при якому яскравість максимальна). Так відбувається тому, що тепер середній струм через світлодіод становить 50% від максимального.

Якщо ж на світлодіод LED3 подати сигнал, позначений як 75%, то інтенсивність складе 75% від максимальної. Можна задати будь-яке значення сигналу від 0% (мінімальна інтенсивність) до 100% (максимальна інтенсивність). Сигнал з широтно-імпульсною модуляцією можна згенерувати або програмно, або апаратно (за допомогою вбудованих в мікроконтролер AVR таймерів). Використання апаратних таймерів дозволяє микроконтроллеру виконувати інші додаткові завдання. Ці способи управління світлодіодами будуть зустрічатися в багатьох наступних проектах. Особливо зручно за допомогою ШІМ управляти кольоровими світлодіодами, створюючи велика кількість проміжних кольорів і відтінків.

Крім управління інтенсивністю світіння слід також обговорити способи з’єднання світлодіодів. До теперішнього моменту ми розглядали підключення лише одного світлодіода до одного контакту мікроконтролера. Крім цього, світлодіоди можна з’єднувати послідовно або паралельно. Можливо послідовне з’єднання світлодіодів з одним резистором (рис. 2.10).

Число світлодіодів, послідовно підключаються до висновку мікроконтролера, визначатиметься напругою включення світлодіодів і напругою живлення. При напрузі живлення, рівному 5 В, можна послідовно підключити два червоних світлодіода. Але два синіх світлодіода підключити так не вдасться, оскільки напруга включення ланцюжка з двох синіх світлодіодів буде вище, ніж напруга живлення +5 В. З тієї ж причини не вдасться послідовно підключити і три червоних світлодіода.

Рис. 2.10. Послідовне з’єднання світлодіодів

Якщо потрібно підключити три світлодіода, то краще їх з’єднати паралельно, як показано на рис. 2.11.

Рис. 2.11. Підключення паралельно з’єднаних світлодіодів до контролера

Рис. 2.12. Варіант підключення послідовно з’єднаних світлодіодів через транзистор

Зверніть увагу, що замість одного резистора і паралельного підключення світлодіодів ми вибрали варіант підключення по одному резистору на кожен світлодіод і подальше паралельне з’єднання цих · ланцюгів. Так зроблено тому, що світлодіоди з однієї партії можуть мати різні напруги включення; і якщо при цьому з’єднати паралельно кілька світлодіодів, то світлодіод з найнижчим напругою включення буде домінувати над іншими (споживати більший струм і світитися яскравіше інших). У гіршому випадку весь струм піде через один світлодіод, а решта зовсім не загоряться. При паралельному підключенні декількох світлодіодів сумарний струм через всі світлодіоди повинен бути менше, ніж максимальний струм виходу мікроконтролера. Якщо ж струм через світлодіоди перевищує можливості мікроконтролера, то можна застосувати схему, показану на рис. 2.12, де η-р-і-транзистор управляє декількома послідовно з’єднаними світлодіодами.

Напруга V (Drive), що подається на світлодіоди, повинно бути більше суми напруг включення всіх послідовно включених світлодіодів. Резистор R1 визначає струм через світлодіоди. Резистор Rb в ланцюзі бази п-р-і-транзистора служить для обмеження струму бази; опір Rb обчислюється по струму колектора (який тече і через світлодіоди) і за коефіцієнтом посилення транзистора. Ось приклад: припустимо, що ви хочете з’єднати послідовно п’ять червоних світлодіодів і подати на них струм 30 мА. З табл. 2.1 видно, що напруга включення червоного світлодіода дорівнює 2 В, отже, буде потрібно джерело 10 В. Падіння на висновках колектора і емітера транзистора складе 0,5 В. Бажано отримати напруга V (Drive) в 15 В, тому опір R1 = (15 – 10,5) В / 30 мА = 150 Ом. Для даного випадку підійде транзистор малої потужності типу ВС547. Зазвичай значення β для ВС547 становить 100, тому необхідний струм бази 30 мА / 100 = 300 мкА. Якщо мікроконтролер харчується напругою +5 В, то за логічну одиницю можна прийняти напругу в 4,5 В. Падіння напруги V (be) на переході “база-емітер” приблизно дорівнює 0,7 В. Таким чином, Rb = (4,5 – 0,7) В / 300 мкА = 12, 6 кОм. Отже, в якості Rb цілком підійде опір 10 ком. Для схеми, наведеної на рис. 2.13, необхідно, щоб всі послідовно з’єднані світлодіоди були одного кольору. При розрахунку потрібно врахувати сумарне падіння напруги на всіх цих світлодіодах, щоб визначити напругу V (Drive) і значення R1 і Rb.

На рис. 2.13 показано, як можна поєднати кілька світлодіодів паралельно і підключити до контролера через п-р-і-транзистор. Така схема потрібна, коли сумарний струм через світлодіоди перевищує вихідний ток мікроконтролера. Припустимо, що ви хочете керувати десятьма паралельними світлодіодами (кожен зі струмом у 20 мА). Буде потрібно струм в 200 мА, що набагато більше, ніж може дати один висновок мікроконтролера. Однак для управління цими світлодіодами буде цілком достатньо п-р-і-транзистора середньої потужності з максимальним струмом колектора 1 А. Розрахунок опору резистора для кожного зі світлодіодів (а також опору Rb) аналогічний розглянутому раніше.

Рис. 2.13. Варіант підключення паралельно з’єднаних світлодіодів через транзистор

Джерело: Гадре, Д., Цікаві проекти на базі мікроконтролерів tinyAVR / Дхананья Гадре, Нігула Мелхотра: Пер. з англ. – СПб .: БХВ-Петербург, 2012. – 352 с .: іл. – (Електроніка)