Dependencies: mbed
Diff: main.cpp
- Revision:
- 2:091793a4e7ec
- Parent:
- 0:212362d7d1f9
- Child:
- 3:3bf1a7613e06
--- a/main.cpp Tue Oct 13 07:13:15 2015 +0000 +++ b/main.cpp Tue Oct 13 08:17:37 2015 +0000 @@ -1,5 +1,7 @@ #include "mbed.h" +InterruptIn trig1(D3); + DigitalOut myled0(D15); DigitalOut myled1(D14); DigitalOut myled2(D13); @@ -13,122 +15,170 @@ DigitalIn inbutton2(D4); DigitalIn inbutton3(D5); +#define delay 0.1 -int main() - { - - while(1) - { - if(inbutton1==1 && inbutton2==0 && inbutton3==0) - - { - myled0=1; - wait(1); - myled0=0; - - myled1=1; - wait(1); - myled1=0; - - myled2=1; - wait(1); - myled2=0; - - myled3=1; - wait(1); - myled3=0; - - myled4=1; - wait(1); - myled4=0; - - myled5=1; - wait(1); - myled5=0; - - myled6=1; - wait(1); - myled6=0; - - myled7=1; - wait(1); - myled7=0; - } - if(inbutton1==0 && inbutton2==1 && inbutton3==0) - { - myled3=1; - myled4=1; - wait(1); - myled3=0; - myled4=0; - - myled2=1; - myled5=1; - wait(1); - myled2=0; - myled5=0; - - myled1=1; - myled6=1; - wait(1); - myled1=0; - myled6=0; - - myled0=1; - myled7=1; - wait(1); - myled0=0; - myled7=0; - - myled0=1; - myled7=1; - wait(1); - myled0=0; - myled7=0; - - myled1=1; - myled6=1; - wait(1); - myled1=0; - myled6=0; - - myled2=1; - myled5=1; - wait(1); - myled2=0; - myled5=0; - - myled3=1; - myled4=1; - wait(1); - myled3=0; - myled4=0; - } - if(inbutton1==0 && inbutton2==0 && inbutton3==1) - { - myled0=1; - myled2=1; - myled4=1; - myled6=1; - wait(1); - myled0=0; - myled2=0; - myled4=0; - myled6=0; - - myled1=1; - myled3=1; - myled5=1; - myled7=1; - wait(1); - myled1=0; - myled3=0; - myled5=0; - myled7=0; - - } - else{myled0=0;myled1=0;myled2=0;myled3=0;myled4=0;myled5=0;myled6=0;myled7=0;} - } +int checkState() +{ + if(inbutton1==1 && inbutton2==0 && inbutton3==0) { + return 1; + } + if(inbutton1==0 && inbutton2==1 && inbutton3==0) { + return 2; + } + if(inbutton1==0 && inbutton2==0 && inbutton3==1) { + return 3; + + } else { + return 0; + } +} + +int pt1() +{ + myled0=1; + wait(delay); + myled0=0; + if(checkState()!=1) return 0; + myled1=1; + wait(delay); + myled1=0; + if(checkState()!=1) return 0; + myled2=1; + wait(delay); + myled2=0; + if(checkState()!=1) return 0; + myled3=1; + wait(delay); + myled3=0; + if(checkState()!=1) return 0; + myled4=1; + wait(delay); + myled4=0; + if(checkState()!=1) return 0; + myled5=1; + wait(delay); + myled5=0; + if(checkState()!=1) return 0; + myled6=1; + wait(delay); + myled6=0; + if(checkState()!=1) return 0; + myled7=1; + wait(delay); + myled7=0; + + return 0; +} + +int pt2() +{ + myled3=1; + myled4=1; + wait(delay); + myled3=0; + myled4=0; + if(checkState()!=2) return 0; + myled2=1; + myled5=1; + wait(delay); + myled2=0; + myled5=0; + if(checkState()!=2) return 0; + myled1=1; + myled6=1; + wait(delay); + myled1=0; + myled6=0; + if(checkState()!=2) return 0; + myled0=1; + myled7=1; + wait(delay); + myled0=0; + myled7=0; + if(checkState()!=2) return 0; + myled0=1; + myled7=1; + wait(delay); + myled0=0; + myled7=0; + if(checkState()!=2) return 0; + myled1=1; + myled6=1; + wait(delay); + myled1=0; + myled6=0; + if(checkState()!=2) return 0; + myled2=1; + myled5=1; + wait(delay); + myled2=0; + myled5=0; + if(checkState()!=2) return 0; + myled3=1; + myled4=1; + wait(delay); + myled3=0; + myled4=0; + + return 0; +} + +int pt3() +{ + myled0=1; + myled2=1; + myled4=1; + myled6=1; + wait(delay); + myled0=0; + myled2=0; + myled4=0; + myled6=0; + if(checkState()!=3) return 0; + myled1=1; + myled3=1; + myled5=1; + myled7=1; + wait(delay); + myled1=0; + myled3=0; + myled5=0; + myled7=0; + return 0; +} + +void black() +{ + myled0=0; + myled1=0; + myled2=0; + myled3=0; + myled4=0; + myled5=0; + myled6=0; + myled7=0; } +int main() +{ + //trig1.(&trigger1); + while(1) { + if(inbutton1==1 && inbutton2==0 && inbutton3==0) + + { + pt1(); + } + if(inbutton1==0 && inbutton2==1 && inbutton3==0) { + pt2(); + } + if(inbutton1==0 && inbutton2==0 && inbutton3==1) { + pt3(); + + } else { + black(); + } + } +} + +