Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
products:laboratory_iot:exp11 [2020/05/16 17:37] – [Эксперимент 11. RGB светодиод] labuser29 | products:laboratory_iot:exp11 [2024/11/12 20:37] (текущий) – [Программный код эксперимента] labuser30 | ||
---|---|---|---|
Строка 3: | Строка 3: | ||
Поэкспериментируем с полноцветным светодиодом. На самом деле это сразу три светодиода в | Поэкспериментируем с полноцветным светодиодом. На самом деле это сразу три светодиода в | ||
одном корпусе. Внутри находится красный, | одном корпусе. Внутри находится красный, | ||
+ | |||
+ | ==== RGB светодиод ==== | ||
{{ : | {{ : | ||
Строка 11: | Строка 13: | ||
вывода — общий анод и три катода (бывают светодиоды, | вывода — общий анод и три катода (бывают светодиоды, | ||
которых, | которых, | ||
+ | |||
+ | ==== Формирование цвета ==== | ||
Если внутри корпуса находятся красный, | Если внутри корпуса находятся красный, | ||
Строка 21: | Строка 25: | ||
{{ : | {{ : | ||
+ | // | ||
+ | |||
+ | Именно так устроен монитор компьютера или дисплей | ||
+ | твоего смартфона. Каждая точка на экране (пиксель) это | ||
+ | на самом деле три точки (субпиксели) — красная, | ||
+ | зеленая. Каждая из них светится с разной интенсивностью, | ||
+ | так получаются миллионы цветов. Когда все три субпикселя | ||
+ | светятся на полную яркость, | ||
+ | все три погашены — мы видим черный. | ||
+ | |||
+ | Такая модель кодирования цвета называется аддитивная | ||
+ | цветовая модель RGB (аббревиатура от английского Red, | ||
+ | Green, Blue — Красный, | ||
+ | |||
+ | Кроме аддитивной существуют другие, | ||
+ | |||
+ | ==== Цоколевка ==== | ||
+ | Для того, чтобы не перепутать выводы RGB светодиода они выполнены с различной длиной. | ||
+ | {{ : | ||
+ | // | ||
+ | |||
==== Схема эксперимента ==== | ==== Схема эксперимента ==== | ||
+ | |||
+ | {{ : | ||
+ | // | ||
+ | |||
+ | <WRAP center round alert 60%> | ||
+ | Токоограничительные резисторы в схеме обязательны! | ||
+ | </ | ||
{{ : | {{ : | ||
+ | // | ||
+ | |||
+ | |||
+ | ==== Программный код эксперимента ==== | ||
+ | |||
+ | <file python Exp11.py[enable_line_numbers=" | ||
+ | from machine import Pin, PWM | ||
+ | _init() | ||
+ | |||
+ | LedPinB = 15 | ||
+ | LedPinG = 14 | ||
+ | LedPinR = 13 | ||
+ | |||
+ | ledB = Pin(LedPinB, | ||
+ | ledG = Pin(LedPinG, | ||
+ | ledR = Pin(LedPinR, | ||
+ | |||
+ | pwmB = PWM(ledB) | ||
+ | pwmG = PWM(ledG) | ||
+ | pwmR = PWM(ledR) | ||
+ | |||
+ | pwmB.freq(500) | ||
+ | pwmG.freq(500) | ||
+ | pwmR.freq(500) | ||
+ | |||
+ | pwmB.duty(500) | ||
+ | pwmG.duty(300) | ||
+ | pwmR.duty(700) | ||
+ | </ | ||
+ | |||
+ | В программе мы создали и настроили 3 объекта '' | ||
+ | |||
+ | ==== Дополнительные задания ==== | ||
+ | |||
+ | <WRAP center round tip 60%> | ||
+ | Подбери значения яркости трех цветов, | ||
+ | </ |