int trigger = 1; // Переменная для отслеживания состояния кнопки
int firstLed = 9; // Пин первого светодиода
int secondLed = 10; // Пин второго светодиода
int thirdLed = 11; // Пин третьего светодиода
const int QcoilPin = 9; // Пин подключения пьезоизлучателя – 9 дискретный
int DelayQcoil = 1000; // Пауза 1 секунда
void setup() {
pinMode(QcoilPin, OUTPUT);
pinMode(2, INPUT_PULLUP); // Настраиваем пин 2 как вход с подтяжкой
pinMode(firstLed, OUTPUT); // Настраиваем пин 9 как выход для первого светодиода
pinMode(secondLed, OUTPUT); // Настраиваем пин 10 как выход для второго светодиода
pinMode(thirdLed, OUTPUT); // Настраиваем пин 11 как выход для третьего светодиода
}
void loop() {
switch(trigger)
{case 1:
digitalWrite(firstLed, HIGH); // Включаем первый светодиод
digitalWrite(secondLed, HIGH); // Выключаем второй светодиод
digitalWrite(thirdLed, HIGH);
// tone(QcoilPin, 1915); // Воспроизводим сигнал с частотой 1915 Гц
break;
case 2:
digitalWrite(firstLed, HIGH); // Выключаем первый светодиод
digitalWrite(secondLed, LOW); // Включаем второй светодиод
digitalWrite(thirdLed, LOW);
tone(QcoilPin, 17); // Воспроизводим сигнал с частотой 1915 Гц
break;
case 3:
digitalWrite(firstLed, LOW); // Выключаем первый светодиод
digitalWrite(secondLed, HIGH); // Включаем второй светодиод
digitalWrite(thirdLed, LOW);
tone(QcoilPin, 7); // Воспроизводим сигнал с частотой 1915 Гц
break;
case 4:
digitalWrite(firstLed, LOW); // Выключаем первый светодиод
digitalWrite(secondLed, LOW); // Включаем второй светодиод
digitalWrite(thirdLed, HIGH);
tone(QcoilPin, 7); // Воспроизводим сигнал с частотой 1915 Гц
break;
case 5:
//вниз и вверх мигают
//MSW();
digitalWrite(firstLed, HIGH);
digitalWrite(secondLed, LOW);
digitalWrite(thirdLed, LOW);
delay(1000);
digitalWrite(firstLed, LOW);
digitalWrite(secondLed, HIGH);
digitalWrite(thirdLed, LOW);
delay(1000);
digitalWrite(firstLed, LOW);
digitalWrite(secondLed, LOW);
digitalWrite(thirdLed, HIGH);
delay(1000);
digitalWrite(firstLed, LOW);
digitalWrite(secondLed, HIGH);
digitalWrite(thirdLed, LOW);
delay(1000);
break;
}
int buttonState = digitalRead(2); // Считываем состояние кнопки
if (buttonState == LOW) {
trigger++; // Инвертируем значение переменной trigger при нажатии кнопки
if(trigger>5)
{
trigger=1;
}
noTone(QcoilPin); // Выключаем квантовый сигнал
delay(200); // Задержка для предотвращения дребезга кнопки
}
}
void MSW() {
digitalWrite(firstLed, HIGH);
digitalWrite(secondLed, LOW);
digitalWrite(thirdLed, LOW);
delay(1000);
digitalWrite(firstLed, LOW);
digitalWrite(secondLed, HIGH);
digitalWrite(thirdLed, LOW);
delay(1000);
digitalWrite(firstLed, LOW);
digitalWrite(secondLed, LOW);
digitalWrite(thirdLed, HIGH);
delay(1000);
digitalWrite(firstLed, LOW);
digitalWrite(secondLed, HIGH);
digitalWrite(thirdLed, LOW);
delay(1000);
}