utilisation des entrees analogiques + entree digitale
Dependencies: BSP_B-L475E-IOT01 mbed
Fork of DISCO_L475VG_IOT01-QSPI-BSP by
Diff: main.cpp
- Revision:
- 4:48fd4b00cfce
- Parent:
- 1:91efecd390b4
- Child:
- 5:91752c00a470
--- a/main.cpp Fri Jul 07 07:14:48 2017 +0000 +++ b/main.cpp Mon Jan 22 09:08:33 2018 +0000 @@ -1,16 +1,46 @@ #include "mbed.h" DigitalOut led1(LED1); +AnalogIn Temperature_entree(A0); +AnalogIn Temperature_sortie(A1); +InterruptIn Compteur_elec(D7); +Timer Chronometre; -void QSPI_demo(void); -void QSPI_MemoryMapped_demo(void); +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() { - QSPI_demo(); - QSPI_MemoryMapped_demo(); + 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); } }