Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Using an Arduino. Modify our original traffic light to have 2 sides, and let the

ID: 3870483 • Letter: U

Question

Using an Arduino. Modify our original traffic light to have 2 sides, and let the user enter the time (in seconds for each color [red, yellow, green]

We want the user delay to override the delay I have given as default value permanently.

I use a MEGA 2560 Arduino.

This is my origonal code.

int ledDelay = 2000;
int redPin = 10;
int yellowPin = 9;
int greenPin = 8;

void setup() {
pinMode(redPin, OUTPUT);
pinMode(yellowPin, OUTPUT);
pinMode(greenPin, OUTPUT);
}

void loop() {
// turn red on
digitalWrite(redPin, HIGH);
delay(ledDelay);

digitalWrite(redPin, LOW);
digitalWrite(yellowPin, HIGH);
delay(ledDelay);

digitalWrite(greenPin, HIGH);
digitalWrite(yellowPin, LOW);
delay(ledDelay);

digitalWrite(yellowPin, HIGH);
digitalWrite(greenPin, LOW);
delay(ledDelay);

digitalWrite(yellowPin, LOW);

}

Explanation / Answer

int redPin = 10;
int yellowPin = 9;
int greenPin = 8;
int user_dealy;
void setup() {
pinMode(redPin, OUTPUT);
pinMode(yellowPin, OUTPUT);
pinMode(greenPin, OUTPUT);
}

void loop() {
// turn red on
digitalWrite(redPin, HIGH);
Serial.println("enter user dealy:");
user-dealy=Serial.read();
delay(user_delay);

digitalWrite(redPin, LOW);
digitalWrite(yellowPin, HIGH);
Serial.println("enter user dealy:");
user-dealy=Serial.read();

delay(user_delay);

digitalWrite(greenPin, HIGH);
digitalWrite(yellowPin, LOW);
Serial.println("enter user dealy:");
user-dealy=Serial.read();
delay(user_delay);

digitalWrite(yellowPin, HIGH);
digitalWrite(greenPin, LOW);
Serial.println("enter user dealy:");
user-dealy=Serial.read();

delay(user_delay);

digitalWrite(yellowPin, LOW);

}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote