Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int redC = 11;
- int blueC = 10;
- int greenC = 9;
- int InterC = 8;
- int redP = 7;
- int greenP = 6;
- int button = 4;
- int buzzer = 2;
- void setup()
- {
- pinMode(redC, OUTPUT);
- pinMode(blueC, OUTPUT);
- pinMode(greenC, OUTPUT);
- pinMode(InterC, OUTPUT);
- pinMode(redP, OUTPUT);
- pinMode(greenP, OUTPUT);
- pinMode(button, INPUT);
- pinMode(buzzer, OUTPUT);
- setColor(255, 0, 0); // red at cars for 10 seconds
- digitalWrite(redP, HIGH); // red at pedestrians for 10 seconds
- delay(2000); //should be 10 seconds but whatever
- setColor(0,0,0);
- digitalWrite(redP,LOW);
- }
- //10secondsRedP -> should call 8 seconds
- void RedCarSemaphore(){
- setColor(255,0,0);
- digitalWrite(greenP,HIGH);
- digitalWrite(redP,LOW);
- for(int i=1;i<=10;i++){
- digitalWrite(InterC,HIGH);
- delay(200); //half a second
- digitalWrite(InterC,LOW);
- delay(200);
- digitalWrite(InterC,HIGH);
- delay(200); //half a second
- digitalWrite(InterC,LOW);
- delay(200);
- if(i==8){ //after 8 seconds of green pedestrian stops
- digitalWrite(greenP,LOW);
- digitalWrite(redP,HIGH);
- }
- }
- }//10 seconds
- void GreenCarSemaphore(){
- setColor(0,255,0);
- digitalWrite(redP,HIGH);
- digitalWrite(greenP,LOW);
- delay(4000); //should be 15 seconds
- }
- void YellowCarsSemaphore(){
- setColor(255,255,0);
- delay(2000); //should be 3 seconds
- }
- void EarthquakeSituation(){
- //pedestrians semaphore is off
- digitalWrite(redP,LOW);
- digitalWrite(greenP,LOW);
- //traffic lights should be blinking
- for(int i=1;i<=10;i++){
- digitalWrite(InterC,HIGH);
- setColor(255,0,0);
- delay(200); //half a second
- digitalWrite(InterC,LOW);
- setColor(0,0,0);
- delay(200);
- digitalWrite(InterC,HIGH);
- setColor(255,0,0);
- delay(200); //half a second
- digitalWrite(InterC,LOW);
- setColor(0,0,0);
- }
- }
- void loop()
- {
- RedCarSemaphore();
- GreenCarSemaphore();
- YellowCarsSemaphore();
- // EarthquakeSituation();
- }
- void setColor(int red, int green, int blue)
- {
- analogWrite(redC, red);
- analogWrite(greenC, green);
- analogWrite(blueC, blue);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement