TP4_exo1

Dependencies:   mbed

Files at this revision

API Documentation at this revision

Comitter:
mbedo
Date:
Thu Oct 23 12:17:14 2014 +0000
Commit message:
TP4_exo1

Changed in this revision

Position_Moteur.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
diff -r 000000000000 -r 762600c500ae Position_Moteur.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Position_Moteur.cpp	Thu Oct 23 12:17:14 2014 +0000
@@ -0,0 +1,33 @@
+#include "mbed.h"
+
+Serial pc(USBTX, USBRX); // On initialise la liaison série
+
+InterruptIn codeurA(p9); // On utilise un InterruptIn car on veut détecter les fronts montatns du signal du codeur A
+DigitalIn codeurB(p24); // On utilise un DigitalIn car on veut récuperer la valeur du signal du codeur B
+int compteur=0;
+
+void incream()  // On défini une fonction incream qui incrémente positivement lorsque la valeur du codeur B vaut 1
+{               // et négativement lorqu'elle vaut 0
+    if(codeurB==0) {
+        compteur=compteur-1;
+    }
+    if(codeurB==1) {
+        compteur=compteur+1;
+    }
+    if(compteur>499) {      // On filtre la valeur du compteur pour qu'elle soit comprise entre 0 et 499
+        compteur=0;
+    }
+    if(compteur<0) {
+        compteur=499;
+    }
+}
+int main()
+{
+
+    while(1) {
+
+        codeurA.rise(&incream);  // A chaque front montant la fonction incream incrémente ou decrémente la valeur position
+        pc.printf("Position : %d    \r", compteur);    // et l'affiche sur la liaison série
+        wait(0.1);
+    }
+}
\ No newline at end of file
diff -r 000000000000 -r 762600c500ae mbed.bld
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Thu Oct 23 12:17:14 2014 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed/builds/552587b429a1
\ No newline at end of file