programmering / Mbed 2 deprecated mbed_blinkyrfferfrdfrf

Dependencies:   mbed

Revision:
1:499bd5b83b45
Parent:
0:c1d82c87628a
--- a/main.cpp	Tue Mar 06 10:13:16 2018 +0000
+++ b/main.cpp	Thu Mar 08 11:37:40 2018 +0000
@@ -1,243 +1,238 @@
 #include "mbed.h"
 #include <time.h>
 
-AnalogIn sloyfe[4] = {p17, p18, p19, p20};                          // Analoge inngangene, *sløyfene*
-DigitalOut led[4] = {LED1, LED2, LED3, LED4};                       // Led til alarm blinking ved feil.
-DigitalOut b[8] = {p21, p22, p23, p24, p25, p26, p27, p28};         // Status ledbar på sensorene i sløyfene.
+AnalogIn sloyfe[4] = {p17, p18, p19, p20};                          // Sløyfene
+DigitalOut led[4] = {LED1, LED2, LED3, LED4};                       // Led for feil
+DigitalOut b[8] = {p21, p22, p23, p24, p25, p26, p27, p28};         // Bargraph
 DigitalIn sb(p16);                                                  // Service bryter.
 Serial pc(USBTX, USBRX);                                            //PC komunikasjon
-Ticker alarm, system_paa, servic;                                   // Tikkere, alarm er til å sjekke sløyfene, system på er til når alarmen er aktivert og service er for å sjekke servicebryter.
+Ticker alarm, system_paa, servic;                                   // Tikkere
 int blink[4]= {0, 0, 0, 0};                                         // Global variabel med 4 elementer. Hvert element styrer sin egen led!
 int amount_faild = 0;                                        // En variabel for å telle antall ganger feil inntastet passord.
-void alarm_actived();                                        // Sjekker hva verdien på de analoge inngangene er og og utfører en case ut fra det for hver sløyfe.
+void alarm_actived();                                        // Sjekker hva verdien på de analoge inngangene er og og utfører en case.
 void service();                                              // Funksjon for resetting av anlegge. Anlegget blir satt i vedlikeholdsmodus med null feil.
 void alblink();                                             // Blinke funksjonen.
 char passord[5] = {'5','5', '5', '5', '5'};                             // Passordet.
 int check_password1();                                       // Funksjon for å sjekke om inntastet passord er riktig.
-void User_Of(int);                                               // Valg menyen der User_Of velger et ønske.
+void bruker(int);                                               // Valg menyen der bruker velger et ønske.
 void Dato_timer();                                          //Klokke funskjonen.
 LocalFileSystem local("local");                             // Fillogging
 
 int main()
 {
-   set_time(1519919737); // vasjon 27 feb
+   set_time(1519919737); //setter tiden til sekunder verdi siden 1970
     while(1)
     {
-        pc.printf("Velkommen\n");                   // Velkomst beskjed.
-        Dato_timer();                               // Oppkaller klokke funksjonen for å sjekke om tiden er riktig.
-        int x = check_password1();                      // Dersom passord er riktig blir det returnet en ener og tilegnet til variabelen x.
-        User_Of(x);                                      // Valg funskjonen får verdien 1 fra varabelen x.
+        pc.printf("Velkommen\n");                  
+        Dato_timer();                               // Viser klokke
+        int x = check_password1();                      // sjekker pass er riktig og sender 1 til x om det er det.
+        bruker(x);                                      
     }
 }
 
 void Dato_timer()
 {
-    time_t seconds = time(NULL);                                                                                    // Returnerer tiden lagret i time_t i sekunder.
-    pc.printf("Mbed klokka er naa: %s", ctime(&seconds));                                                                       // Viser hva tiden er, ctime tolker det til leselig tid for oss.
+    time_t seconds = time(NULL);                            // Returnerer tiden lagret i time_t i sekunder.
+    pc.printf("Mbed klokka er naa: %s", ctime(&seconds));       // Viser hva tiden er, ctime omgjør det til 
     pc.printf("\n\n\n");
-    pc.printf("Hvis det ikke stemmer tast 0 ellers tast noe annet\n", ctime(&seconds));                                 //Kun info.
-    if (pc.getc() == '0')                                                                                           // Sjekk om inntastet tegn er 0.
+    pc.printf("Hvis det ikke stemmer tast 0 ellers tast noe annet\n", ctime(&seconds));//Kun info.
+    if (pc.getc() == '0')                                           // Sjekk om inntastet tegn er 0.
     {
-        struct tm t;                                                                                                //Pakker all info inn og sender det til klokkefunksjonen.
+        struct tm t;                                                            
         pc.printf("Tast inn dato og klokkeslett:\n");
         pc.printf("YYYY MM DD HH MM SS[enter]\n");
-        scanf("%d %d %d %d %d %d", &t.tm_year, &t.tm_mon, &t.tm_mday, &t.tm_hour, &t.tm_min, &t.tm_sec);            // inhenter riktig rid fra User_Of.
+        scanf("%d %d %d %d %d %d", &t.tm_year, &t.tm_mon, &t.tm_mday, &t.tm_hour, &t.tm_min, &t.tm_sec);// bruker ikke denne funksjonen...
         
-        t.tm_year = t.tm_year - 2020;               // Gjør om til riktig år.
-        t.tm_mon = t.tm_mon - 1;                        //Gjør om til riktig måned.
-        set_time(mktime(&t));                       // Setter nye tiden til intastet tid.
+        t.tm_year = t.tm_year - 2020;               
+        t.tm_mon = t.tm_mon - 0;                        
+        set_time(mktime(&t));                       
         
     }
     
 }
 
-void User_Of(int riktigpassord)                          // meny funksjonen.
+void bruker(int riktigpassord)                          // meny funksjonen.
 {   
-    servic.attach(&service, 60);                          // Tikker funksjon som service blir tilknyttet og utføres 2 ganger i sekundet.
-    while(riktigpassord == 1)                           // Hvis verdien fra x er 1 gå inn her.
+    servic.attach(&service, 5);                          
+    while(riktigpassord==1)
     {
-        time_t seconds = time(0); 
-        pc.printf("For start tast 5: \n\t");            // Valg meny.
-        pc.printf("For stopp tast 6:\n\t");
-        pc.printf("For reset tast 7:\n\t");
-        pc.printf("For status av hele anlegget eller sloyfer tast 4:\n\t");
-        pc.printf("For utlogging tast 8:\n\t");
+        time_t seconds = time(NULL); 
+        pc.printf("For start tast 1:\n\t");// Valg meny.
+        pc.printf("For stopp tast 2:\n\t");
+        pc.printf("For reset tast 3:\n\t");
+        pc.printf("For status tast 4:\n\t");
+        pc.printf("For utlogging tast 5:\n\t");
+        pc.printf("For logg utskrift tast 6:\n\t");
     
         servic.attach(&service, 5);
-        switch(pc.getc())                       // Innhenter inntrykk fra User_Of.
+        switch(pc.getc())// tall fra bruker blir til case
         {
-            case '5':                       // Dersom intastet tegn er 1, utfør dette.
+            case '1':
             {
-                FILE *fp = fopen("/local/SYSTEMLOG.txt", "a");// File blir peket til fp og fp blir åpnet for skriving.
-                fprintf(fp, "\r\n Systemet paa: %s", ctime(&seconds));//Kun en beskjed som blir loggført med klokketid.
-                fclose(fp);                                             //Stenger filen fp.
-                pc.printf("System paa. \n\n");//Info til User_Of.
-                system_paa.attach(&alarm_actived, 2);// Tikker funksjon som alarm aktiv blir tilknyttet og skal utføres annen hvert sekund.
-                break;//Breaker her for at casen skal avslutte og ingen caser videre blir utført uten at det er blidt bedt om det.
+                FILE *fp = fopen("/local/SYSTEMLOG.txt", "a");// File blir sendt til fp
+                fprintf(fp, "\r\n Systemet paa: %s", ctime(&seconds));
+                fclose(fp);
+                pc.printf("System paa. \n\n");//Info til bruker.
+                system_paa.attach(&alarm_actived, 2);// Tikker funksjon for alarm
+                break;
             }
-            case '6':
+            case '2':
             {
-                FILE *fp = fopen("/local/SYSTEMLOG.txt", "a");// File blir peket til fp og fp blir åpnet for skriving.
-                fprintf(fp," Systemet stoppet: %s\r\n", ctime(&seconds));//Kun en beskjed som blir loggført med klokketid.
-                fclose(fp);                                                             //Stenger filen fp.
+                FILE *fp = fopen("/local/SYSTEMLOG.txt", "a");
+                fprintf(fp, " Systemet stoppet: %s\r\n", ctime(&seconds));
+                fclose(fp);
                 pc.printf("System stoppet. \n\n");
-                system_paa.detach();                                                                //Fra kobler funskjonen system_paa fra tickeren.
+                system_paa.detach();
                 for(int m=0; m < 4; m++){ blink[m]=0; led[m]=0;}
-                break;//Breaker her for at casen skal avslutte og ingen caser videre blir utført uten at det er blidt bedt om det.
+                break;
             }
-            case '7':
+            case '3':
             {
-                FILE *fp = fopen("/local/SYSTEMLOG.txt", "r");// File blir peket til fp og fp blir åpnet for skriving.
-                fprintf(fp, "\r\n Systemet resatt: %s", ctime(&seconds));//Kun en beskjed som blir loggført med klokketid.
-                fclose(fp);//Stenger filen fp.
+                FILE *fp = fopen("/local/SYSTEMLOG.txt", "a");
+                fprintf(fp, "\r\n Systemet resatt: %s", ctime(&seconds));
+                fclose(fp);
                 pc.printf("\n\n System resatt. \n\n");
                 int m=0;
                 while(m < 4) 
-                { // Dersom denne lokale variabelen er mindre enn 4 hold deg i denne løkka.
-                    blink[m]=0; // Dersom service bryter er 1 reset alarm.
-                    b[m+m]=b[m+m+1]=0;// Sett alle diodene fra b[0+0] og b[0+0+1] = 0. Og for hver gang m økes med en verdi blir det da m+m og m+m+1. Partall og oddetall.
-                    led[m]=0;// Sett alle led[] til 0.
-                    m++;// Inkrementer denne lokale variabelen og repeter.
+                { // variablen < 4 holder seg i løkka
+                    blink[m]=0; // hvis service bryter er 1 reset alarm.
+                    b[m+m]=b[m+m+1]=0;
+                    led[m]=0;
+                    m++;
                 }
-                break;//Breaker her for at casen skal avslutte og ingen caser videre blir utført uten at det er blidt bedt om det.
+                break;
             }
             case '4':
             {
                 pc.printf("\n For status paa hele anlegget tast 1: \n");
                 pc.printf("\n For status paa enkelt sloyfer tast 2: \n\n\t\t");
-                switch(getchar())//Ny switch case i case 4 for status valg.
+                switch(getchar())//Ny switch cas for 4 hvis valgt
                 {
-                    case '5':
+                    case '1':
                     {
                         for(int m=0; m<4; m++)
                         {
-                            float a=sloyfe[m];// Lokal float variabel som får verdien fra sløyfene for hver verdi i har.
-                            if(a >= 0.30 && a <= 0.55){ pc.printf("\n Sloyfe %d alt ok. \n R1 i sloyfe %d operativ. \n R2 i sloyfe %d operativ \n\n", m+1, m+1, m+1); }// Tester og hvis sant, printer en beskjed til User_Of.
-                            else if(a >= 0.58 && a <= 0.62) { pc.printf("\n Brudd i sloyfe %d. \n Brudd i R1 sloyfe %d. \n", m+1, m+1); }// Tester og hvis sant, printer en beskjed til User_Of.
-                            else if(a >= 0.64 && a <= 0.80) { pc.printf("\n Brudd i sloyfe %d. \n \n Brudd i R2 sloyfe %d. \n\n", m+1, m+1); }// Tester og hvis sant, printer en beskjed til User_Of.
-                            else if(a < 0.25) { pc.printf("\n Brudd i hele sloyfe %d. \n", m+1); }// Tester og hvis sant, printer en beskjed til User_Of.
-                            else if(a >=0.88) { pc.printf("\n Brudd i R1 og R2 i sloyfe %d. \n", m+1); }// Tester og hvis sant, printer en beskjed til User_Of.
+                            float a=sloyfe[m];
+                            if(a >= 0.30 && a <= 0.55){ pc.printf("\n Sloyfe %d alt ok. \n R1 i sloyfe %d operativ. \n R2 i sloyfe %d operativ \n\n", m+1, m+1, m+1); }
+                            else if(a >= 0.58 && a <= 0.62) { pc.printf("\n Brudd i sloyfe %d. \n Brudd i R1 sloyfe %d. \n", m+1, m+1); }
+                            else if(a >= 0.64 && a <= 0.80) { pc.printf("\n Brudd i sloyfe %d. \n \n Brudd i R2 sloyfe %d. \n\n", m+1, m+1); }
+                            else if(a < 0.25) { pc.printf("\n Brudd i hele sloyfe %d. \n", m+1); }
+                            else if(a >=0.88) { pc.printf("\n Brudd i R1 og R2 i sloyfe %d. \n", m+1); }// alt over sender beksjed hvis sant
                         }
-                        break;//Breaker her for at casen skal avslutte og ingen caser videre blir utført uten at det er blidt bedt om det.
+                        break;
                     }
-                    case '6':
+                    case '2':
                     {
-                        pc.printf("\n For sloyfe 1 tast 1: \n For sloyfe 2 tast 2: \n For sloyfe 3 tast 3: \n For sloyfe 4 tast 4: \n\n\t\t");// Valg meny for status på sløye.
+                        pc.printf("\n For sloyfe 1 tast 1: \n For sloyfe 2 tast 2: \n For sloyfe 3 tast 3: \n For sloyfe 4 tast 4: \n\n\t\t");
                         int x = getchar();
-                        if(x<50 || x>60){pc.printf("\n Ugyldig valg! \n"); break;};
-                        float a=sloyfe[x-50];//x-49 er pga getchar gir en ASCII verdi som er forskjellig fra ønskelig verdi, med -49 får vi riktig verdi til sløyfe element nummer.
-                        if(a >= 0.30 && a <= 0.55){ pc.printf("\n R1 operativ. \n R2 operativ \n\n"); }// Tester og hvis sant, printer en beskjed til User_Of.
-                        else if(a >= 0.58 && a <= 0.62) { pc.printf("\n Brudd i R1 sloyfe %d. \n", x-49); }// Tester og hvis sant, printer en beskjed til User_Of, x-48 for å få riktig verdi på sløyfe nummer.
-                        else if(a >= 0.64 && a <= 0.80) { pc.printf("\n Brudd i R2 sloyfe %d. \n\n", x-49); }// Tester og hvis sant, printer en beskjed til User_Of, x-48 for å få riktig verdi på sløyfe nummer.
-                        else if(a < 0.25) { pc.printf("\n Brudd i hele sloyfe %d. \n", x-48); }// Tester og hvis sant, printer en beskjed til User_Of, x-48 for å få riktig verdi på sløyfe nummer.
-                        else if(a >=0.88) { pc.printf("\n Brudd i R1 og R2 i sloyfe %d. \n", x-48); }// Tester og hvis sant, printer en beskjed til User_Of, x-48 for å få riktig verdi på sløyfe nummer.
-                        break;//Breaker her for at casen skal avslutte og ingen caser videre blir utført uten at det er blidt bedt om det.
+                        if(x<49 || x>52){pc.printf("\n Ugyldig valg! \n"); break;};
+                        float a=sloyfe[x-49];//x-49 er pga getchar gir en ASCII verdi som er forskjellig fra ønskelig verdi
+                        if(a >= 0.30 && a <= 0.55){ pc.printf("\n R1 operativ. \n R2 operativ \n\n"); }
+                        else if(a >= 0.58 && a <= 0.62) { pc.printf("\n Brudd i R1 sloyfe %d. \n", x-48); }
+                        else if(a >= 0.64 && a <= 0.80) { pc.printf("\n Brudd i R2 sloyfe %d. \n\n", x-48); }
+                        else if(a < 0.25) { pc.printf("\n Brudd i hele sloyfe %d. \n", x-48); }
+                        else if(a >=0.88) { pc.printf("\n Brudd i R1 og R2 i sloyfe %d. \n", x-48); }
+                        break;
                     }
-                    default: //Dersom et annet tall enn hva som er spesifisert printes denne beskjeden ut.
+                    default: 
                     {
                         printf("\n Ugyldig valg.\n");
-                        break;//Breaker her for at casen skal avslutte og ingen caser videre blir utført uten at det er blidt bedt om det.
+                        break;
                     }
-                } break;//Breaker her for at casen skal avslutte og ingen caser videre blir utført uten at det er blidt bedt om det.
-            }
-            case '8':
-            {
-                FILE *fp = fopen("/local/SYSTEMLOG.txt", "r");// File blir peket til fp og fp blir åpnet for skriving.
-                fprintf(fp, "\r\n Logget av systemet: %s", ctime(&seconds));//Kun en beskjed som blir loggført med klokketid.
-                fclose(fp);//Stenger filen fp.
-                pc.printf("\n\n\n\n\n\n\n\n\t\t\t\t Farvel.\n\n\n\n\n\n\n\n\n");
-                riktigpassord=0;// Setter denne variabelen til 0 for at neste innlogging kun skjer hvis riktig passord er skrevet.
-                break;//Breaker her for at casen skal avslutte og ingen caser videre blir utført uten at det er blidt bedt om det.
+                } break;
             }
-            case '0':
+            case '5':
             {
-                FILE *fp = fopen("/local/SYSTEMLOG.txt", "r");// File blir peket til fp og fp blir åpnet for lesing.
-                /*if (fp == NULL) // Dette er for å gi beskjed om at filen ikke klarte å åpne.
+                FILE *fp = fopen("/local/SYSTEMLOG.txt", "a");
+                fprintf(fp, "\r\n Logget av systemet: %s", ctime(&seconds));
+                fclose(fp);
+                pc.printf("\n\n\n\n\n\n\n\n\t\t\t\t Farvel.\n\n\n\n\n\n\n\n\n");
+                riktigpassord=0;// variabel til 0 for inlogging
+                break;
+            }
+            case '6':
+            {
+                FILE *fp = fopen("/local/SYSTEMLOG.txt", "r");
+                int c;
+                if (fp) 
                 {
-                    pc.printf
-                    exit(1);
-                }*/// Dette har vi valgt å eksludere da ved testing er det tydelig at filen åpner å lukker seg på rikitg måte.
-                int c;
-                if (fp) //En test for å se om filen er åpen!
-                {
-                    while ((c = getc(fp)) != EOF)// Så fremt det er flere tegn i fila forbli i while løkka.
+                    while ((c = getc(fp)) != EOF)
                     {
-                        pc.putc(c);// Printer ut tegn for tegn fra filen til TeraTerm.
+                        pc.putc(c);
                     }
                 }
-                fclose(fp);//Ferdig med lesing av filen og lukker filen.
-                break;//Breaker her for at casen skal avslutte og ingen caser videre blir utført uten at det er blidt bedt om det.
+                fclose(fp);
+                break;
             }
-            default: //Dersom et annet tall enn hva som er spesifisert printes denne beskjeden ut.
+            default:
             {
                 printf("\n Ugyldig valg.\n");
-                break;//Det er valgfritt å breake her da default blir utført og programmet fortsetter videre. Men vi tar det med for det.
+                break;//valgfri break men har den her selvom default overskriver
             }
         }
     }
 }   
 int check_password1()
 {
-    time_t seconds = time(NULL); // Henter tiden lagret i time_t i sekunder for videre bruk.
+    time_t seconds = time(NULL); // Henter tid
     pc.printf("\n Skriv inn passord for adgang til alarmsystemet: ");
-    int riktigpass=0; int n=0; char sjekk[4];// Lokale varable blir opprettet for bruk i denne funksjonen.
+    int riktigpass=0; int n=0; char sjekk[4];
     while(1) 
     {
-        if(pc.readable() && n < 4) // Dersom noe blir tastet på tastauret gå inn.
+        if(pc.readable() && n < 4) 
             {
                 sjekk[n++] = pc.getc();// Lagre inntastet tegn i sjekk arrayet i element n og inkrementer n med 1.
-                if(n == 4) { break; }// Dersom n er lik 4 break ut av while løkken. 
+                if(n == 4) { break; } 
             }
     }
-    for(n=0; n<4; n++) { if(sjekk[n]==passord[n]) { riktigpass++; } }// En for løkke for å sammenligne hvert intastet tegn med passord tegnene.
+    for(n=0; n<4; n++) { if(sjekk[n]==passord[n]) { riktigpass++; } }
     
-    if(riktigpass == 4) // Dersom passordet er riktig gå inn.
+    if(riktigpass == 4) 
     {
-        FILE *fp = fopen("/local/SYSTEMLOG.txt", "r");// File blir peket til fp og fp blir åpnet for skriving.
-        fprintf(fp, "\r\n Riktig passord inntastet: %s", ctime(&seconds));//Kun en beskjed som blir loggført med klokketid.
-        fclose(fp);//Stenger filen fp.
+        FILE *fp = fopen("/local/SYSTEMLOG.txt", "a");
+        fprintf(fp, "\r\n Riktig passord inntastet: %s", ctime(&seconds));//beskjed som blir loggført med klokketid.
+        fclose(fp);
         pc.printf("\n Riktig passord.\n\n");
         amount_faild=0;
         return 1;
     }
     else 
-    { // Dersom passordet er feil gå inn her.
+    { // Dersom passordet er feil kjør dette
         amount_faild++;
-        FILE *fp = fopen("/local/SYSTEMLOG.txt", "r");// File blir peket til fp og fp blir åpnet for skriving.
-        fprintf(fp, "\r\n Feil passord inntastet, %d ganger: %s", amount_faild, ctime(&seconds));//Kun en beskjed som blir loggført med klokketid.
-        fclose(fp);//Stenger filen fp.
+        FILE *fp = fopen("/local/SYSTEMLOG.txt", "a");
+        fprintf(fp, "\r\n Feil passord inntastet, %d ganger: %s", amount_faild, ctime(&seconds));//beskjed til logg
+        fclose(fp);
         pc.printf("\n\nFeil Passord, prov igjen!\n\n"); }
     return 0;
 }
 
 void alblink()//Blinke funksjon for sløyfene.
 {
-    int n;// Lokal variabel
-    for(n=0; n < 5; n++) 
-    { // For løkke for å sjekke om feil er tilstedet eller ikke.
-        if(blink[n]==1) { led[n] = !led[n]; }  // Dersom feil på de forskjellige sløyfene blink med riktig led!
+    int n;
+    for(n=0; n < 4; n++) 
+    { 
+        if(blink[n]==1) { led[n] = !led[n]; } 
     }
 }
 
 void service()// service bryter funksjon.
 {
-    time_t seconds = time(NULL); // Henter tiden lagret i time_t i sekunder for videre bruk.
-    if(sb ==1) 
-    { // Hvis service bryter aktiv gå inn.
-        FILE *fp = fopen("/local/SYSTEMLOG.txt", "r");                          // File blir peket til fp og fp blir åpnet for skriving.
-        fprintf(fp, "\r\n Service bryter aktivert: %s", ctime(&seconds));           //Kun en beskjed som blir loggført med klokketid.
-        fclose(fp);                         //Stenger filen fp.
-    
-        pc.printf("\n\n Vedlikeholdsarbeid paa alegget. \n\n\n\n");// Fortell User_Of at anlegge er i vedlikeholdsmodus.
+    time_t seconds = time(NULL); 
+    if(sb==1) 
+    { // Hvis service bryter på
+        FILE *fp = fopen("/local/SYSTEMLOG.txt", "a");                          
+        fprintf(fp, "\r\n Service bryter aktivert: %s", ctime(&seconds));           //beksjed til logg
+        fclose(fp);                         
+        pc.printf("\n\n Vedlikehold paa anlegget. \n\n\n\n");//beskjed om at det er vedlikehold
         int m=0;            //Lokal variabel.
         while(sb==1) 
-        {                                                           // Såfremt service bryteren er aktiv holdes programmet i denne while løkken.
+        {                                                           // hvis servicebryter er inne så er denne i løkke
             while(m < 2) 
-            {                                                                   // Dersom denne lokale variabelen er mindre enn 4 hold deg i denne løkka.
-                blink[m] = 0;                                                   // Dersom service bryter er 1 reset alarm.
-                b[m+m]=b[m + m + 1] = 0;                // Sett alle diodene fra b[0+0] og b[0+0+1] = 0. Og for hver gang m økes med en verdi blir det da m+m og m+m+1. Partall og oddetall.
+            {                                                                   
+                blink[m] = 0;                                                  
+                b[m+m]=b[m+m+1] = 0;                
                 led[m] = 0;                         // Sett alle led[] til 0.
-                m++;                                                                // Inkrementer denne lokale variabelen og repeter.
+                m++;                                                               
             }
         }
         system_paa.detach();                            // Frakobler system_paa fra ticker.
@@ -247,40 +242,40 @@
 
 void alarm_actived()// .
 {
-    time_t seconds = time(NULL);                                                        // Henter tiden lagret i time_t i sekunder for videre bruk.
-    alarm.attach(&alblink, 0.1);                                                                // Tilkobler alblink funksjonen til ticker ved navnet alarm og denne funksjoenen kjøres 10 ganger i sekundet. 
-    int analog_verdi=0;                                                             // Lokal variabel.
-    for(int i = 0; i < 4; i++)                                          // En for løkke for å sjekke alle 4 sløyfene, og i for løkken er den en switch for å utføre riktig handling utfra hva analog_verdi er.
+    time_t seconds = time(NULL); 
+    alarm.attach(&alblink, 0.1); // alblink kjøres 10 ganger i sekundet. 
+    int analog_verdi=0;
+    for(int i = 0; i < 4; i++) // Løkke for alle sløyfene for og sjekke analog verdi
     {
-        float a=sloyfe[i];                                              // Lokal float variabel som får verdien fra sløyfene for hver verdi i har.
-        if(a >= 0.30 && a <= 0.55) { analog_verdi = 1; }                            // Dersom alt i orden sett analog_verdi til 1.
-        else if(a >= 0.58 && a <= 0.62) { analog_verdi = 2; }        // Dersom R1 brutt sett analog_verdi til 2.
-        else if(a >= 0.64 && a <= 0.80) { analog_verdi = 3; }               // Dersom R2 brutt sett analog_verdi til 3.
-        else if(a < 0.25 || a >=0.88) { analog_verdi = 4; }                                             // Dersom brudd på leder eller begge motstandene sett analog_verdi til 4.
+        float a=sloyfe[i];
+        if(a >= 0.30 && a <= 0.55) { analog_verdi = 1; }// alt ok, sett analog_verdi til 1.
+        else if(a >= 0.58 && a <= 0.62) { analog_verdi = 2; } // R1 brudd  gi analog_verdi 2.
+        else if(a >= 0.64 && a <= 0.80) { analog_verdi = 3; } 
+        else if(a < 0.25 || a >=0.88) { analog_verdi = 4; } 
  
         switch(analog_verdi) 
         {
             case 1: 
-            { // Dersom denne verdien er 1 gå inn her og utfør dette også gå ut av case 1 tilbake til for lokka.
+            { 
                 
-                if(blink[i]==0 && led[i]==0) // Hvis det globale arrayet blink[i] og led[i] er av gå inn.
+                if(blink[i]==0 && led[i]==0) // globale arrayet blink[i] og led[i] er av så...
                 {
-                    if(i==0) { led[i]=1; }     // Dersom i=0 sett led[i] på. 
-                    else if(i==1) { led[i]=1; }// Dersom i=1 sett led[i] på.
-                    else if(i==2) { led[i]=1; }// Dersom i=2 sett led[i] på.
-                    else if(i==3) { led[i]=1; }// Dersom i=3 sett led[i] på.
+                    if(i==0) { led[i]=1; }     //  i=0 sett led[i] på. 
+                    else if(i==1) { led[i]=1; }//  i=1 sett led[i] på.
+                    else if(i==2) { led[i]=1; }//  i=2 sett led[i] på.
+                    else if(i==3) { led[i]=1; }//  i=3 sett led[i] på.
                 }
-                break;// Ferdig med hva som er blitt bedt av den og avlutter case 1 går tilbake til for løkken.
+                break;
             }
             case 2: 
             {
-                // Dersom denne verdien er 2 gå inn her og utfør dette også gå ut av case 2 tilbake til for løkken.
-                blink[i]=1;// Blink[i] får verdien 1 og led[i] begynner å blinke.
+                
+                blink[i]=1;
                 if(b[i+i]==0) 
                 {
-                    FILE *fp = fopen("/local/SYSTEMLOG.txt", "a");// File blir peket til fp og fp blir åpnet for skriving.
-                    fprintf(fp, "\r\n Brudd i R1 i Sloyfe %d:  %s", i+1, ctime(&seconds));//Kun en beskjed som blir loggført med klokketid.
-                    fclose(fp);//Stenger filen fp.
+                    FILE *fp = fopen("/local/SYSTEMLOG.txt", "a");
+                    fprintf(fp, "\r\n Brudd i R1 i Sloyfe %d:  %s", i+1, ctime(&seconds));
+                    fclose(fp);
                     b[i+i]=1;// Led på bargraf med element nr i+i blir satt til en for å indikere feil på R1 i denne sløyfen. Partall, altså b0, b2, b4 og b6.
                 }
                 break;//  Ferdig med hva som er blitt bedt av den og avlutter case 2 går tilbake til for løkken.