Гори Гори Ясно...

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

 Светодиод (англ. light-emitting diode, LED) — полупроводниковый прибор с электронно-дырочным переходом.

Его символьное обозначение LED symbol ru.svg

Самый простой способ подключить светодиод к Arduino изображен на этом рисунке 

Используем резистор, в данном случае номиналом 220 Ом. Это необходимо для ограничения протекающего в цепи тока. Формула для расчета номинала резистора: Rx = (Vcc-Vf)/Im где Vcc - напряжение питания, Vf - напряжение светодиода, Im - максимальный ток светодиода. Резистор номиналом 220 Ом подключен к выходу номер 13 (pin 13), далее по схеме к резистору подключен анод светодиода, длинная ножка. Катод светодиода подключен к земле.

Для рисования наглядных электрических схем,мы используем программный пакет Fritzing, он отлично подходит для проектов в которых используется Arduino.

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

После того как мы соединили все компоненты согласно нашей схемы, все что осталось это загрузить программу(Sketch) в Arduino и наслаждаться тем как светодиод будем мигать один раз в секунду.

 Blink

 Switching a LED on and off

 This example is part of the Fritzing Creator Kit: www.fritzing.org/creator-kit.

 */

 int led = 13;                        // integer variable led is declared

 void setup(){                      // the setup() method is executed only once

 pinMode(led, OUTPUT);         // the led PIN is declared as digital output

 }

 void loop() {                    // the loop() method is repeated

 digitalWrite(led, HIGH);      // switching on the led 

 delay(1000);                    // stopping the program for 1000 milliseconds

 digitalWrite(led, LOW);       // switching off the led 

 delay(1000);                    // stopping the program for 1000 milliseconds

 }

Интересно, а как нам заставить светодиод мигать без применения Arduino? Оказывается, что достаточно просто, если не сказать элементарно. Один из вариантов как может выглядеть простая принципиальная схема:

Конденсатор С1 накопленный заряд отдает через переход эмиттер-коллектор на светодиод. Затем происходит заряд и так до бесконечности. Изменяя параметры компонентов мы можем влиять на частоту с которой будет мигать светодиод, но это пожалуй все, на что способна данная схема.

Ее простота ограничивает функциональность. Даже сложно представить как можно заставить мигать светодиод к примеру по рабочим дням один раз в секунду а по выходным один раз в две секунду, без применения микроконтроллеров подобных Arduino.