2025-02-12 20:56:19
Flashes
flashes.c
#include <Arduino.h>
// Скорость моргания
const int speed = 100;
// Номера пинов, к которым подключены светодиоды
const int pins[] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
// Массив состояний светодиодов
int states[] = {LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW};
// Массив вероятностей моргания
float probabilities[] = {0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1};
void setup() {
// Инициализируем светодиоды
for (int i = 0; i < 12; i++) {
pinMode(pins[i], OUTPUT);
}
}
void loop() {
// Выбираем случайный светодиод
int index = random(0, 11);
// Изменяем состояние выбранного светодиода с вероятностью, определяемой массивом probabilities
if (random(0, 100) < probabilities[index] * 100) {
states[index] = !states[index];
}
// Переключаем состояние светодиодов
for (int i = 0; i < 11; i++) {
digitalWrite(pins[i], states[i]);
}
// Ждем следующего цикла
delay(speed);
}
Back to list