0402 rgb svetodiod: различия между версиями
Перейти к навигации
Перейти к поиску
(Новая страница: «<code> ////////////////////////////////////////////// // 2019.07.16 woronin, umkiedu@gmail.com // RGB светодиод, подпрограмма /…») |
Evgen (обсуждение | вклад) Нет описания правки |
||
Строка 1: | Строка 1: | ||
< | <syntaxhighlight lang="C++"> | ||
////////////////////////////////////////////// | ////////////////////////////////////////////// | ||
// 2019.07.16 woronin, umkiedu@gmail.com | // 2019.07.16 woronin, umkiedu@gmail.com | ||
Строка 10: | Строка 10: | ||
int bluePin = 11; | int bluePin = 11; | ||
#define COMMON_ANODE | #define COMMON_ANODE | ||
void setup() | |||
{ | |||
pinMode(redPin, OUTPUT); | pinMode(redPin, OUTPUT); | ||
pinMode(greenPin, OUTPUT); | pinMode(greenPin, OUTPUT); | ||
pinMode(bluePin, OUTPUT); | pinMode(bluePin, OUTPUT); | ||
} | |||
void loop() | |||
{ | |||
setColor(255, 0, 0); // red | setColor(255, 0, 0); // red | ||
delay(2000); | delay(2000); | ||
Строка 32: | Строка 34: | ||
setColor(0, 0, 0); // stop | setColor(0, 0, 0); // stop | ||
delay(1000); | delay(1000); | ||
} | |||
void setColor(int red, int green, int blue) | |||
{ | |||
#ifdef COMMON_ANODE | #ifdef COMMON_ANODE | ||
red = 255 - red; | red = 255 - red; | ||
Строка 43: | Строка 46: | ||
analogWrite(greenPin, green); | analogWrite(greenPin, green); | ||
analogWrite(bluePin, blue); | analogWrite(bluePin, blue); | ||
} | |||
</ | |||
</syntaxhighlight> | |||
[[Категория:Видео эпизоды УМКИ]] | [[Категория:Видео эпизоды УМКИ]] | ||
[[Категория:Примеры программирования Arduino]] |
Версия от 14:35, 15 ноября 2019
//////////////////////////////////////////////
// 2019.07.16 woronin, umkiedu@gmail.com
// RGB светодиод, подпрограмма
// Robot UMKI controller K6_3
// самостоятельно сделать переливы света
//////////////////////////////////////////////
int redPin = 13;
int greenPin = 12;
int bluePin = 11;
#define COMMON_ANODE
void setup()
{
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
}
void loop()
{
setColor(255, 0, 0); // red
delay(2000);
setColor(0, 255, 0); // blue
delay(1000);
setColor(0, 0, 255); // green
delay(1000);
setColor(255, 255, 0); // yellow
delay(1000);
setColor(80, 0, 80); // purple
delay(1000);
setColor(0, 255, 255); // aqua
delay(1000);
setColor(0, 0, 0); // stop
delay(1000);
}
void setColor(int red, int green, int blue)
{
#ifdef COMMON_ANODE
red = 255 - red;
green = 255 - green;
blue = 255 - blue;
#endif
analogWrite(redPin, red);
analogWrite(greenPin, green);
analogWrite(bluePin, blue);
}