utilisation des entrees analogiques + entree digitale

Dependencies:   BSP_B-L475E-IOT01 mbed

Fork of DISCO_L475VG_IOT01-QSPI-BSP by ST

main.cpp

Committer:
msouchet
Date:
2018-01-22
Revision:
4:48fd4b00cfce
Parent:
1:91efecd390b4
Child:
5:91752c00a470

File content as of revision 4:48fd4b00cfce:

#include "mbed.h"

DigitalOut led1(LED1);
AnalogIn Temperature_entree(A0);
AnalogIn Temperature_sortie(A1);
InterruptIn Compteur_elec(D7);
Timer Chronometre;

unsigned short sensor_value;
bool temps_valide = false;
bool Chronometre_alume = false;
float temps_mesure = 0.0;
float temps_debut = 0.0;
float temps_fin = 0.0;


void Mesure_nrj() {
    if (Chronometre_alume) {
        temps_mesure = Chronometre.read();
        Chronometre.reset();  
        temps_valide = true;
    } else { 
        Chronometre.reset(); 
        Chronometre_alume = true;
        temps_valide = false;
    }
}


int main()
{
    Chronometre.start();
    Compteur_elec.rise(&Mesure_nrj); 
    while(1) {
        led1 = !led1;
        sensor_value = Temperature_entree.read_u16();
        printf("\nTEMPERATURE A0 = %d \n", sensor_value);
        
        sensor_value = Temperature_sortie.read_u16();
        printf("\nTEMPERATURE A1 = %d \n", sensor_value);
        
        if (temps_valide) { printf("\nTemps entre deux impulsions (s) = %f \n", temps_mesure); 
                            temps_valide = false; }
        wait(1.0);
    }
}