Подключение светодиода к Arduino
Светодиод это полупроводниковый прибор, создающий оптическое излучение при пропускании через него электрического тока. С электрической точки зрения светодиод ведет себя как обычный диод, пропуская ток в прямом направлении и не пропуская в обратном. Светодиод излучает только при прохождении тока в прямом направлении, по этому при его подключении необходимо соблюдать полярность. При этом сила излучения напрямую зависит от силы тока. Однако нельзя превышать максимально допустимый ток, установленный для светодиода его характеристиками, иначе светодиод выйдет из строя.
Так же светодиод характеризуется падением напряжения при прохождении тока в прямом направлении. Падение напряжения существенно выше чем у обычных диодов и составляет 2-3 вольта, в зависимости от цвета свечения светодиода. Точное значение указывается в характеристиках. Это означает, что светодиод не будет светиться если поданное на него напряжение меньше этого значения. Но если на светодиод подать напряжение больше этого порога, то через него потечет максимально возможный ток, и светодиод выйдет из строя. Что бы этого не произошло светодиод необходимо подключать через токоограничивающий резистор.
Расчет сопротивления токоограничивающего резистора производится по следующей формуле:
Rсв = (Vупр - Vсв) / Iсв ;
где:
Vупр - напряжение управления, это напряжение вывода микроконтроллера, равное 5 В;
Vсв - падение напряжения на светодиоде, указанное в характеристиках;
Iсв - сила тока светодиода, указанная в характеристиках, обычно в пределах 10-20 мА.
Для обычных светодиодов падение напряжения составляет 2 В и рекомендуемый ток свечения 15 мА. При подключении к выводу Arduino, запитанному от напряжения 5 В:
Rсв = (5-2) / 0.015 = 200 Ом
С учетом допуска можно использовать резисторы номиналом 220 Ом.
Сам светодиод имеет ножки разной длины, именно по ним определяется полярность при его подключении. Длинная ножка это Анод и подключается к плюсу. Короткая ножка — Катод и подключается к минусу. Токоограничивающий резистор можно подключить к любой ножке светодиода включив его последовательно.
Схема подключения светодиода к Arduino изображена на рисунке. Светодиод подключен к выводу 8 контроллера Arduino. Этот факт необходимо учесть в программе.
Приведенный ниже скетч включает и выключает светодиод один раз в секунду. Для отсчета времени используется функция delay(), которая делает паузу в выполнении программы на заданное количество миллисекунд.
// функция инициализации запускается при старте программы
void setup() {
pinMode(8, OUTPUT); // инициализация вывода 8 как "Выход"
}
// функция цикла запускается снова и снова после окончания ее выполнения
void loop() {
digitalWrite(8, HIGH); // включение светодиода на выводе 8
delay(500); // пауза выполнения программы на пол секунды
digitalWrite(8, LOW); // выключение светодиода на выводе 8
delay(500); // пауза выполнения программы на пол секунды
}