Index: branch/toribio/Emb_App.tws
===================================================================
--- branch/toribio/Emb_App.tws	(revision 369)
+++ branch/toribio/Emb_App.tws	(revision 370)
@@ -14,12 +14,12 @@
 "E:\tp_info6_2018_toribio\tp_info6\Emb_App\Debug\mr308.inc" 
 "E:\tp_info6_2018_toribio\tp_info6\Emb_App\programme_principal_etud.c" 
 [WORKSPACE_FILE_STATES]
-"E:\tp_info6_2018_toribio\tp_info6\Emb_App\Debug\mr308.inc" 50 50 1430 351 0 2 
-"E:\tp_info6_2018_toribio\tp_info6\Emb_App\conf_noyau.cfg" 75 75 1430 351 0 3 
-"E:\tp_info6_2018_toribio\tp_info6\Emb_App\crt0mr.a30" 25 25 1430 351 0 1 
+"E:\tp_info6_2018_toribio\tp_info6\Emb_App\Debug\mr308.inc" 50 50 1430 351 0 3 
+"E:\tp_info6_2018_toribio\tp_info6\Emb_App\conf_noyau.cfg" 75 75 1430 351 0 1 
+"E:\tp_info6_2018_toribio\tp_info6\Emb_App\crt0mr.a30" 25 25 1430 351 0 2 
 "E:\tp_info6_2018_toribio\tp_info6\Emb_App\programme_principal_etud.c" -8 -30 1596 539 1 0 
-"E:\tp_info6_2018_toribio\tp_info6\bsp\periph.c" 100 100 1430 351 0 4 
-"E:\tp_info6_2018_toribio\tp_info6\bsp\uart0.c" 125 125 1430 351 0 5 
+"E:\tp_info6_2018_toribio\tp_info6\bsp\periph.c" 100 100 1430 351 0 5 
+"E:\tp_info6_2018_toribio\tp_info6\bsp\uart0.c" 75 75 1430 351 0 4 
 [LOADED_PROJECTS]
 "EmbM32C87App" 
 [END]
Index: branch/toribio/Emb_App/programme_principal_etud.c
===================================================================
--- branch/toribio/Emb_App/programme_principal_etud.c	(revision 369)
+++ branch/toribio/Emb_App/programme_principal_etud.c	(revision 370)
@@ -151,7 +151,7 @@
 		comm.data.rtr=0; //indique une écriture
 		comm.data.val=k*(450/*ou ad00*/-alpha);
 		snd_dtq(CanTx, comm.msg);
-		dly_tsk(5);
+		dly_tsk(15);
 	}
 	
 }
@@ -169,7 +169,7 @@
 		//Attente de la réponse
 		wai_flg (ev_periph, 0x02, TWF_ANDW, &flag);
 		distance=periph[ADDR('U')].val;
-		dly_tsk(5);
+		dly_tsk(15);
 	}
 	
 }
@@ -180,7 +180,7 @@
 		//lecture de la position de la roue
 		CanFrame req,comm;
 		UINT flag;
-		if ((sauter==0) && (noir!=1)){
+		if ((sauter==0) && (noir==0)){
 			//Commande de l'angle de roue en zone normal
 			comm.data.id='D';
 			comm.data.rtr=0; //indique une écriture
@@ -189,7 +189,7 @@
 			snd_dtq(CanTx, comm.msg);
 			dly_tsk(5);	
 		}
-		if ((sauter==3) && (noir!=1)){
+		else if ((sauter==3)){
 			//Commande de l'angle de roue en zone normal
 			comm.data.id='D';
 			comm.data.rtr=0; //indique une écriture
@@ -208,7 +208,7 @@
 			snd_dtq(CanTx, comm.msg);
 			dly_tsk(5);	
 		}
- 		else if ((sauter==1) || (noir==2)){
+ 		else if ((sauter==1)){
 			//Commande de l'angle de roue
 			comm.data.id='D';
 			comm.data.rtr=0; //indique une écriture
@@ -218,18 +218,87 @@
 			dly_tsk(5);	
 		}
 		else if ((sauter==0) && (noir==1)){
-		//Commande de l'angle de roue
-			
+		//Zone des tonneaux
 			comm.data.id='D';
 			comm.data.rtr=0; //indique une écriture
-			if (distance<600) comm.data.val=0;
-			else if (distance>600) { 
-				if (distance>2000);
-				else comm.data.val=k*(distance-900);
-			}
+		    comm.data.val=0;
 			snd_dtq(CanTx, comm.msg);
 			dly_tsk(5);	
 		}
+		
+		else if ((sauter==0) && (noir==2)){
+			comm.data.id='D';//zone de passage avant pont piste noire
+			comm.data.rtr=0;
+			k=1;
+			if (distance>2000);
+			else comm.data.val=k*(distance-300);
+			snd_dtq(CanTx, comm.msg);
+			dly_tsk(5);			
+		}
+		else if ((sauter==0) && (noir==3)){
+			comm.data.id='D';//zone de passage avant pont piste noire
+			comm.data.rtr=0;
+			k=1;
+			if (distance>2000);
+			else comm.data.val=k*(distance-250);
+			snd_dtq(CanTx, comm.msg);
+			dly_tsk(5);			
+		}
+		else if ((sauter==0) && (noir==4)){
+			comm.data.id='D';//zone de passage du pont piste noire
+			comm.data.rtr=0;
+			k=1;
+			if (distance>2000);
+			else comm.data.val=k*(distance-150);
+			snd_dtq(CanTx, comm.msg);
+			dly_tsk(5);			
+		}
+		else if ((sauter==0) && (noir==5)){
+			comm.data.id='D';//zone après passage du pont piste noire
+			comm.data.rtr=0;
+			k=2;
+			if (distance>2000);
+			else comm.data.val=k*(distance-700);
+			snd_dtq(CanTx, comm.msg);
+			dly_tsk(5);			
+		}
+		else if ((sauter==0) && (noir==6)){
+			comm.data.id='D';//zone saut piste noire
+			comm.data.rtr=0;
+			comm.data.val=0;
+			snd_dtq(CanTx, comm.msg);
+			dly_tsk(5);			
+		}
+		else if ((sauter==0) && (noir==7)){
+			comm.data.id='D';//zone après passage du pont piste noire
+			comm.data.rtr=0;
+			k=2;
+			if (distance>2000);
+			else comm.data.val=k*(distance-700);
+			snd_dtq(CanTx, comm.msg);
+			dly_tsk(5);			
+		}
+		else if ((sauter==0) && (noir==8)){
+			comm.data.id='D';//zone en herbe du pont piste noire
+			comm.data.rtr=0;
+			k=2;
+			if (distance>2000);
+			else comm.data.val=k*(distance-700);
+			snd_dtq(CanTx, comm.msg);
+			dly_tsk(5);			
+		}
+		else if ((sauter==0) && (noir==9)){
+			comm.data.id='D';//dernier virage piste noire
+			comm.data.rtr=0;
+			k=2;
+			if (distance>2000);
+			else comm.data.val=k*(distance-700);
+			snd_dtq(CanTx, comm.msg);
+			dly_tsk(5);			
+		}
+		snd_dtq(CanTx, comm.msg);
+		dly_tsk(5);	
+		
 	}
 }
 
@@ -240,7 +309,11 @@
 	while(1){
 		requete.data.id='V';
 		requete.data.rtr=0;
-		if (sauter==1){   //augmentation de la vitesse pour sauter
+		
+		if (p0_4==0){ //appuie sur bouton
+		requete.data.val=0;
+		}
+		else if (sauter==1){   //augmentation de la vitesse pour sauter
 			requete.data.val=45;
 			}
 		else if ((sauter==0) && (noir==0)){
@@ -250,7 +323,24 @@
 		else if ((sauter==3) && (noir==0)){
 			requete.data.val=20;} //virage 
 		else if ((sauter==0) && (noir==1)){
-			requete.data.val=10;} //zone des tonneaux
+			requete.data.val=20; //zone des tonneaux
+		}
+		else if ((sauter==0) && (noir==2)){
+			requete.data.val=10;} //zone avant pont
+		else if ((sauter==0) && (noir==3)){
+			requete.data.val=10;} //zone avant pont
+		else if ((sauter==0) && (noir==4)){
+			requete.data.val=10;} //zone du pont
+		else if ((sauter==0) && (noir==5)){
+			requete.data.val=12;} //zone après pont
+		else if ((sauter==0) && (noir==6)){
+			requete.data.val=43;} //zone saut noir
+		else if ((sauter==0) && (noir==7)){
+			requete.data.val=12;} //zone apres saut noir
+		else if ((sauter==0) && (noir==8)){
+			requete.data.val=12;} //zone en herbe
+		else if ((sauter==0) && (noir==9)){
+			requete.data.val=12;} //dernier virage piste noir
 		snd_dtq(CanTx, requete.msg);
 		dly_tsk(5);
 	}
@@ -274,7 +364,7 @@
 		virage=periph[ADDR('C')].val;
 		numcapt=virage & 0x00ff;
 		virage=virage & 0xff00;
-		dly_tsk(5);
+		dly_tsk(10);
 	}
 }
 
@@ -303,17 +393,45 @@
 	while(1){
 		
 	   if ((numcapt==2) && (virage==22016)){
-			noir=2; //zone de passage 
+			noir=4; //zone de passage du pont
 		}
-		else if (numcapt==1 && virage==22016){
+		else if ((numcapt==1) && (virage==18944)){
+			noir=3; //zone de virage passage du pont
+			//LED_R=1;
+		}
+		else if ((numcapt==4) && (virage==17152)){
+			noir=9; // dernier virage
+			dly_tsk(5);
+		}
+		else if ((numcapt==4) && (virage==22016)){
+			noir=8; // on a passe la zone en herbe	
+			dly_tsk(5);
+		} 
+		else if ((numcapt==3) && (virage==16896)){
+			noir=7; // on a passe le saut	
+			dly_tsk(5);
+		} 
+		else if ((numcapt==3) && (virage==22016)){
+			dly_tsk(5000);
+			noir=6; // on passe le saut	
+			dly_tsk(2000);
+			noir=5;
+			dly_tsk(3000);
+		} 
+		else if ((numcapt==2) && (virage==20992)){
+			noir=5; // on a passé le pont	
+		} 
+		else if ((numcapt==1) && (virage==22016)){
 			noir=1; // on passe les toneaux	
-			} 
+			dly_tsk(3500);
+			noir=2; //on passe par la droite du dernier tonneau
+			dly_tsk(7500);
+		} 	 	
 		else if (numcapt!=2 && virage!=22016){
 			noir=0; // retour à la regulation normal
-			}
+		}
 		dly_tsk(5);
-	}
-	
+	}	
 }
 
 
@@ -337,10 +455,10 @@
 	sta_tsk(ID_dist);
 	sta_tsk(ID_roue);
 	sta_tsk(ID_zone);
-	sta_tsk(ID_saut);
+//	sta_tsk(ID_saut);
 	sta_tsk(ID_pistenoire);
 	
-    while(1)
+   while(1)
     {
 		
 	/*	LED_J=1;
Index: branch/toribio/Emb_App/conf_noyau.cfg
===================================================================
--- branch/toribio/Emb_App/conf_noyau.cfg	(revision 369)
+++ branch/toribio/Emb_App/conf_noyau.cfg	(revision 370)
@@ -115,7 +115,7 @@
 	name	= ID_pistenoire;
 	stack_size	= 512;
 	stack_section	= stack;
-	priority	= 6;
+	priority	= 5;
 	initial_start	= OFF;
 	exinf	= 0x0;
 	
