int ButtonPin = 10; // Пин для кнопки
const int Button = 11; // Пин для второй кнопки (не используется в текущей логике)
int oldValue = LOW; // Переменная для хранения предыдущего состояния кнопки
int mPine[] = {2, 3, 4, 5, 6, 7, 8, 9}; // Пины для управления светодиодами
int n = 0; // Счетчик для отслеживания количества включенных светодиодов
int t = 0;
void setup() {
// Настройка пинов на выход
for (int i = 0; i <= 7; i++) {
pinMode(mPine[i], OUTPUT);
}
Serial.begin(115200); // Инициализация Serial для отладки
pinMode(ButtonPin, INPUT); // Настройка пина кнопки на вход
pinMode(Button, INPUT); // Настройка пина второй кнопки на вход
}
void loop() {
int newValue = digitalRead(ButtonPin); // Чтение текущего состояния кнопки
// Если состояние кнопки изменилось
if (newValue != oldValue) {
if (newValue == HIGH) { // Если кнопка нажата
// Включаем две лампочки
if (n < 7) { // Проверяем, чтобы не выйти за пределы массива
digitalWrite(mPine[n], HIGH); // Включаем первую лампочку
digitalWrite(mPine[n + 1], HIGH); // Включаем вторую лампочку
n += 2; // Увеличиваем счетчик на 2
}
Serial.println(n); // Выводим значение счетчика в Serial
}
oldValue = newValue; // Обновляем предыдущее состояние кнопки
}
// Если кнопка отпущена, выключаем все лампочки
if (newValue == LOW && oldValue == HIGH) {
for (int i = 0; i <= 7; i++) {
digitalWrite(mPine[i], LOW); // Выключаем все лампочки
}
n = 0; // Сбрасываем счетчик
}
if (oldValue == HIGH){
for (int i=7;i>=t; i--){
digitalWrite(mPine [i],0);
delay(100);
digitalWrite(mPine [i],0);
}
t--;
n = t;
//return;
}
}