Michiel Berckvens / Mbed 2 deprecated ProjectHTTP

Dependencies:   DS1307 TextLCD mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"                                                                   //Invoegen van de mbed bibliotheek.
00002 #include "TextLCD.h"                                                                //Invoegen van de LCD bibliotheek.
00003 #include "ds1307.h"                                                                 //Invoegen van de de1307 bibliotheek voor de CLK.
00004 #include "EthernetNetIf.h"                                                          //Invoegen van de ethernet bibliotheek.
00005 #include "HTTPServer.h"                                                             //Invoegen van de HTTP bibliotheek.
00006 #include "RPCFunction.h"                                                            //Invoegen van de RPC bibliotheek.
00007 ////////////////////////////////////////////////////////////////////////////////////
00008 TextLCD lcd(p21, p22, p23, p24, p27, p28);                                          //Instellen van de LCD pinnen. rs, e, d4-d7
00009 AnalogIn LM35_1(p19);                                                               //Analoge ingang voor eerste LM35 toewijzen op welke pin.
00010 AnalogIn LM35_2(p20);                                                               //Analoge ingang voor tweede LM35 toewijzen op welke pin.
00011 Serial pc(USBTX, USBRX);                                                            //Zorgen dat we een seriële communicatie tussen computer en MBED kunnen opzetten waardoor we de printf lijnen kunnen gaan uitlezen.
00012 DigitalOut LEDJE1  (p6);                                                            //Uitgang voor LED op breadboard voor chauffage aan/uit.
00013 DigitalOut LEDJE2  (p7);                                                            //Uitgang voor LED op breadboard voor chauffage aan/uit.
00014 InterruptIn knopHOGER(p8);                                                          //Aanmaken van ingangknop voor temperatuur hoger te kunnen instellen onder interrupt.
00015 InterruptIn knopLAGER(p30);                                                         //Aanmaken van ingangknop voor temperatuur lager te kunnen instellen onder interrupt.
00016 InterruptIn aanuitknop(p5);                                                         //Aanmaken van aan/uit knop voor het systeem op of af te zetten onder interrupt.
00017 DigitalOut relais(p29);                                                             //Aanmaken van een uitgangspin voor het aansturen van de Relais.
00018 PwmOut motorout(p25);                                                               //Aanmaken van PWM pin voor het aansturen van de servo-motor onder PWM.
00019 DS1307 my1307(p9,p10);                                                              //Opstarten van de DS1307 en de pinnen voor connectie mee geven.
00020 LocalFileSystem fs("webfs");                                                        //Instellingen voor HTTP
00021 LocalFileSystem local("local");                                                     //Instellingen voor HTTP, /local/Project.htm gaan we gebruiken, hierbij komt ons project lokaal te staan.
00022 ////////////////////////////////////////////////////////////////////////////////////
00023 int c=0;                                                                            //Aanmaken van de c variable voor HTTP, hierbij geven we deze variable de waarde 0 mee.
00024 float waarde = 25;                                                                  //Aanmaken van de waarde variable voor een instel temperatuur mee te geven.
00025 float temp2;                                                                        // Aanmaken van de temp2 variable, deze dient voor de temperatuur van de tweede LM35 in op te slaan.
00026 bool aanuit = 0;                                                                    //Aanmaken van een variable voor te kijken of het programma/MBED aan of uit staat.
00027 float temp1;                                                                        //Aanmaken van de temp1 variable, deze dient voor de temperatuur van de eerste LM35 in op te slaan.                                                                            // variable aanmaken voor temp van 1ste LM35 in te steken.                                                                            // variable aanmaken voor temp van 2de LM35 in te steken.
00028 float afronden;                                                                     //Aanmaken van de variable afronden, deze gaat dienen
00029 float hoekverdraaiing;                                                                       //Aanmaken van de variable graden, deze dient voor het weergeven van onze temperatuur waarde in °C
00030 float verschilgraden;
00031 float stand;
00032 float lijn;
00033 float counter;                                                                      //We gaan de variable counter aan maken voor het tellen van hoeveel keer we op hoger of lager hebben geduwd voor de ingestelde waarde te verhogen of verlagen.
00034 float flaginstellen = 0;                                                            //We gaan de variable flaginstellen aanmaken voor te gaan kijken of wij willen gaan instellen van de waardes of het programma willen uitvoeren.
00035 int sec = 0;                                                                        //We gaan de variable sec aanmaken zodat we de seconden kunnen instellen die er op ons LCD moet komen te staan.
00036 int minuten = 0;                                                                    //We gaan de variable minuten aanmaken zodat we de minuten kunnen instellen die er op ons LCD moet komen te staan.
00037 int hours = 0;                                                                      //We gaan de variable hours aanmaken zodat we de uren kunnen instellen die er op ons LCD moet komen te staan.
00038 int day = 0;                                                                        //We gaan de variable day aanmaken zodat we de dagen kunnen instellen die er op ons LCD moet komen te staan.
00039 int date = 0;                                                                       //We gaan de variable date aanmaken zodat we de datum kunnen instellen die er op ons LCD moet komen te staan.
00040 int month = 0;                                                                      //We gaan de variable month aanmaken zodat we de maanden kunnen instellen die er op ons LCD moet komen te staan.
00041 int year = 0;                                                                       //We gaan de variable year aanmaken zodat we de jaren kunnen instellen die er op ons LCD moet komen te staan.
00042 int junk = 0;
00043 ////////////////////////////////////////////////////////////////////////////////////
00044 DigitalOut led1(LED1, "led1");                                                      //We gaan een digitale uitgang aanroepen namelijk de eerste LED en geven deze de naam led1.
00045 ////////////////////////////////////////////////////////////////////////////////////
00046 /* HTTP Instellingen */
00047 EthernetNetIf eth(                                                                  //We gaan de functie van ethernet opendoen om hierin de gewenste adressen in te kunnen gaan voegen.
00048     IpAddr(192,168,1,2),                                                            //Ip adres toedienen waarop de MBED verbonden word.
00049     IpAddr(255,255,255,0),                                                          //Subnetmasker voor de MBED.
00050     IpAddr(192,168,1,1),                                                            //Het IP adres waarop we gaan schrijven.
00051     IpAddr(192,168,1,1));                                                           //Het IP adres waarvan we gaan lezen.
00052     HTTPServer svr;                                                                 // Opstarten van de HTTP server met de bovenliggende eigenschappen.
00053 /* END HTTP */
00054 ////////////////////////////////////////////////////////////////////////////////////
00055 void Hoger(void) {                                                                  //Interrupt voor de ingestelde waarde hoger te zetten a.d.h.v. een drukknop.
00056   flaginstellen = 1;                                                                //Vlag voor instellen op 1 zetten, door de vlag op 1 te zetten kunnen we gaan instellen ipv het programma te runnen.
00057   waarde += 0.5;                                                                    //De ingestelde waarde gaan we verhogen met 0.5°C.
00058   counter = 0;                                                                      //We gaan de counter terug op 0 zetten, waardoor we terug 0 keer hebben gedrukt op de verhoog knop.
00059   wait(0.5);                                                                        //We gaan 0.5 seconden wachten voordat we verder gaan zodat we zeker zijn dat er geen twee keer is gedrukt op de verhoog knop.
00060 }
00061 ////////////////////////////////////////////////////////////////////////////////////
00062 void Lager(void) {                                                                  //Interrupt voor de ingestelde waarde lager te zetten a.d.h.v. een drukknop.
00063   flaginstellen = 1;                                                                //Vlag voor instellen op 1 zetten, door de vlag op 1 te zetten kunnen we gaan instellen ipv het programma te runnen.
00064   waarde -= 0.5;                                                                    //De ingestelde waarde gaan we verlagen met 0.5°C.
00065   counter = 0;                                                                      //We gaan de counter terug op 0 zetten, waardoor we terug 0 keer hebben gedrukt op de verhoog knop.
00066   wait(0.5);                                                                        //We gaan 0.5 seconden wachten voordat we verder gaan zodat we zeker zijn dat er geen twee keer is gedrukt op de verhoog knop.
00067 }
00068 ////////////////////////////////////////////////////////////////////////////////////
00069 void AanUit(void) {                                                                 //Interrupt voor de aan/uit knop.
00070   if(aanuit == 0)                                                                   //Als de aanuit knop gelijk is aan gedrukt dan gaan we de volgende code uitvoeren.
00071   {  
00072     aanuit = 1;                                                                     //We gaan de variable aanuit terug op 1 zetten na het drukken van de knop, hierdoor doen we dit omdat anders we nooit de toestand van deze knop kunnen veranderen.
00073     lcd.cls();                                                                      //We gaan het LCD refreshen of m.a.w. het LCD leegmaken.
00074     lcd.printf("Opstarten...");                                                     //We gaan het op LCD de tekst met opstarten.... laten tonen om aan te geven dat we ons systeem hebben opgezet met het drukken op de aan/uit knop
00075     motorout = (90 * 0.000511 + 0.026);                                             //Motor op 90 graden zetten, dit is de begin toestand.
00076     temp1 = (LM35_1 * 3.22*100);                                                    // omvormen van analoge waarde naar graden celcius
00077     afronden = 2*temp1;                                                             //We gaan de temperatuur maal 2 doen.
00078     afronden = rint(afronden);                                                      //Hierna gaan we het getal afronden, door het getal te vermenigvuldigen met 2 kunnen we beter afronden.
00079     waarde = afronden/2;                                                            //Temperatuur afronden op 0.5graden
00080     wait(2);                                                                        //Hierna gaan we 2s wachten zodat de MBED alles juist kan instellen en zodat we op het LCD te zien krijgen dat ons programma opstart.
00081 }
00082    else                                                                             //Als de toestand van de variable gelijk is aan 0, dan voeren we de code van hieronder uit.
00083    {
00084     aanuit = 0;                                                                     //We gaan de variable terug op 0 instellen waardoor we terug de variable op 1 kunnen zetten indien we het programma terug willen opstarten.
00085     lcd.cls();                                                                      //We gaan het LCD refreshen of m.a.w. het LCD leegmaken.
00086     lcd.printf("Uitschakelen...");                                                  //We gaan het op LCD de tekst met uitschakelen.... laten tonen om aan te geven dat we ons systeem hebben uitgezet met het drukken op de aan/uit knop
00087     motorout = (90 * 0.000511 + 0.026);                                             //Motor op 90 graden zetten, dit is de begin toestand.
00088     wait(2);                                                                        //Hierna gaan we 2s wachten zodat de MBED alles juist kan instellen en zodat we op het LCD te zien krijgen dat ons programma opstart.
00089     }
00090 }
00091 ////////////////////////////////////////////////////////////////////////////////////      
00092 void temperatuurinlezen(void) {                                                     //Interrupt voor de temperatuur inlezen.
00093     temp1 = (LM35_1 * 3.22*100);                                                    // omvormen van analoge waarde naar graden celcius
00094     afronden = 2*temp1;                                                             //We gaan de temperatuur maal 2 doen.
00095     afronden = rint(afronden);                                                      //Hierna gaan we het getal afronden, door het getal te vermenigvuldigen met 2 kunnen we beter afronden.
00096     temp1 = afronden/2;                                                             //Temperatuur afronden op 0.5graden
00097     temp2 = (LM35_2 * 3.22*100);                                                    // omvormen van analoge waarde naar graden celcius                                                      
00098     afronden = 2*temp2;                                                             //We gaan de temperatuur maal 2 doen
00099     afronden = rint(afronden);                                                      //Hierna gaan we het getal afronden, door het getal te vermenigvuldigen met 2 kunnen we beter afronden.
00100     temp2 = afronden/2;                                                             //Temperatuur afronden op 0.5graden
00101 }      
00102 ////////////////////////////////////////////////////////////////////////////////////    
00103 void temperatuuruitsturen(void) {                                                   //Interrupt voor de temperatuur uitlezen.
00104    if(temp1 > (waarde + 1)) {                                                       //Als de waarde van de eerste LM35 hoger is als de ingestelde waarde
00105     LEDJE1 = 1;                                                                     // Lamp1 op breadboard aan "Groen".
00106     LEDJE2 = 0;                                                                     // Lamp2 op breadboard uit"Rood".
00107     lcd.cls();                                                                      //We gaan het LCD refreshen of m.a.w. het LCD leegmaken.
00108     lcd.printf("BIN: %5.2f C",temp1);                                               //Temperatuur binnen op LCD
00109     lcd.locate(0,1);                                                                //We gaan ons eigen op de juiste lijn van het LCD zetten, namelijk op de tweede lijn.
00110     lcd.printf("BUI: %5.2f C",temp2);                                               //Temperatuur buiten op LCD
00111     wait(0.3);                                                                      //Wachttijd                                                         
00112     relais = 0;                                                                     //We gaan de relais op 0 zetten waardoor deze uitschakelt en het bijhorend LEDJE gaat doven.
00113 }
00114    else if(temp1 <= (waarde - 1) ) {                                                //Als de waarde van de eerste LM35 lager is als de ingestelde waarde
00115     LEDJE1 = 0;                                                                     // Lamp1 op breadboard uit "Groen".
00116     LEDJE2 = 1;                                                                     // Lamp2 op breadboard aan "Rood".
00117     lcd.cls();                                                                      //We gaan het LCD refreshen of m.a.w. het LCD leegmaken.
00118     lcd.printf("BIN: %5.2f C",temp1);                                               //Temperatuur binnen op LCD
00119     lcd.locate(0,1);                                                                //We gaan ons eigen op de juiste lijn van het LCD zetten, namelijk op de tweede lijn.
00120     lcd.printf("BUI: %5.2f C",temp2);                                               //Temperatuur buiten op LCD
00121     wait(0.3);                                                                      //Wachttijd                                           
00122     relais = 1;                                                                     //We gaan de relais op 1 zetten waardoor deze inschakelt en het bijhorend LEDJE gaat aangaan.
00123    }
00124 }
00125 //////////////////////////////////////////////////////////////////////////////////// 
00126 void motor(float graden) {                                                          //Interrupt voor de toestand van de servo-motor.
00127    if ( (graden > 20) && (graden < 160) ) {                                         //Als de ingegeven graden groter is als de begin waarde en alsook kleiner is als de grootste waarde dan de code van hieronder uitoeren.
00128     motorout = (graden * 0.000511 + 0.026);                                         //We gaan de motor laten draaien naar de gewenste graden die afhankelijk is van het temperatuurverschil.
00129    }
00130    else if (graden >= 160){                                                         //Als het temperatuur verschil groter word als 160° dan gaan we de motor op zijn laatste positie namelijk 160° laten staan waardoor we zien dat we een maximaal temperatuurverschil hebben.
00131     motorout = (160 * 0.000511 + 0.026);                                            //Beveiliging => niet boven 160graden
00132    }
00133    else {
00134     motorout = (20 * 0.000511 + 0.026);                                             //Beveiliging => niet onder 20 graden
00135    }
00136    return;
00137 }
00138 ////////////////////////////////////////////////////////////////////////////////////    
00139 void initHTTP(void) {                                                               //Interrupt voor het HTTP protocol.
00140     printf("Start initialisatie HTTP\r\n");                                         //We gaan op het LCD schrijven dat we bezigz zijn met de intialisering van het LCD
00141     EthernetErr ethErr;                                                             //Error variabele aanmaken                                                      
00142     int count = 0;
00143     do {
00144         printf("Setting up %d...\n\r", ++count);
00145         ethErr = eth.setup();                                                       //Ethernet poort starten, variabele toekennen aan de setup
00146         if (ethErr) printf("Timeout\n\r", ethErr);                                  //Als er een fout is timeout geven
00147     } 
00148     while (ethErr != ETH_OK);                                                       //Zolang er geen fout is
00149     printf("Connected OK\n\r");
00150     const char* hwAddr = eth.getHwAddr();                                           //Adres krijgen
00151     IpAddr ethIp = eth.getIp();                                                     //Ip adres opvragen
00152     printf("IP address : %d.%d.%d.%d\n\r", ethIp[0], ethIp[1], ethIp[2], ethIp[3]);
00153     svr.addHandler<SimpleHandler>("/hello");                                        //HTTPS server request handler
00154     svr.addHandler<FSHandler>("");                                                  //Handler voor file weg te schrijven
00155     svr.bind(80);                                                                   //Server binden aan poort 80
00156     printf("Server listening\n\r");                                                 //Laten zien dat onze server luistert, waardoor we kunnen zenden van data.
00157 }
00158 ////////////////////////////////////////////////////////////////////////////////////    
00159 void klokophalen() {                                                                //Interrupt voor de tijd op ons LCD te krijgen.
00160     my1307.gettime(&sec, &minuten, &hours, &day, &date, &month, &year);             //De tijden van de klok ophalen en laten tonen op het LCD
00161 }
00162 ////////////////////////////////////////////////////////////////////////////////////     
00163 void klokuitsturen() {                                                              //Interrupt voor de CLK.
00164     klokophalen();                                                                  //De tijden van de klok ophalen
00165     lcd.cls();                                                                      //We gaan het LCD refreshen of m.a.w. het LCD leegmaken.kunt g
00166     lcd.locate(0,0);                                                                //Eerste lijn van het LCD
00167     lcd.printf("%d:%d:%d",hours,minuten,sec);                                       //Tijd op LCD zetten
00168     lcd.locate(0,1);                                                                //Tweede lijn van het LCD
00169     lcd.printf("%d/%d/%d",date,month,year);                                         //Datum op LCD zetten
00170 }
00171 ////////////////////////////////////////////////////////////////////////////////////
00172 void hoekverdraaiingbepalen(float verschilgraden,float temperatuurbuiten) {
00173 float startstand;
00174 
00175         //Bepalen op welke stand hij staat (Waar hij op de belastingslijn is)
00176                if (verschilgraden < -1.5) {
00177                 stand = -2;
00178                 }
00179             else if( (-1.5 <= verschilgraden) && (verschilgraden < -0.5) ){
00180                 stand = -1;
00181                 }
00182             else if (  (-0.5 <= verschilgraden) && (verschilgraden <= 0.5) ) {
00183                 stand = 0;
00184                 }
00185             else if ( (0.5 < verschilgraden) && (verschilgraden <= 1.5) ) {
00186                 stand = 1;
00187                 } 
00188             else {
00189                 stand = 2;
00190                 }
00191 
00192     //Bepalen van belastingslijn// 
00193     printf("Temperatuurbuiten: %f\n\r", temperatuurbuiten); 
00194     if ( temperatuurbuiten < 23 ){
00195         startstand = 125;           //Belastingslijn 1
00196         printf("Temperatuurbuiten is kleiner dan -5 graden.\r\n");   
00197         }
00198     else if ( (23 <= temperatuurbuiten) && (temperatuurbuiten <= 25) ){
00199         startstand = 90;            //Belastingslijn 2
00200         printf("Temperatuurbuiten is tussen -5 en 10 graden.\r\n"); 
00201         } 
00202     else {
00203         startstand = 55;            //Belastingslijn 3
00204         printf("Temperatuurbuiten is groter dan 10 graden.\r\n"); 
00205         }
00206 
00207     //Bepalen van graden//
00208     hoekverdraaiing = startstand + (stand * 35); 
00209     if (hoekverdraaiing > 160) { //Beveiliging
00210         hoekverdraaiing = 160;
00211         }
00212     else if (hoekverdraaiing < 20){ //Beveiliging
00213         hoekverdraaiing = 20;
00214         }
00215     
00216     }
00217 ////////////////////////////////////////////////////////////////////////////////////
00218 int main(void)
00219 {
00220     /* START INITIALISATIE */
00221     knopHOGER.rise(&Hoger);                                                         //Knop hoger instellen.
00222     knopLAGER.rise(&Lager);                                                         //Knop lager inestellen
00223     aanuitknop.rise(&AanUit);                                                       //Knop aan&uit instellen
00224     initHTTP();                                                                     //HTTP initialiseren
00225     Timer tm;                                                                       //Timer selecteren
00226     tm.start();                                                                     //Timer starten
00227     /* STOP INITIALISATIE */
00228     while(true) {                                                                   //While lus
00229     if( (aanuit == 1) && (flaginstellen == 0) ) {                                   //open if functie
00230         temperatuurinlezen();                                                       //Inlezen van temperatuur
00231         temperatuuruitsturen();                                                     //Uitsturen van temperatuur
00232         klokophalen();                                                              //Ophalen van de klok waarde voor datum en tijd
00233         /* START HTTP */    
00234         printf("Net poll start\r\n");                                               //Printen op de Computer voor Theratherm
00235         Net::poll();
00236         if (tm.read() > 0.5) {                                                      //Open IF functie
00237             led1 = !led1;                                                           //Led aan of uit sturen
00238             tm.start();                                                             //Start timer                                               
00239             c++;                                                                    //Optellen zodat om de 1s de gegevens worden doorgestuurd
00240             }
00241         printf("Net poll gedaan\r\n");
00242         if (c==1) {                                                                 //Als we gaan zenden dan gaan we de code van hieronder uitvoeren tijdens het zenden van de data.
00243             printf("Ik probeer nu de file te openen..\r\n"); 
00244             //FILE *fp = fopen("/webfs/mydata.htm","w");
00245             FILE *fp = fopen("/local/Project.htm", "w");                            // Open "Test.htm" on the local file system for writing
00246             printf("File geopend!\r\n");                                            //Print
00247             fprintf(fp,"<HTML>\r\n");                                               //HTML opstarten
00248             fprintf(fp,"<HEAD>\r\n");                                               //Head van het bestand open zetten.
00249             fprintf(fp,"<script type=\"text/javascript\">window.setTimeout(function(){ document.location.reload(true); }, 3000);</script>");//Script laden  
00250             fprintf(fp,"<link rel=\"stylesheet\" href=\"https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css\">");//Stijl van het document laden
00251             fprintf(fp,"<style>\r\n");//De style toepassen die is opgevraagd          
00252             fprintf(fp,"tbody {background:#FF6666;}");//Achtergrond veranderen van kleur
00253             fprintf(fp,"</style>\r\n");//De aangemaakt stijl terug sluiten
00254             fprintf(fp,"</HEAD>\r\n");//Sluiten van de HEAD
00255             fprintf(fp,"<BODY>\r\n");//Sluiten van de BODY
00256             /* TEST BOOTSTRAP */    
00257             fprintf(fp,"<div class=\"container\">\r\n");      
00258             fprintf(fp,"<div class=\"panel panel-success\">");
00259             fprintf(fp,"<div class=\"panel-heading\">%d:%d:%d     %d/%d/%d</div>",hours,minuten,sec,date,month,year);
00260             fprintf(fp,"<table class=\"table\">");//Aanmaken van tabel
00261             fprintf(fp,"<thead><tr><th>Temperatuur binnen</th><th>Temperatuur buiten</th></tr></thead>"); 
00262             fprintf(fp,"<tbody><tr><td>%.1f &deg;C</td>",temp1);//Kiezen waar we temp1 in de tabel gaan steken
00263             fprintf(fp,"<td>%.1f &deg;C</td></tr></tbody></table></div>",temp2);//Kiezen waar we temp2 in de tabel gaan steken.
00264             /* END TEST BOOTSTRAP */
00265             fprintf(fp,"</div>");
00266             printf("Variabelen printen\r\n");
00267             fprintf(fp,"</BODY>\r\n");
00268             fprintf(fp,"</HTML>\r\n");
00269             printf("Sessie stoppen \r\n"); 
00270             fclose(fp);//Stop schrijven
00271             printf("staat online\r\n"); 
00272             c=0;
00273            }
00274            /* EINDE HTTP */
00275         /* Motor sturing hier */
00276         verschilgraden = waarde - temp1;
00277         printf("Verschilgraden: %f\n\r", verschilgraden);
00278         hoekverdraaiingbepalen(verschilgraden,temp2);  
00279         printf("Stand: %f\n\r", stand);
00280         printf("Hoekverdraaiing: %f\n\r", hoekverdraaiing);   
00281         wait(1);                                                              
00282         motor(hoekverdraaiing);         //Motor aansturen               
00283         /* Stop motor sturing hier */
00284         } 
00285         else if( (aanuit == 1) && (flaginstellen == 1) ) {                          //open else if
00286             /* Programmatie instellen */
00287             printf("Programma instelmodus aan\r\n");
00288             while (counter <= 3) {
00289                 lcd.cls();                                                          //We gaan het LCD refreshen of m.a.w. het LCD leegmaken.
00290                 lcd.printf("BIN: %5.2f C",waarde);                                  //Printen van de binnen temp
00291                 lcd.locate(0,1);                                                    //Tweede lijn van LCD
00292                 lcd.printf("BUI: %5.2f C",temp2);                                   // Printen van de buiten temp
00293                 wait(0.8);                                                          //Wachttijd
00294                 lcd.cls();                                                          //We gaan het LCD refreshen of m.a.w. het LCD leegmaken.
00295                 lcd.printf("");                                                     //Lcd laten flikkeren voor instellen
00296                 lcd.locate(0,1);                                                    // Tweede lijn van het LCd
00297                 lcd.printf("BUI: %5.2f C",temp2);                                   //Printen van de buiten temp
00298                 wait(0.2);                                                          //Wachttijd
00299                 counter++;                                                          //Counter incrementeren met 1
00300             }
00301             flaginstellen = 0;                                                      //Instellen stoppen
00302         } 
00303         else {                                                                      //open else
00304             lcd.cls();                                                              //We gaan het LCD refreshen of m.a.w. het LCD leegmaken.
00305             klokuitsturen();                                                        //De waarde van de klok op de LCD zetten
00306             printf("Staat uit\r\n");
00307             }                                                                       //sluit else
00308     }  
00309 }