// Даём понятные имена пинам к которым подключены выводы RGB-светодиода constexpr int LED_RED_PIN = 9; constexpr int LED_GREEN_PIN = 10; constexpr int LED_BLUE_PIN = 11; // Даём понятное имя пину с кнопкой constexpr int BUTTON_PIN = A0; // Создаём три переменные для хранения яркости каждого цвета RGB-светодиода int red, green, blue; void setup() { // Настраиваем пины RGB-светодиода в режим выхода pinMode(LED_RED_PIN, OUTPUT); pinMode(LED_GREEN_PIN, OUTPUT); pinMode(LED_BLUE_PIN, OUTPUT); // Настраиваем пин с кнопкой в режим входа с подтяжкой к питанию pinMode(BUTTON_PIN, INPUT_PULLUP); } void loop() { // Считываем нажатие с кнопки bool buttonState = !digitalRead(BUTTON_PIN); if (buttonState) { // Генерируем случайное число от 1 до 7 int number = random(1, 8); // В зависимости от сгенерированного числа, // подаём разные сигнала на ножки RGB-светодиода if (number == 1) { red = HIGH; green = LOW; blue = LOW; } else if (number == 2) { red = LOW; green = HIGH; blue = LOW; } else if (number == 3) { red = LOW; green = LOW; blue = HIGH; } else if (number == 4) { red = HIGH; green = HIGH; blue = LOW; } else if (number == 5) { red = LOW; green = HIGH; blue = HIGH; } else if (number == 6) { red = HIGH; green = LOW; blue = HIGH; } // Выводим полученные значения на ножки RGB-светодиода digitalWrite(LED_RED_PIN, red); digitalWrite(LED_GREEN_PIN, green); digitalWrite(LED_BLUE_PIN, blue); // Ждём одну секунду delay(1000); // Подаём на все ножки RGB-светодиода логический ноль digitalWrite(LED_RED_PIN, LOW); digitalWrite(LED_GREEN_PIN, LOW); digitalWrite(LED_BLUE_PIN, LOW); } }