Permet de lire l'anemometre Velleman WS1080 et de stocker la vitesse du vent en m/s dans une variable publique.

Dependents:   AnemometreWs1080_lecture

Revision:
0:21a4e1337957
Child:
1:b3876c120339
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/AnemoWS1080.cpp	Mon May 20 04:44:20 2019 +0000
@@ -0,0 +1,31 @@
+#include "AnemoWS1080.h"
+#include "mbed.h"
+
+
+//Il faut faire un étalonage dés que l'on change d'environement
+//Si un étalonage n'est pas possible, il peut-être aproximer à 1
+AnemoWS1080::AnemoWS1080(PinName digital_pin, float coeff_etalon):anemo(digital_pin)
+{
+    coef_etalon = coeff_etalon;
+}
+
+// AnemoWS1080/WS
+bool AnemoWS1080::read(){
+    
+    unsigned int compteur=0;
+    float tours_seconde=0;
+    t.start();
+        
+    while(t.read()<float(TEMPS_DE_MESURE)){
+        if(anemo){
+            compteur++;
+            while(anemo && t.read()<float(TEMPS_DE_MESURE));
+        }
+    }
+    
+    tours_seconde = (float(compteur)/3.0f)/TEMPS_DE_MESURE;
+    vitesse = tours_seconde*2.0f*PI*coef_etalon*R_HELICE;
+
+    t.reset();
+    return true;
+}