Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 5

Mounis10086

CA Lab: 3

Code:
#include <LiquidCrystal.h>

// Define pins for first traffic signals


const int redSignalPin1 = 2;
const int yellowSignalPin1 = 3;
const int greenSignalPin1 = 4;

// Define pins for second traffic signals


const int redSignalPin2 = 5;
const int yellowSignalPin2 = 6;
const int greenSignalPin2 = 7;

// Define pins for LCD


const int rs = 8, en = 9, d4 = 10, d5 = 11, d6 = 12, d7 = 13;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

void setup() {
// Set up traffic signal pins as output
pinMode(redSignalPin1, OUTPUT);
pinMode(yellowSignalPin1, OUTPUT);
pinMode(greenSignalPin1, OUTPUT);
pinMode(redSignalPin2, OUTPUT);
pinMode(yellowSignalPin2, OUTPUT);
pinMode(greenSignalPin2, OUTPUT);

// Set up LCD
lcd.begin(16, 2);
lcd.setCursor(0, 0);
lcd.print("Traffic Signals");
}

void loop() {
// Turn on green signal for first traffic light
digitalWrite(redSignalPin1, LOW);
digitalWrite(yellowSignalPin1, LOW);
digitalWrite(greenSignalPin1, HIGH);

// Display message on LCD


lcd.setCursor(0, 1);
lcd.print("Light 1 - Green");

// Wait for 10 seconds


delay(1000);

// Turn on yellow signal for first traffic light


digitalWrite(redSignalPin1, LOW);
digitalWrite(yellowSignalPin1, HIGH);
digitalWrite(greenSignalPin1, LOW);

// Display message on LCD


lcd.setCursor(0, 1);
lcd.print("Light 1 - Yellow");

// Wait for 2 seconds


delay(200);

// Turn on red signal for first traffic light


digitalWrite(redSignalPin1, HIGH);
digitalWrite(yellowSignalPin1, LOW);
digitalWrite(greenSignalPin1, LOW);

// Display message on LCD


lcd.setCursor(0, 1);
lcd.print("Light 1 - Red");

// Wait for 10 seconds


delay(1000);

// Turn on green signal for second traffic light


digitalWrite(redSignalPin2, LOW);
digitalWrite(yellowSignalPin2, LOW);
digitalWrite(greenSignalPin2, HIGH);

// Display message on LCD


lcd.setCursor(0, 1);
lcd.print("Light 2 - Green");

// Wait for 10 seconds


delay(1000);

// Turn on yellow signal for second traffic light


digitalWrite(redSignalPin2, LOW);
digitalWrite(yellowSignalPin2, HIGH);
digitalWrite(greenSignalPin2, LOW);

// Display message on LCD


lcd.setCursor(0, 1);
lcd.print("Light 2 - Yellow");

// Wait for 2 seconds


delay(200);

// Turn on red signal for second traffic light


digitalWrite(redSignalPin2, HIGH);
digitalWrite(yellowSignalPin2, LOW);
digitalWrite(greenSignalPin2, LOW);

// Display message on LCD


lcd.setCursor(0, 1);
lcd.print("Light 2 - Red");

// Wait for 10 seconds


delay(1000);
}

You might also like