|et

Ülesanne 1 Valgusfoor

Valgusfoori töö kirjeldus kahe režiimiga: tavaline režiim ja öörežiim.

Kasutatud komponendid:

  • Arduino UNO plaat – 1 tk
  • Prototüüpimisplaat – 1 tk
  • Juhtmed – 6 tk
  • Takistid (1 kΩ) – 3 tk
  • LED-id:
  • Punased – 2 tk
  • Rohelised – 2 tk
  • Kollane – 1 tk

const int RED = 11;
const int YELLOW = 10;
const int GREEN = 9;
const int GREEN1 = 5;
const int RED1 = 6;
 
void setup()
{
  pinMode(RED, OUTPUT);
  pinMode(GREEN, OUTPUT);
  pinMode(YELLOW, OUTPUT);
  pinMode(RED1, OUTPUT);
  pinMode(GREEN1, OUTPUT);
}
 
void loop()
{
  // Первый цикл для обычного режима
  for (int i = 0; i < 4; i++)
  {
    // Красный для светофора, зеленый для пешеходов
    digitalWrite(RED, HIGH);
    digitalWrite(YELLOW, LOW);
    digitalWrite(GREEN, LOW);
    digitalWrite(GREEN1, HIGH);
    digitalWrite(RED1, LOW);
    delay(5000);
 
    // Желтый для светофора
    digitalWrite(RED, LOW);
    digitalWrite(YELLOW, HIGH);
    digitalWrite(GREEN, LOW);
    delay(3000);
 
    // Зеленый для светофора, красный для пешеходов
    digitalWrite(RED, LOW);
    digitalWrite(YELLOW, LOW);
    digitalWrite(GREEN, HIGH);
    digitalWrite(RED1, HIGH);
    digitalWrite(GREEN1, LOW);
    delay(5000);
 
    // Переход в ночной режим после первого цикла
    if (i == 1) {
      break;
    }
  }
 
  // Второй цикл для ночного режима
  for (int a = 0; a < 4; a++)
  {
    // Мигающий желтый, зеленый не горит
    digitalWrite(RED, LOW);
    digitalWrite(GREEN, LOW);
    digitalWrite(GREEN1, LOW);
    digitalWrite(RED1, LOW);
 
    // Мигающий желтый
    digitalWrite(YELLOW, HIGH);
    delay(1000);  // Желтый горит 1 секунду
    digitalWrite(YELLOW, LOW);
    delay(1000);  // Желтый выключается на 1 секунду
  }
}

Video

https://drive.google.com/file/d/1vHCpdw5MGY4oW3DpqyvdQQS3v0h7Tuva/view?usp=sharing