Перейти к содержанию

Подключение светодиода к микроконтроллеру

Светодиод подключают к выводу микроконтроллера через резистор, который задаёт ток: R = (Uвыв − Uпр) / I. Считать нужно по реальному напряжению вывода под нагрузкой и по максимальному прямому напряжению светодиода из даташита, а цепочки на 12 В и мощные светодиоды включать через транзистор.

Обновлено Редакция GAW

Светодиод подключают к выводу микроконтроллера последовательно с резистором. Резистор задаёт ток: на нём падает разница между напряжением вывода и прямым напряжением светодиода. Без резистора ток ограничен только выходным сопротивлением вывода — светодиод и вывод перегружаются.

Коротко

Светодиод на выводе

Светодиод на выводе микроконтроллера: вывод отдаёт ток или принимает егоСлева вывод микроконтроллера через резистор R1 330 Ом подключён к аноду светодиода VD1, катод — на общем проводе: светодиод горит, когда на выводе единица. Справа анод светодиода через резистор R1 330 Ом подключён к плюсу 5 В, а катод — к выводу микроконтроллера: светодиод горит, когда на выводе ноль.МКвывод = 1R1330 ОмVD1красныйа) вывод в «1» отдаёт ток+5 ВR1330 ОмVD1красныйМКвывод = 0б) вывод в «0» принимает ток

Есть два включения. В первом (а) вывод в единице отдаёт ток: анод через резистор к выводу, катод на общий провод — светодиод горит при digitalWrite(pin, HIGH). Во втором (б) вывод в нуле принимает ток: анод через резистор к плюсу питания, катод к выводу — светодиод горит при LOW. Второй вариант нужен, когда напряжения вывода не хватает на светодиод, а также для выводов с открытым стоком.

Расчёт резистора

Пример 1: Arduino Uno, вывод 5 В, красный светодиод Kingbright WP7113ID. Прямое напряжение при 10 мА — 1,9 В типично, 2,3 В максимум. Резистор на 10 мА: R = (5 − 1,9)/0,01 = 310 Ом → 330 Ом. Ток — (5 − 1,9)/330 = 9,4 мА при типичном светодиоде и (5 − 2,3)/330 = 8,2 мА при максимальном прямом напряжении. Мощность резистора 0,00942 · 330 ≈ 29 мВт — подойдёт любой.

Вывод не идеальный источник: у ATmega328P при токе 20 мА и питании 5 В напряжение единицы гарантировано только не ниже 4,2 В, а нуля — не выше 0,9 В (DS40002061B, табл. 30-1, до 85 °C). При 10 мА потери меньше, но тоже есть.

Пример 2: STM32 с питанием 3,3 В, тот же светодиод на 8 мА. У STM32F072 при токе 8 мА напряжение единицы не ниже VDD − 0,4 В, то есть 2,9 В (DS9826, табл. 54). Резистор по типичным значениям: (3,3 − 1,9)/0,008 = 175 Ом → 180 Ом. В худшем случае — вывод 2,9 В и светодиод 2,3 В — ток (2,9 − 2,3)/180 = 3,3 мА: светодиод будет светить заметно тусклее. Чем ближе прямое напряжение к напряжению питания, тем сильнее разброс тока.

Пересчитать под свои значения:

Исходные данные

В

Типичный диапазон 1,8–2,5 В: возьмите Vf из даташита своего светодиода

В
мА

у каждой свой резистор

Результат

Резистор
150 Ом
расчётное 150 Ом, округлено вверх по E24
Ток через светодиод
20 мА
Мощность резистора
60 мВтберите резистор не меньше 0,125 Вт
Напряжение на резисторе
3 В
Мощность одного светодиода
40 мВт
Общий ток от источника
20 мА
КПД (доля мощности на светодиодах)
40 %

Цепочка светодиодов на 12 В

Если светодиодов много или нужен большой ток, их питают от отдельного источника, а вывод управляет транзистором. Последовательная цепочка с одним резистором экономичнее: через все светодиоды течёт один ток.

Цепочка из трёх светодиодов на 12 В с ключом на транзистореОт плюса 12 В через резистор R2 620 Ом и три последовательных красных светодиода VD1–VD3 ток идёт в коллектор транзистора VT1 BC547B, эмиттер которого соединён с общим проводом. База подключена к выводу микроконтроллера 3,3 В через резистор R1 4,7 кОм, между базой и общим проводом — резистор R3 10 кОм.+12 ВR2620 ОмVD1VD2VD3WP7113ID, 10 мАVT1BC547BМК3,3 ВR14,7 кОмR310 кОм

Расчёт. Три красных WP7113ID на 10 мА от 12 В, ключ — BC547B.

  1. Напряжение на цепочке: 3 · 1,9 = 5,7 В типично, 3 · 2,3 = 6,9 В максимум.
  2. На насыщенном BC547B при 10 мА и токе базы 0,5 мА — не больше 0,25 В (BC546/D).
  3. Резистор: R2 = (12 − 5,7 − 0,25)/0,01 = 605 Ом → 620 Ом. Ток — 9,8 мА с типичными светодиодами и (12 − 6,9 − 0,25)/620 = 7,8 мА с худшими. Мощность 0,00982 · 620 ≈ 0,06 Вт.
  4. Ток базы — 0,5 мА, как в условиях, при которых нормировано напряжение насыщения: R1 = (3,3 − 0,7)/0,5 мА = 5,2 кОм → 4,7 кОм (0,55 мА). R3 держит транзистор закрытым после сброса.

Для нескольких цепочек каждой нужен свой резистор — в калькуляторе это поле «параллельных цепочек». Ставить параллельные светодиоды на один резистор нельзя: прямые напряжения разных экземпляров различаются (у WP7113ID — от типичных 1,9 до 2,3 В), и ток распределится неравномерно. Для светодиодных лент и токов в сотни миллиампер вместо BC547B берут ключ на MOSFET.

Детали

ПозицияДетальПримечание
VD1Kingbright WP7113ID, красный, 5 мм30 мА постоянного тока, обратное напряжение 5 В, −40…+85 °C
R1 (пример 1)330 Омот вывода 5 В, 9,4 мА
R1 (пример 2)180 Омот вывода 3,3 В, 3,3–7,8 мА
VD1–VD3WP7113IDцепочка на 12 В
R2620 Ом, 0,125 Втна 10 мА
VT1BC547Bдо 100 мА; больше — P2N2222A или MOSFET
R1, R34,7 кОм, 10 кОмцепь базы

Яркость и мигание

Яркость регулируют ШИМ: светодиод включается и выключается с частотой выше заметной глазу, а средняя яркость пропорциональна заполнению — подобрать частоту и заполнение поможет калькулятор ШИМ. Импульсный ток может быть больше постоянного: у WP7113ID допустимо 160 мА, но только при заполнении 1/10 и длительности импульса 0,1 мс. На этом строится динамическая индикация, где каждый разряд горит часть времени.

Почему не работает

  • Светодиод не горит. Перепутана полярность: анод (длинный вывод) должен быть со стороны плюса. Обратное напряжение у WP7113ID — всего 5 В.
  • Горит наоборот. Светодиод подключён по схеме «вывод принимает ток», а программа считает, что единица его включает.
  • Синий или белый еле светит от 3,3 В. Прямое напряжение (у WP7113QBC/D до 4,0 В) больше напряжения вывода — питайте от 5 В через ключ.
  • Яркость разная у одинаковых светодиодов. Параллельные светодиоды на одном резисторе или малый запас напряжения на резисторе: разброс прямого напряжения превращается в разброс тока.
  • Вывод греется, микроконтроллер сбрасывается. Нет резистора или превышен суммарный ток выводов: у STM32F072 — 80 мА на все выводы, у ATmega328P — 100 мА в нуле на группу выводов.
  • Синий светодиод перестал светить после пайки. У WP7113QBC/D стойкость к электростатическому разряду всего 250 В по модели тела человека против 8000 В у красного WP7113ID: работайте с заземлённым браслетом.

Частые вопросы

Какой резистор нужен для светодиода на Arduino?

Для красного светодиода и вывода 5 В при токе 10 мА: R = (5 − 1,9) / 0,01 = 310 Ом, ставят 330 Ом. Ток 9 мА — достаточно для индикатора. Можно и 20 мА (у WP7113ID допустимо до 30 мА), но вывод ATmega328P при таком токе отдаёт уже не 5 В, а не меньше 4,2 В — пересчитайте резистор.

Можно ли подключить светодиод к выводу без резистора?

Нет. Светодиод — диод, ток через него растёт очень круто с напряжением, и без резистора его ограничивает только выходное сопротивление вывода. Ток превысит допустимый и для светодиода (у WP7113ID — 30 мА), и для вывода (у ATmega328P — 40 мА, у STM32F072 — 25 мА).

Почему синий светодиод еле светит от 3,3 В?

У синих и белых светодиодов прямое напряжение около 3 В и выше: у Kingbright WP7113QBC/D — 3,3 В типично и до 4,0 В при 20 мА. От вывода 3,3 В на резистор не остаётся напряжения, и ток мал. Такие светодиоды питают от 5 В через транзисторный ключ.

Сколько светодиодов можно подключить к одному микроконтроллеру?

Ограничен не только ток каждого вывода, но и суммарный ток. У STM32F072 сумма токов всех выводов — не больше 80 мА, у ATmega328P сумма токов выводов в одной группе — 100 мА в нуле и 150 мА в единице. Для многих светодиодов используют динамическую индикацию, сдвиговые регистры, драйверы или транзисторные ключи.

Источники

  1. Kingbright. WP7113ID: T-1 3/4 (5 mm) Solid State Lamp (DSAF0012, Rev V.14A) — прямое напряжение при 10 мА, предельные постоянный и импульсный ток, обратное напряжение, мощность, температура
  2. Kingbright. WP7113QBC/D: T-1 3/4 (5 mm) Solid State Lamp (DSAG3481, Rev V.18B) — синий светодиод: прямое напряжение при 20 мА, предельный ток, стойкость к разряду
  3. Microchip. ATmega48A/PA/88A/PA/168A/PA/328/P Data Sheet (DS40002061B) — разд. 29.1 (предельный ток вывода), табл. 30-1 и примечания 3, 4 (выходные напряжения при 20 мА, суммарные токи групп выводов)
  4. STMicroelectronics. STM32F072x8 STM32F072xB datasheet (DS9826 Rev 6) — табл. 22 (токи вывода и суммарный ток), табл. 54 (выходные напряжения при 8 и 20 мА)
  5. onsemi. BC546B, BC547A, B, C, BC548B, C: Amplifier Transistors, NPN Silicon (BC546/D) — даташит, ред. 8: напряжение насыщения при 10 мА и токе базы 0,5 мА

Нашли ошибку?