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);
}