Компоненты · 3 мин чтения

Что такое светодиод? Как он работает и как подключить его к Arduino

Что такое светодиод, как он работает и как отличить анод от катода? Расчёт резистора для светодиода, напряжения светодиодов разных цветов, RGB-светодиоды и подключение к Arduino.

Светодиод (LED, Light Emitting Diode — светоизлучающий диод) — это полупроводниковый прибор, который светится, когда через него течёт ток. Светодиоды повсюду: в экранах телефонов, светофорах, автомобильных фарах и лампах у тебя дома. В электронике почти у всех первый проект — зажечь светодиод, потому что он сразу учит цифровым выходам, ограничению тока и работе со временем.

Светодиод 5 мм
Светодиоды 5 мм разных цветов. Длинная ножка — плюс (анод), короткая — минус (катод).

Как работает светодиод?

Светодиод — это диод: он пропускает ток только в одном направлении. При правильном подключении электроны внутри полупроводника теряют энергию и излучают свет (фотоны). Цвет света зависит от полупроводникового материала, поэтому красные, зелёные и синие светодиоды работают при разных напряжениях.

Как отличить плюс и минус светодиода?

  • Длинная ножка — анод (+), короткая — катод (−).
  • Сторона со срезом на ободке корпуса — это катод.
  • Если заглянуть внутрь светодиода, большая деталь в форме флажка обычно соединена с катодом.
  • Светодиод, вставленный наоборот, не загорится, но и не сломается: переверни его и попробуй ещё раз.

Почему светодиод нельзя подключать без резистора?

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

R = (напряжение питания − напряжение светодиода) / ток светодиода

Например, для Arduino на 5 V, красного светодиода (около 2 V) и тока 15 mA: R = (5 − 2) / 0,015 = 200 Ω. Берут ближайший стандартный номинал 220 Ω. Чтобы сразу увидеть этот расчёт и реальный ток, воспользуйся калькулятором резистора для светодиода.

Напряжение светодиодов разных цветов

Цвет светодиодаТипичное прямое напряжение (Vf)Рекомендуемый резистор при 5 V (15 mA)
Красный1,8–2,0 V220 Ω
Оранжевый / жёлтый1,9–2,1 V220 Ω
Зелёный (классический)2,0–2,2 V200–220 Ω
Зелёный (чистый)3,0–3,2 V120–150 Ω
Синий / белый3,0–3,3 V120–150 Ω
Инфракрасный (IR)1,2–1,5 V240–270 Ω

Типичные и максимальные значения для всех цветов есть в таблице напряжений светодиодов.

Подключение светодиода к Arduino

  1. Подключи цифровой пин Arduino (например, 9) к резистору 220 Ω.
  2. Другой конец резистора подключи к длинной ножке (аноду) светодиода.
  3. Короткую ножку (катод) светодиода подключи к пину GND платы Arduino.
  4. В коде сделай пин выходом с помощью pinMode(9, OUTPUT) и включай и выключай его через digitalWrite.
C++ (Arduino IDE)
1const int LED = 9;
2
3void setup() {
4  pinMode(LED, OUTPUT);
5}
6
7void loop() {
8  // Yavaşça parlat / fade in (PWM, 0-255)
9  for (int i = 0; i <= 255; i++) { analogWrite(LED, i); delay(4); }
10  // Yavaşça söndür / fade out
11  for (int i = 255; i >= 0; i--) { analogWrite(LED, i); delay(4); }
12}
Чтобы менять яркость светодиода, используют пины с PWM (на Uno они отмечены ~: 3, 5, 6, 9, 10, 11) и analogWrite. Код выше даёт светодиоду эффект «дыхания».

Что такое RGB-светодиод?

В одном корпусе RGB-светодиода три светодиода: красный, зелёный и синий. Настраивая яркость каждого цвета отдельно через PWM, можно получить тысячи цветов: красный + зелёный = жёлтый, зелёный + синий = голубой, все три сразу = белый. RGB-светодиоды бывают с общим катодом (общая ножка на GND) и с общим анодом (общая ножка на 5 V); с общим анодом логика кода инвертируется.

RGB-светодиод

Адресные светодиоды (WS2812B, NeoPixel)

В каждом «умном» светодиоде вроде WS2812B есть крошечная микросхема-драйвер. Благодаря этому сотнями светодиодов можно управлять через один пин данных и зажигать каждый своим цветом. В светодиодных лентах каждый светодиод на полном белом потребляет около 60 mA, поэтому длинным лентам нужен отдельный источник питания 5 V.

WS2812B
WS2812B
Кольцо WS2812B
Кольцо WS2812B
Матрица NeoPixel 8x8
Матрица NeoPixel 8x8

Частые ошибки

  • Подключать несколько светодиодов параллельно через один резистор: ток делится неравномерно, поэтому каждому светодиоду нужен свой резистор.
  • Брать слишком большой ток с пина Arduino: не превышай 20 mA на пин и 200 mA на всю плату.
  • Пробовать PWM на пине без PWM: яркость не меняется, светодиод только включается или выключается.
  • Ставить большой резистор для синих и белых светодиодов на платах с 3,3 V (ESP32, Pico): светодиод будет светить очень тускло.
Не смотри долго на мощные светодиоды (от 1 W и выше) и не питай их напрямую от пина Arduino; для них нужен драйвер постоянного тока.

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

От какого напряжения работает светодиод?

Это зависит от цвета: красному нужно около 2 V, синему и белому около 3,2 V. Однако это напряжение не подают напрямую: подают напряжение питания вместе с резистором, который ограничивает ток.

Какой резистор ставить для светодиода: 220 Ω или 330 Ω?

При 5 V оба безопасны для красных, жёлтых и зелёных светодиодов. С 220 Ω светодиод ярче (около 13 mA), с 330 Ω чуть тусклее, но потребляет меньше тока (около 9 mA).

Можно ли соединять светодиоды последовательно?

Да, если суммарное напряжение светодиодов меньше напряжения питания. Например, три белых светодиода (3 × 3,2 V = 9,6 V) могут работать от 12 V с подходящим резистором.

Почему светодиод светит так тускло?

Возможно, в коде нет строки pinMode(pin, OUTPUT), резистор слишком большой или синий/белый светодиод стоит на плате с 3,3 V. Поставь резистор поменьше и проверь код.

Как понять, что светодиод сломан?

Коснись ножек светодиода щупами мультиметра в режиме проверки диодов: исправный светодиод в прямом направлении слегка светится, а на дисплее видно прямое напряжение. В обратном направлении показаний нет.

Все проекты
Мигающий светодиод
#1Новичок

Мигающий светодиод

Самое первое «привет» в электронике: включение и выключение одного светодиода. Arduino включает и выключает светодиод через короткие промежутки, поэтому свет быстро мигает. Ты самым простым способом в

4.6(188)
1127
Светофор
#3Новичок

Светофор

Крошечная копия светофора, который ты каждый день видишь на дороге. Красный горит две секунды, жёлтый мигает на мгновение, зелёный горит две секунды, затем через жёлтый снова возвращается красный, и т

4.8(131)
397
Светодиодный эффект Knight Rider
#6Средний

Светодиодный эффект Knight Rider

Классический бегущий огонь-сканер: светящаяся точка скользит от одного края шести светодиодов к другому и возвращается обратно. Arduino зажигает каждый светодиод на десятую долю секунды и переходит к

4.8(106)
202
Работа с RGB-светодиодом
#39Новичок
Premium

Работа с RGB-светодиодом

В одном светодиоде прячутся три цвета: RGB-светодиод загорается красным, затем зелёным, затем синим, каждый цвет горит полсекунды и полсекунды не горит, а потом цикл начинается снова. Нужны всего один

4.9(73)
98
Плавная смена цвета RGB-светодиода
#40Новичок
Premium

Плавная смена цвета RGB-светодиода

Один RGB-светодиод медленно переходит от красного к зелёному, от зелёного к синему и обратно к красному, без остановки прокручивая радугу. Каждый переход длится около двух с половиной секунд, а жёлтый

4.8(58)
76
Работа со светодиодной лентой WS2812B
#69Средний
Premium

Работа со светодиодной лентой WS2812B

Познакомься с умной светодиодной лентой, где каждому огоньку можно задать свой цвет. Arduino сначала зажигает первые пять светодиодов красным, через секунду остальные пять — синим, затем выключает все

4.8(54)
70
Плавное затухание светодиода с PWM на ESP32
#110Новичок

Плавное затухание светодиода с PWM на ESP32

Плавное изменение яркости светодиода от 0 до максимума и от максимума до 0. PWM управляется через analogWrite(), как в Arduino, — тот же синтаксис без проблем работает в ESP32 Arduino Core 3.0+. Достаточно определения пина, pinMode и analogWrite.

4.8(36)
54
Плавное затухание светодиода с PWM на Pico (эффект дыхания)
#160Новичок

Плавное затухание светодиода с PWM на Pico (эффект дыхания)

Светодиод больше не просто мигает — он дышит! С помощью PWM (широтно-импульсной модуляции) Raspberry Pi Pico яркость светодиода медленно растёт и медленно падает, как огонёк спящего MacBook. Изучи класс machine.PWM, duty_u16() (16-битная яркость 0–65535), частоту PWM (freq(1000) — 1000 циклов вкл/выкл в секунду, мерцания не видно), циклы range() с шагом (вверх и вниз) и почти аналоговый выход с цифрового пина.

0.0(0)
4