Модуль светодиода
Описание
Универсальный модуль светодиода. Подойдет для проектов, где необходимо добавить цветную индикацию, не прибегая к пайке обычных светодиодов. Модуль подключается посредством трехпроводного шлейфа. Для удобства соединения рекомендуем использовать Sensor Shield.
Встроенный транзистор позволяет использовать модуль в цепях с напряжением 3,3 В и 5 В. Поддерживается управление яркостью с помощью ШИМ.
Технические характеристики
- Рабочее напряжение: 3,3 - 5 В
- Максимальный потребляемый ток (для белого или синего): 8,5 мА
- Максимальный потребляемый ток (для красного, жёлтого, зелёного): 10 мА
Физические размеры
- Габаритные размеры модуля Д х Ш х В: 30 х 20 х 12 мм
Плюсы использования
- Несколько цветов светодиодов для различных проектов (красный, жёлтый, зелёный, синий, белый)
- Лёгкое подключение к Sensor shield
- Не требует дополнительных радиодеталей (всё включено в модуль)
- Не требует пайки
- Прост в работе
- Управление яркостью светодиода с помощью ШИМ
Минусы использования
- Дороже чем обычный светодиод
Смотрите также
Примеры подключения и использования
Пример 1
В примере демонстрируется самая простая задача по работе со светодиодом - включение и отключение на 1 секунду. Пример протестирован на контроллере Smart UNO.
Что нужно | Кол-во, шт |
---|---|
Контроллер Smart UNO | 1 |
Sensor Shield | 1 |
Модуль светодиода красный | 1 |
Провода папа-мама | 3 |
Схема подключения:
Скетч для загрузки:
int LED = 9; //объявление пина подключения модуля void setup() { pinMode(LED, OUTPUT); // установка пина как выходной } void loop() { digitalWrite(LED, HIGH); // включение светодиода delay(1000); // задержка на 1 секунду digitalWrite(LED, LOW); // выключение светодиода delay(1000); // задержка на 1 секунду }
Пример 2. Управление с клавиатуры
Данный пример демонстрирует изменение времени включенного и выключенного состояния в зависимости от введенного значения с клавиатуры. По умолчанию значение времени установлено в 1 секунду (1000 миллисекунд). После загрузки скетча на контроллер, необходимо открыть монитор сериал порта, куда требуется ввести цифровое значение нового времени работы светодиода в миллисекундах отличное от нуля. Светодиод начинает мигать с частотой нового введённого времени.
Пример протестирован на контроллере Smart UNO.
Что нужно | Кол-во, шт |
---|---|
Контроллер Smart UNO | 1 |
Sensor Shield | 1 |
Модуль светодиода жёлтый | 1 |
Провода папа-мама | 3 |
Схема подключения:
Скетч для загрузки:
int LED = 9; //объявление пина подключения модуля int M_S = 1000; //переменная для хранения времени задержки void setup() { pinMode(LED, OUTPUT); // установка пина как выходной Serial.begin(9600); // инициализация Serial-порта } void loop() { if (Serial.available() > 0) { //если что-то пришло из сериал порта int val = Serial.parseInt(); //считать значение в переменную if (val != 0) { // если считанное значение отлично от 0 M_S = val; //записать его в переменную хранения времени } } digitalWrite(LED, HIGH); // включение светодиода delay(M_S); // задержка на 1 секунду digitalWrite(LED, LOW); // выключение светодиода delay(M_S); // задержка на 1 секунду }
Пример 3. Управление с помощью ШИМ
Данный пример демонстрирует изменение яркости свечения светодиода. Светодиод из выключенного состояния постепенно зажигается ярче, а затем постепенно затухает. Далее всё повторяется.
Пример протестирован на контроллере Smart UNO.
Что нужно | Кол-во, шт |
---|---|
Контроллер Smart UNO | 1 |
Sensor Shield | 1 |
Модуль светодиода зелёный | 1 |
Провода папа-мама | 3 |
Схема подключения:
Скетч для загрузки:
int LED = 9; //объявление пина подключения модуля void setup() { pinMode(LED, OUTPUT); // установка пина как выходной } void loop() { //первый цикл увеличивает яркость for (int i = 0; i < 1024; i++) { //цикл от 0 до 1024 analogWrite(LED, i); //записать значение яркости на порт светодиода delay(100); //задержка в 100 миллисекунд } //второй цикл уменьшает яркость for (int i = 1024; i >= 0; i--) { analogWrite(LED, i); //записать значение яркости на порт светодиода delay(100); //задержка в 100 миллисекунд } }
Пример 4. Управление с помощью ШИМ (значение вводится с клавиатуры)
Данный пример демонстрирует изменение яркости свечения светодиода. Светодиод мигает с периодичностью 100 миллисекунд. По умолчанию яркость светодиода задана в 500 единиц (половина возможной яркости). После загрузки скетча в контроллер, открыв монитор Serial порта, можно ввести требуемую яркость. Однако, значение яркости будет программно ограничено между значениями 0 и 1023 (минимальное и максимальное значения).
Пример протестирован на контроллере Smart UNO.
Что нужно | Кол-во, шт |
---|---|
Контроллер Smart UNO | 1 |
Sensor Shield | 1 |
Модуль светодиода синий | 1 |
Провода папа-мама | 3 |
Схема подключения:
Скетч для загрузки:
int LED = 9; //объявление пина подключения модуля int BRIGHTNESS = 500; //переменная для хранения яркости void setup() { pinMode(LED, OUTPUT); // установка пина как выходной Serial.begin(9600); // инициализация Serial-порта } void loop() { if (Serial.available() > 0) { //если что-то пришло из сериал порта int val = Serial.parseInt(); //считать значение в переменную if (val != 0) { // если считанное значение отлично от 0 BRIGHTNESS = constrain(val, 0, 1023); //записать его в переменную яркости, ограничив значение } } analogWrite(LED, BRIGHTNESS); // включение светодиода с заданной яркостью delay(1000); // задержка на 1 секунду digitalWrite(LED, LOW); // выключение светодиода delay(1000); // задержка на 1 секунду }