ESTE PROGRAMA VA A CONTROLAR LAS VARIABLES DE HUMEDAD Y TEMPERATURA SET POINT POR EL USUARIO A TRAVES DE UNA INTERFAZ

Dependencies:   mbed TextLCD Keypad DS1307 DHT11

Revision:
3:65184d2ffad8
Parent:
2:0edb81388d5f
--- a/main.cpp	Sun Feb 16 18:25:15 2020 +0000
+++ b/main.cpp	Mon Feb 17 13:38:12 2020 +0000
@@ -1,23 +1,22 @@
-////////////////////////////////// LIBRERIAS DEL PROYECTO/////////////////////////////////////////////
+////////////////////////////////// LIBRERIAS DEL PROYECTO///////////////////////////////////////////////////////
 #include "mbed.h"// libreria principal mbed
 #include "TextLCD.h"// libreria lcd
 #include "Keypad.h"// libreria Keypad
 #include "DHT11.h"// libreria sensor de humedad y temperatura
-//include "clase.h"
-#include "math.h"
-#include "ds1307.h"
-//////////////////////////////////////////////////////////////////////////////////////////////////////
-/////////////////////////////////  CONFIGURACION DE  GPIO ////////////////////////////////////////////
-Serial pc(PA_2,PA_3);
+#include "math.h"// libreria matematicas
+#include "ds1307.h"// libreria rtc ds1307
+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+/////////////////////////////////  CONFIGURACION DE  GPIO ///////////////////////////////////////////////////////
+Serial pc(PA_2,PA_3);// configuracion de pines de Tx,Rx de comunicacion serial 
 DigitalOut myled(PD_13);// configura salida digital y asigna a myled al pin d13
 TextLCD lcd(PB_7,PB_8,PB_15,PB_14,PB_13,PB_12,TextLCD:: LCD16x2);// configuracion de conexion de lcd
-Keypad  teclado(PC_8,PC_11,PC_7,PC_6,PB_0,PD_6,PD_7,PB_3);
-DHT11 dato(PC_5);
-DS1307 my1307(PB_7,PB_8);
-Ticker flipper1;
-Ticker flipper2;
-/////////////////////////////////////////////////////////////////////////////////////////////////////
-//////////////////////////     DECLARACION DE VARIABLES GLOBALES ////////////////////////////////////
+Keypad  teclado(PC_8,PC_11,PC_7,PC_6,PB_0,PD_6,PD_7,PB_3);//configuraciones de pines de teclado
+DHT11 dato(PC_5);// configuracion de pin de data sensor 
+DS1307 my1307(PB_7,PB_8);// configuracion de pines de comunicacion I2C(sda,scl)
+Ticker flipper1;// configuracion de funcion ticker(interrupcion) 
+Ticker flipper2;// configuracion de funcion ticker(interrupcion)  
+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+//////////////////////////     DECLARACION DE VARIABLES GLOBALES ////////////////////////////////////////////////
 int rtc=0;
 int sec=0;
 int mins=0;
@@ -28,32 +27,23 @@
 int year=0;
 int muestreo;
 int z;
-char key;
-int released;
+char key;// variable usada en el teclado 
+int released;// variable usada en el teclado 
 int s; // variable usada en rutina sensor 
-int temp;
-int temp1;
-int hum;
-int avrtemp;
-int avrhum;
-int conteo;
+int temp;//
+int temp1;//
+int hum;//
+int avrtemp;//
+int avrhum;//
+int conteo;//
 //////////////////////////////Declaracion de funciones///////////////////////////////////////////////////////////
-
 void test_rw(int test);
+void lecturads1307();
 
 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////// SUB-RUTina lectura DS1307/////////////////////////////////////////////
  void lecturads1307(){
-      // test_rw(my1307.gettime(&sec,&mins,&hours,&day,&date,&month,&year));
        my1307.gettime(&sec,&mins,&hours,&day,&date,&month,&year);
-       /*pc.printf("seconds  set are %.2D \n\r",sec);
-       pc.printf("minutes  set are %.2D\n\r",mins);
-       pc.printf("hours  set are %.2D\n\r",hours);
-       pc.printf("day  set are %.2D\n\r",day);
-       pc.printf("date  set are %.2D\n\r",date);
-       pc.printf("month  set are %.2D\n\r",month);
-       pc.printf("year  set are %.2D\n\r",year);
-       wait(1);*/
        pc.printf("DATE:\r"); 
        pc.printf("%.2D",day);
        pc.printf(":%.2D",month);
@@ -62,27 +52,21 @@
        pc.printf(":%.2D",mins);
        pc.printf(":%.2D\n\r",sec);
        }  
-//////////////////////////////////////////////////////////////////////////////////////////////////////  
+////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
 ////////////////////////////////////////// SUB-RUTina INTERRUPCION2/////////////////////////////////////////////
 void flip2(){
        conteo=conteo + 1;
        temp1=dato.readTemperature();
        muestreo=muestreo+temp1;
-   
-    
-   
     if (conteo==1000){
         avrtemp=(muestreo/conteo) ;
         pc.printf("*PROMEDIO DE TEMPERATURA: \r");  
         pc.printf("%2d C \r ",avrtemp); 
         conteo=0;
         }
-    
 }
 
-
-/////////////////////////////////////////////////////////////////////////////////////////////////////////////
-
+////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////// SUB-RUTina INTERRUPCION1/////////////////////////////////////////////
 void flip1(){
     
@@ -97,19 +81,15 @@
        pc.printf(":%.2D",mins);
        pc.printf(":%.2D\n\r",sec);
        pc.printf("**********FIN DE REGISTRO DE DATOS**********\n\r");    
-       
-    
-    
+           
 }
-
-
-/////////////////////////////////////////////////////////////////////////////////////////////////////////////
+//////////////////////////////////////////////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////// SUB-RUTina test DS1307/////////////////////////////////////////////
  void test_rw(int test){
         if(test==0) pc.printf("Last R/W operation passed\n\r");
         else pc.printf("Last R/W operation failed\n\r");
        }  
-//////////////////////////////////////////////////////////////////////////////////////////////////////  
+//////////////////////////////////////////////////////////////////////////////////////////////////////////////  
 ///////////////////////// SUB-RUTina DS1307 calibracion de tiempo/////////////////////////////////////////////
      void DS1307RTC(){
        int junk=0;
@@ -152,8 +132,8 @@
             //}          
     }
           
-/////////////////////////////////////////////////////////////////////////////////////////////////////// 
-////////////////////////////////////////// SUB-RUTina keypad/////////////////////////////////////////////
+////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+////////////////////////////////////////// SUB-RUTina keypad////////////////////////////////////////////////////
      void keypad1(){
       // while(1){
         key=teclado.ReadKey();
@@ -166,7 +146,7 @@
             //}          
     }
           
-/////////////////////////////////////////////////////////////////////////////////////////////////////// 
+////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////// SUB-RUTina SENSORE DHT11/////////////////////////////////////////////
      void sensor(){
         s=dato.readData();
@@ -176,32 +156,26 @@
         else{
            lcd.cls();
            return;
-         
-            
         }
         pc.printf("Temperatura:%d C \r ",dato.readTemperature());
        //lcd.locate(0,1);
        //lcd.printf( "Hr:%d hr SP: 75 ",dato.readHumidity());
        pc.printf("Humedad:%d Hr \r ",dato.readHumidity());
-       
-        
     }
           
-/////////////////////////////////////////////////////////////////////////////////////////////////////// 
-////////////////////////////////////////// SUB-RUTINA MENU/////////////////////////////////////////////
+////////////////////////////////////////////////////////////////////////////////////////////////////////////// 
+////////////////////////////////////////// SUB-RUTINA MENU///////////////////////////////////////////////////
  void menu(){
       //char tr;
       while(1){
         key=teclado.ReadKey();  
         keypad1();
-        
         if(key=='D' ){
         lcd.cls();
         return;
         }
         //tr=key;
-        //void inicial();
-         
+        //void inicial(); 
         lcd.locate(0,0);// LOCALIZA INICIO DE TEXTO EN COLUMNAS  Y FILAS
         lcd.printf( "      Menu  " );
         lcd.locate(0,1);
@@ -230,9 +204,7 @@
          //}
          
        sensor();
-       lecturads1307();
-      
-           
+       lecturads1307();    
        //temp:dato.readTemperature();
        //hum: dato.readHumidity();   
        //lcd.locate(0,0);                   // LOCALIZA INICIO DE TEXTO EN COLUMNAS  Y FILAS