105 lines
3.5 KiB
C++
105 lines
3.5 KiB
C++
#define RED 11 // Присваиваем имя RED для пина 11
|
|
#define GREEN 12 // Присваиваем имя GREEN для пина 12
|
|
#define BLUE 13 // Присваиваем имя BLUE для пина 13
|
|
|
|
int but;
|
|
|
|
void setup()
|
|
{
|
|
pinMode(RED, OUTPUT); // Используем Pin11 для вывода
|
|
pinMode(GREEN, OUTPUT); // Используем Pin12 для вывода
|
|
pinMode(BLUE, OUTPUT); // Используем Pin13 для вывода
|
|
pinMode(2, INPUT); // объявляем пин 2 как вход
|
|
pinMode(4, INPUT); // объявляем пин 2 как вход
|
|
digitalWrite(RED, LOW); // Включаем красный свет
|
|
digitalWrite(GREEN, LOW);
|
|
digitalWrite(BLUE, LOW);
|
|
}
|
|
|
|
void(* resetFunc) (void) = 0; // Reset MC function
|
|
|
|
void loop()
|
|
{
|
|
if (digitalRead(2) == HIGH) // когда на пин 2 поступает высокий сигнал
|
|
{
|
|
but=1;
|
|
}
|
|
if (digitalRead(4) == HIGH)
|
|
{
|
|
resetFunc(); //вызов
|
|
}
|
|
if (but == 1)
|
|
{
|
|
digitalWrite(RED, HIGH); // Включаем красный свет
|
|
digitalWrite(GREEN, LOW);
|
|
digitalWrite(BLUE, LOW);
|
|
|
|
|
|
delay(1000); // Устанавливаем паузу для эффекта
|
|
if (digitalRead(4) == HIGH) // когда на пин 2 поступает высокий сигнал
|
|
{
|
|
resetFunc(); //вызов
|
|
}
|
|
|
|
digitalWrite(RED, LOW);
|
|
digitalWrite(GREEN, HIGH); // Включаем зеленый свет
|
|
digitalWrite(BLUE, LOW);
|
|
|
|
delay(1000); // Устанавливаем паузу для эффекта
|
|
if (digitalRead(4) == HIGH) // когда на пин 2 поступает высокий сигнал
|
|
{
|
|
resetFunc(); //вызов
|
|
}
|
|
|
|
digitalWrite(RED, LOW);
|
|
digitalWrite(GREEN, LOW);
|
|
digitalWrite(BLUE, HIGH); // Включаем синий свет
|
|
|
|
delay(1000); // Устанавливаем паузу для эффекта
|
|
if (digitalRead(4) == HIGH) // когда на пин 2 поступает высокий сигнал
|
|
{
|
|
resetFunc(); //вызов
|
|
}
|
|
|
|
digitalWrite(RED, HIGH); // Включаем красный свет
|
|
digitalWrite(GREEN, HIGH);
|
|
digitalWrite(BLUE, LOW);
|
|
|
|
delay(1000); // Устанавливаем паузу для эффекта
|
|
if (digitalRead(4) == HIGH) // когда на пин 2 поступает высокий сигнал
|
|
{
|
|
resetFunc(); //вызов
|
|
}
|
|
|
|
digitalWrite(RED, LOW);
|
|
digitalWrite(GREEN, HIGH); // Включаем зеленый свет
|
|
digitalWrite(BLUE, HIGH);
|
|
|
|
delay(1000); // Устанавливаем паузу для эффекта
|
|
if (digitalRead(4) == HIGH) // когда на пин 2 поступает высокий сигнал
|
|
{
|
|
resetFunc(); //вызов
|
|
}
|
|
|
|
digitalWrite(RED, HIGH);
|
|
digitalWrite(GREEN, LOW);
|
|
digitalWrite(BLUE, HIGH); // Включаем синий свет
|
|
|
|
delay(1000); // Устанавливаем паузу для эффекта
|
|
if (digitalRead(4) == HIGH) // когда на пин 2 поступает высокий сигнал
|
|
{
|
|
resetFunc(); //вызов
|
|
}
|
|
|
|
digitalWrite(RED, HIGH);
|
|
digitalWrite(GREEN, HIGH);
|
|
digitalWrite(BLUE, HIGH); // Включаем синий свет
|
|
|
|
delay(1000); // Устанавливаем паузу для эффекта
|
|
if (digitalRead(4) == HIGH) // когда на пин 2 поступает высокий сигнал
|
|
{
|
|
resetFunc(); //вызов
|
|
}
|
|
}
|
|
}
|