UoD_ME21001_Group_2_03 / Mbed 2 deprecated predestrain

Dependencies:   mbed

Revision:
1:503ed7aa21d0
Parent:
0:b5086e17bdd6
diff -r b5086e17bdd6 -r 503ed7aa21d0 main.cpp
--- a/main.cpp	Tue Nov 19 16:42:29 2019 +0000
+++ b/main.cpp	Tue Nov 26 16:45:57 2019 +0000
@@ -9,44 +9,72 @@
 DigitalIn LDR1 (p17);
 DigitalIn LDR2 (p18);
 DigitalOut myspeaker (LED1);
+DigitalOut LED(LED2);
 
 int alarm=0;
+int state=1;
 
 void train () {
+ greenled1=0;
+ yellowled1=1;
+ wait(5);
+ redled1=1;
+ yellowled1=0;
+ wait(1);
+ redledp=0;
+ greenledp=1;
+ wait(3);
+ if(LDR1.read()) {
+     if(LDR1.read()) {
+         alarm= alarm+1;
+         wait(2);
+     }
+     if(LDR1.read()) {
+         alarm= alarm+1;
+         wait(2);
+     }
+     if(LDR1.read()) {
+         alarm= alarm+1;
+         wait(2);
+     }
+     if(alarm==3) {
+         myspeaker= 1;
+         greenled1=0;
+         redled1=1;
+         redledp=1;
+         greenledp=0;
+         wait(50);
+     }
+     }
+}
+
+
+void pedestrian() {
+ if (LDR2.read()) {
+     train();
+ }
+ greenled1=0;
+ LED=0;
  yellowled1=1;
  wait(5);
  redled1=1;
  wait(2);
  yellowled1=0;
  wait(1);
- if(LDR1.read()) {
-     for(int s=0;s>=3;s=+1)
-     wait(10);
-     if(LDR1.read()) {
-         alarm= alarm+1;
-     }
-     if(alarm==3) {
-         myspeaker= 1;
-     }
-}
-greenledp=1;
-}
-
-void pedestrian() {
- if (LDR2.read()) {
-     train();
- }
- greenled1=0;
- yellowled1=1;
+ redledp=0;
+ greenledp=1;
  wait(5);
- redled1=1;
- wait(2);
- yellowled1=0;
- wait(1);
- greenledp=1;
- wait(10);
  greenledp=0;
  redledp=1;
+ wait(1);
+ yellowled1=1;
+ wait(1);
+ yellowled1=0;
+ redled1=0;
+ greenled1=1;
+ LED=1;
+ wait(1);
+ state= state+1;
 }
 
 
@@ -56,24 +84,26 @@
      greenled1=1;
      redledp=1;
      if(switchstate.read()) {
+        state=state+1;
+     }
+     if (state>1){
+         state=0;
+     }
+     if(state==0) {
         pedestrian ();
      }
      if(LDR2.read()) {
         train();
         wait(3);
-        if(LDR1.read()) {
-            redledp=1;
-            wait(1);
-            redledp=0;
-            greenledp=1;
-            wait(3);
-            redled1=1;
-            yellowled1=1;
-            wait(2);
-            greenled1=1;
-            redled1=0;
-            yellowled1=0;
-        }
+        redledp=1;
+        greenledp=0;
+        wait(1);
+        yellowled1=1;
+        wait(1);
+        redled1=0;
+        yellowled1=0;
+        greenled1=1;
+        wait(5);
      } 
 }
 }
\ No newline at end of file