Mesure sur 1 seconde avec moyenneage
Dependencies: mbed
main.cpp
- Committer:
- the420team
- Date:
- 2018-05-22
- Revision:
- 0:14c42a61cdb2
File content as of revision 0:14c42a61cdb2:
#include "mbed.h" Serial pc (USBTX, USBRX); AnalogIn ain(p17); DigitalOut led(p7); float f ; float silence = 1.1 ; float max = 1.7 ; int niveau = 0 ; int tableau [100]; int i; int k; int moyenne = 0; char c ; void acquisition() { f=3.3*ain.read(); niveau = 100* (f-silence)/max ; tableau[k]= niveau ; k++ ; if (k ==100) {k =0 ;} } int moyAboiement() {int somme = 0 ; int moyenne = 0 ; for (i=0;i<100; i++) { somme = somme + tableau[i]; } moyenne = somme /100 ; return moyenne ; } int main() { Ticker horloge; horloge.attach(&acquisition, 0.01); while(1) { printf("\nSaisir A pour connaitre niveau aboiement \n\r"); c = pc.getc() ; if (c=='A') {moyenne = moyAboiement() ; printf("Niveau aboiement sur 1s = %d \n\r", moyenne ); } } }