mappe1 beta
Dependencies: mbed
Revision 3:e55f06ddce90, committed 2014-02-27
- Comitter:
- GramTech
- Date:
- Thu Feb 27 13:13:26 2014 +0000
- Parent:
- 2:316f91ebaf49
- Commit message:
- Ferdig utgave av BitGuard 3.25.1
Changed in this revision
main.cpp | Show annotated file Show diff for this revision Revisions of this file |
diff -r 316f91ebaf49 -r e55f06ddce90 main.cpp --- a/main.cpp Thu Feb 27 08:06:40 2014 +0000 +++ b/main.cpp Thu Feb 27 13:13:26 2014 +0000 @@ -13,7 +13,7 @@ Serial pc(USBTX, USBRX); - + //alle funskjoner void alarm1(void); void alarm2(void); void alarm3(void); @@ -27,7 +27,8 @@ void reset(void); void sekunder(void); void passord(void); -void meny(void); +void menyles(void); +void menyprint(void); void status(void); void linje1(void); @@ -41,110 +42,126 @@ volatile unsigned int sek = 0,min = 0,hour = 0,dag = 0,stat_rod1,stat_rod2,stat_rod3,stat_rod4,stat_rod5,stat_rod6,stat_rod7,stat_rod8,stat_reset,passord_1,valg,reset2; -int main() +int main() // Her er hoved programmet { reset1.mode(PullDown); - passord(); - meny(); - t1.attach(&sekunder, 1.0); while(1) { - alarm1(); - alarm2(); - alarm3(); - alarm4(); + passord(); + menyprint(); + t1.attach(&sekunder, 1.0); + while(1) { + alarm1(); + alarm2(); + alarm3(); + alarm4(); + menyles(); - reset(); - wait (0.1); + if (valg == 1 || reset1 == 0) { + reset2 = 1; + reset(); + } else if (valg == 2) { + pc.printf("\r\nDu er n\x86 logget ut\r\n"); + pc.printf("\r\nTakk for at benyttet deg av BitGaurd 3.25.1\r\n"); + reset2 = 1; + reset(); + break; + } else if(valg == 3) { + pc.printf("\r\n\r\nStatus:\r\n"); + status(); + } + reset(); + wait (0.1); + } + } +} + +void menyles(void) +{ + int stat; + + valg = 0; + if (pc.readable()) { + stat = pc.scanf("%d",&valg); + if (stat != 1) { + valg = 0; + } + if (!(valg >= 1 && valg <= 3)) { + pc.printf("\r\nFeil verdi!\r\n\r\nvenligst pr\x9Bv igjen\r\n"); + } } } -void meny(void) +void menyprint(void) //Hovedmeny { printf("\r\n\r\nMeny\r\n\r\n"); printf("Tast:\r\n"); - printf("1 starte systemet\r\n"); - printf("2 reset alarmen\r\n"); - printf("3 avslutte systemet\r\n"); - printf("4 status\r\n"); - scanf("%d",&valg); - - if(valg == 1) { - - } else if(valg == 2) { - reset2 = 1; - } else if(valg == 3) { - passord(); - } else if(valg == 4) { - status(); - } else { - - } + printf("1 reset alarmen\r\n"); + printf("2 avslutte systemet\r\n"); + printf("3 status\r\n"); } -void linje1(void) +void linje1(void) // { printf("\r\nVelkommen til BitGuard 3.25.1"); } -void status(void) +void status(void) //Denne funskjonen skriver til tera term hvilke alarm som har gått { if(rod1 == 1) { - printf("sløyfe 1\r\ndetektor 1 har slått ut etter %dsek %dmin %dtimer %ddager\r\n",sek,min,hour,dag); + pc.printf("\r\nsl\x9Byfe 1\r\ndetektor 1 har sl\x86tt ut etter %dsek %dmin %dtimer %ddager\r\n",sek,min,hour,dag); } if (rod2 == 1) { - printf("sløyfe 1\r\ndetektor 2 har slått ut etter %dsek %dmin %dtimer %ddager\r\n",sek,min,hour,dag); + pc.printf("\r\nsl\x9Byfe 1\r\ndetektor 2 har sl\x86tt ut etter %dsek %dmin %dtimer %ddager\r\n",sek,min,hour,dag); } if(rod3 == 1) { - printf("sløyfe 2\r\ndetektor 1 har slått ut etter %dsek %dmin %dtimer %ddager\r\n",sek,min,hour,dag); + pc.printf("\r\nsl\x9Byfe 2\r\ndetektor 1 har sl\x86tt ut etter %dsek %dmin %dtimer %ddager\r\n",sek,min,hour,dag); } if(rod4 == 1) { - printf("sløyfe 2\r\ndetektor 2 har slått ut etter %dsek %dmin %dtimer %ddager\r\n",sek,min,hour,dag); + pc.printf("\r\nsl\x9Byfe 2\r\ndetektor 2 har sl\x86tt ut etter %dsek %dmin %dtimer %ddager\r\n",sek,min,hour,dag); } if(rod5 == 1) { - printf("sløyfe 3\r\ndetektor 1 har slått ut etter %dsek %dmin %dtimer %ddager\r\n",sek,min,hour,dag); + pc.printf("\r\nsl\x9Byfe 3\r\ndetektor 1 har sl\x86tt ut etter %dsek %dmin %dtimer %ddager\r\n",sek,min,hour,dag); } if(rod6 == 1) { - printf("sløyfe 3\r\ndetektor 2 har slått ut etter %dsek %dmin %dtimer %ddager\r\n",sek,min,hour,dag); + pc.printf("\r\nsl\x9Byfe 3\r\ndetektor 2 har sl\x86tt ut etter %dsek %dmin %dtimer %ddager\r\n",sek,min,hour,dag); } if(rod7 == 1) { - printf("sløyfe 4\r\ndetektor 1 har slått ut etter %dsek %dmin %dtimer %ddager\r\n",sek,min,hour,dag); - + pc.printf("\r\nsl\x9Byfe 4\r\ndetektor 1 har sl\x86tt ut etter %dsek %dmin %dtimer %ddager\r\n",sek,min,hour,dag); } if(rod8 == 1) { - printf("sløyfe 4\r\ndetektor 2 har slått ut etter %dsek %dmin %dtimer %ddager\r\n",sek,min,hour,dag); + pc.printf("\r\nsl\x9Byfe 4\r\ndetektor 2 har sl\x86tt ut etter %dsek %dmin %dtimer %ddager\r\n",sek,min,hour,dag); + } + + if(rod1==0&&rod2==0&&rod3==0&&rod4==0&&rod5==0&&rod6==0&&rod7==0&&rod8 == 0) { + pc.printf("\r\nAlt er i orden, ingen alarm er utl\x9Bst"); } - if(reset1 == 0) { - printf("alarmen har blitt resatt\r\n"); - } else { - printf("\r\nalt er i orden, ingen alarm er utlost"); - } - meny(); + menyprint(); } -void passord (void) +void passord (void) //Her må brukeren taste et oppgit passord for å få tilgang til alle mulighetene BitGuard 3.25.1 tilbyr { - printf("Hei!\r\nvenligst tast inn passord\r\n"); + printf("\r\nHei!\r\nvenligst tast inn passord for \x86 sette i gang alarmen\r\n"); scanf("%d", &passord_1); while (passord_1 != 258456) { - printf("passord du har tastet inn er feil \r\nvenligst prov igjen\r\n "); + printf("\r\nPassordet du har tastet inn er feil \r\nVenligst pr\x9Bv igjen\r\n "); scanf("%d", &passord_1); } linje1(); } -void sekunder(void) +void sekunder(void) //tid taker funksjon { sek++; min = sek / 60; - sek = sek % 60; + sek %= 60; hour = min / 60; min %= 60; dag = hour / 24; hour %= 24; } -void alarm1(void) +void alarm1(void) //Her ser man testen på alarmen { if( (sone1 >= (grense0 - vindu)) && (sone1 <= (grense0 + vindu))) { blink1(); @@ -237,7 +254,7 @@ } -void blink1(void) +void blink1(void) //Denne får sløyfe lyset til å blinke { if ( rod1 == 1||rod2 == 1) { drift1 = 1; @@ -280,17 +297,16 @@ drift4 = 1; } } -void reset(void) +void reset(void) //reset funskjon { if (reset1 == 0 || reset2 == 1 ) { rod1=rod2=rod3=rod4=rod5=rod6=rod7=rod8=drift1=drift2=drift3=drift4 = 0 ; } reset2 = 0; - // scanf("%d",&valg); } -void testlogg(void) +void testlogg(void) //Tester om det skal logges { if(rod1||rod2||rod3||rod4||rod5||rod6||rod7||rod8 == 1) { logg(); @@ -299,7 +315,7 @@ } -void logg(void) +void logg(void) //Lager en txt fil som det logges på { FILE *fp = fopen("/local/logg.txt", "a"); if (fp == NULL) {