programme course avec menu amélioré

Dependencies:   MMA8451Q mbed

Fork of Programme_course_vir_am_2 by Freescale_Cachan

Revision:
2:a37de5eb8bf3
Parent:
1:000a03402c6e
Child:
4:8b0215ec788f
diff -r 000a03402c6e -r a37de5eb8bf3 traitement_image.cpp
--- a/traitement_image.cpp	Wed Feb 01 13:41:24 2017 +0000
+++ b/traitement_image.cpp	Fri Mar 17 14:18:04 2017 +0000
@@ -7,8 +7,8 @@
     unsigned char i;
     signed short save_a;
     signed short save_b;
+    
     int tempo = 0;
-    char mem_a, mem_b;
     char tab[3];
     char tab2[3];
     mem_a = 100;
@@ -51,20 +51,25 @@
         }
     }
     
-
-    if (mem_b == 100 && mem_a == 100)
+    Interval[0] = mem_a+mem_b;
+    if (mem_b == 100 && mem_a == 100)  // pas de ligne
     {
         baricentre = 0;
     }
-    else if (mem_b == 100)
+    else if (mem_b == 100)   //pas de ligne à gauche
     {
         //baricentre = (mem_a-MARGE_DISTANCE_LIGNE);
-        baricentre = (64-mem_a);
+        if(mem_a>25){
+            baricentre = (64-mem_a);
+        }
     }
-    else if (mem_a == 100)
+    else if (mem_a == 100)     // pas de ligne à droite
     {
         //baricentre = (MARGE_DISTANCE_LIGNE-mem_b);
-        baricentre = (64-mem_b);
+        if(mem_b>25){
+            baricentre = (64-mem_b);
+        }
+        
     }
     else
     {
@@ -150,6 +155,7 @@
     bari_bis = middle_3U(bary_tab_bis);//On calcul la médianne des 3 derniers bari
     integral += bari_bis;
     new_bari = (KI*integral+KP*bari_bis+KD*(bari_bis-last_bari))/1000;//On applique un KP et un KD (proportionnel et dérivé) au bari
+    //pc.printf("%d  ",new_bari);
     last_bari = bari_bis;
     
     led4 = ralentire;