Read the teperature from the sensor. Show the results on the seriel port using 4 variables, Max_temp, Min_Temp, Avg_Temp and the temperature. Every day of use the values will reset

Dependencies:   LM61 TMP36 mbed

main.cpp

Committer:
mabenim
Date:
2016-04-09
Revision:
5:9b4c978eb424
Parent:
4:849a3ee29a49

File content as of revision 5:9b4c978eb424:

#include "mbed.h"
Serial pc(SERIAL_TX, SERIAL_RX);
AnalogIn analog_value(A2);


int main()
{
    float Temperatura;
    float voltage;
    float Temperatura_max;
    float Temperatura_min;
    float Temperatura_media;
    float Temperatura_acumulada;
    int contador;
    int contador_max;
    int frecuencia;

    printf("\Ejemplo temperatura\n");
    frecuencia=60;
    contador_max=60*60*24/frecuencia;
    contador=0;
    Temperatura_max=-100;
    Temperatura_min=100;
    Temperatura_acumulada=0;
    while(contador<=contador_max) {
        contador=contador+1;
        voltage=analog_value.read()*3.3;
        Temperatura=(voltage-0.5)*100;
        if(contador<=contador_max) {
            Temperatura_acumulada=Temperatura_acumulada+Temperatura;
            Temperatura_media=Temperatura_acumulada/contador;
        }
        if (Temperatura>Temperatura_max) {
            Temperatura_max=Temperatura;
        }
        if (Temperatura<Temperatura_min) {
            Temperatura_min=Temperatura;
        }
        pc.printf("Voltage %.5f V\n", voltage);
        pc.printf("Temperatura = %.2f C\n", Temperatura);
        pc.printf("Temperatura maxima = %.2f C\n", Temperatura_max);
        pc.printf("Temperatura minima = %.2f C\n", Temperatura_min);
        pc.printf("Temperatura media = %.2f C\n", Temperatura_media);
        wait(frecuencia);
    }
}