Index: branch/faye_awasemou/sp4a12/main.c
===================================================================
--- branch/faye_awasemou/sp4a12/main.c	(revision 393)
+++ branch/faye_awasemou/sp4a12/main.c	(revision 394)
@@ -14,48 +14,53 @@
                     "$GPVTG,99.4,T,,M,0.4,N,0.7,K*57",
                     "$GPZDA,141914.00,01,02,2006,00,00*69",
         0};
-int trame_cmp(char* trame, char* type)
+        //fonction qui permet de savoir si la trame commence par la chaine de caractere type(GPGGA)
+int trame_cmp(char* trame, char* type) //prise en paramete de la trame envoyée et du type
 {
-    int i;
-    int ok;
+    int i;//variable permettant de faire l'iteration du tableau de caractere trame et type(on parcoure l'intégralité du tableau)
+    int ok;//variable qui permet de retourner si la trame commence par le bon format(cad GPGGA) ou non
     ok=0|1;
-    for (i=0;i<4;i++)
+    for (i=0;i<4;i++)// on tient en compte des 5 caracteres du debut de la trame car ce sont eux qui permettent de caractériser le bon format de la trame
     {
-         if (trame[i+1]==type[i])
+         if (trame[i+1]==type[i])//on compare la trame recu et le type (GPGGA) en ignorant le caractere $ du debut de la trame
          {
-             ok=1;
+             ok=1; //ok prend la valeur 1 si la trame commence par le bon format 0 sinon
 
          }else
          {
-           ok=0;
+           ok=0; //0 sinon
          }
 }
-return ok;
+return ok;// on retourne resultat de ok pour connaitre si la trame a le bon format ou non(je dis le bon format car ici ce sont les trames commencant par GPGGA qui nous interessent)
 }
-//DECODE INT
 
-int decode_int(char c)
+
+//fonction qui permet de renvoyer la valeur décimale associée à un caractère donné en paramètre
+
+int decode_int(char c) //prise en parametre d'un caractere c
 {
-    int Vdecimal;
-    if ( c <= '9' && c >='0' )
+    int Vdecimal; //valeur en decimal du caractere passé en parametre
+    if ( c <= '9' && c >='0' ) //comparaison pour savoir si le parametre recu est compris entre 0 et 9
     {
-        Vdecimal =c-48;
+        Vdecimal =c-48; //affectation(methode permettant de donner la valeur en decimal du caractere)
 
 
     }else
      {
-        Vdecimal=-1;
+        Vdecimal=-1; //si le caractere passé en parametre n'est pas compris entre 0 et9 on renvoie -1
 
     }
-    return Vdecimal;
+    return Vdecimal; //on retourne la valeur decimal du caractere
 }
-    //decode_nombre
+
+    //fonction qui permet  de renvoyer la valeur décimale des n premiers caractères de la chaîne ch
 int decode_nombre(char* ch, int n )
 {
-    int i,s=0;
-    for(i=0;i<n;i++)
+    int i,s=0;  //i=variable permettant de faire l'iteration du tableau de caractere ch(on parcoure tout le tableau en incrementant la valeur de i qui est initialisé a 0 pour un tableau)
+    //s variable somme initialisée a 0 permettant de recuperer le nombre n de caractere qu'on veut recuperer sur une chaine de caractere ch
+    for(i=0;i<n;i++)//la boucle est executée de 0 a n fois
     {
-        s=s*10 + decode_int(ch[i]);
+        s=s*10 + decode_int(ch[i]);// on fait la somme des valeurs decimales apres avoir calculer la valeur décimale associée au caractère en utilisant la fonction decode_int
 
     }
     return s;
@@ -64,7 +69,7 @@
 typedef struct {
 float latitude;
 float longitude;
-} position ;
+} Position ;
 
 
 // fonction qui convertit la latitude en un nombre flottant
@@ -75,9 +80,9 @@
     float resultatConversion ;
     valDegre=decode_nombre(latitude,2);             //recuperer la valeur degre  de la latitude
     MinEntiere=decode_nombre(&latitude[2],2);      //recuperer la valeur minute entiere de la latitude
-    MinDecimal=decode_nombre(&latitude[5],4);         //recuperer la valeur minute entiere de la latitude
-    resultatConversion=valDegre+((MinEntiere+MinDecimal*0.0001)/60);// resultat du conversion de la latitude en valeur reelle
-    return resultatConversion;
+    MinDecimal=decode_nombre(&latitude[5],4);         //recuperer la valeur minute decimal de la latitude
+    resultatConversion=valDegre+((MinEntiere+MinDecimal*0.0001)/60);// operation de calcul du resultat du conversion de la latitude en valeur reelle
+    return resultatConversion;//on renvoie la valeur du resultat de la convertion
 }
 
 
@@ -91,9 +96,9 @@
     float resultatConversion;
     valDegre=decode_nombre(longitude,3);             //recuperer la valeur degre  de la longitude
     MinEntiere=decode_nombre(&longitude[3],2);      //recuperer la valeur minute entiere de la longitude
-    MinDecimal=decode_nombre(&longitude[6],4);         //recuperer la valeur minute entiere de la longitude
+    MinDecimal=decode_nombre(&longitude[6],4);         //recuperer la valeur minute decimal de la longitude
     resultatConversion=valDegre +((MinEntiere+MinDecimal*0.0001)/60);// resultat de la conversion de la longitude en valeur reelle
-    return resultatConversion;
+    return resultatConversion;//on renvoie la valeur du resultat de la convertion
 }
 
  // fonction qui convertit la latitude ou la longitude en flottant
@@ -102,36 +107,49 @@
 float resultatConversion; // resultat de la conversion de la longitude ou la latitude en valeur reelle
     if(chaine[4]=='.')  //comparaison pour connaitre si la 4ieme variable de la chaine est un point comme le montre cet exemple 3723.2475
      {
-         resultatConversion=conversionLatitude(chaine);
+         resultatConversion=conversionLatitude(chaine);// appel de la fonction qui permet de faire la conversion en flottant de la latitute; le resultat de la conversion est mis dans la variable resutatConversion
      }
     else
         if(chaine[5]=='.') //comparaison pour connaitre si la 5ieme variable de la chaine est un point comme le montre cet exemple 00306.6036
         {
-            resultatConversion=conversionLongitude(chaine);
+            resultatConversion=conversionLongitude(chaine);// appel de la fonction qui permet de faire la conversion en flottant de la longitute; le resultat de la conversion est mis dans la variable resutatConversion
         }
 
-    return resultatConversion;
+    return resultatConversion;//on renvoie la valeur du resultat de la convertion de la latitude ou de la longitude
 }
 
+
 // fonction qui permet de savoir si les trames sont au bon format "GPGGA" en renvoyant 1 et d'afficher la position cad la latitude et la longitude
-int decode_trame(char* trame,position * pos)
+int decode_trame(char* trame,Position * position)
 {
     //exempletrame="$GPGGA,141914.00,4545.0000,N,00306.6036,E,1,05,3.4,499.3,M,,M,,*7D",
-    int i;
-    char ch[10];
-    if (trame_cmp(trame,"GPGGA"))
+    if (trame_cmp(trame,"GPGGA"))  //on utilise la fonction trame_cmp pour savoir si la trame a le bon format GPGGA
     {
-            for (i=0;i<10;i++) ch[i]=trame[29+i];
-            pos->latitude=conversionLatitude(trame+17);
-            pos->longitude=conversionLongitude(ch);
-            return 1;
+            (*position).latitude=conversionLatitude(trame+17);//on recupere la position en latitude en acccedant au champ de la latitude dans la trame
+            (*position).longitude=conversionLongitude(trame+29);//on recupere la position en longitude en acccedant au champ de la longitude dans la trame
+            return 1;//on retourne 1 pour montrer qu'on a le trame type GPGGA et qu'on a recuperé la position en latitude et longitude
     }
-     return 0;
+     return 0;//on retourne 0 sinon, la trame est ignorée
 }
+//fonction qui permet de calculer la distance en deux points P1 et P2
+float calcul_distance(Postion P1, Position P2);
+{
+    float distance;
+    distance=cos
 
+}
 
+float calcul_vitesse(float distance ,float t);
+{
+    float vitesse;
+    t=1;
+    distance
+    vitesse=distance/t;
+}
 
 
+
+
 /*int seuil1; //seuil de la vitesse
 int seuil2; // seuil de la distance
 int j;*/
@@ -161,10 +179,13 @@
 //Ajouter vos tests unitaires dans cette fonction.
 void tests_unitaires(void)
 {
-        if (5!=5){
+        if (5!=5){
+            //test unutaire basique
+
             printf ("Erreur Test unitaire basique.\n");
             exit(-1);
-            }
+            }
+            //tests unutaires de la fonction trame_cmp
         if (trame_cmp("$GPGGA suite chaine","GPGGA")!=1){
             printf ("Erreur Test unitaire trame_cmp.\n");
             exit(-1);
@@ -181,6 +202,7 @@
              printf ("Erreur Test unitaire trame_cmp.\n");
              exit(-1);
             }
+            //tests unutaires de la fonction decode_int
 
         if (decode_int('0')!=0){
              printf ("Erreur Test unitaire decode_int.\n");
@@ -195,6 +217,8 @@
              exit(-1);
             }
 
+              //tests unutaires de la fonction decode_nombre
+
         if (decode_nombre("7541",2)!=75){
              printf ("Erreur Test unitaire decode_nombre.\n");
              exit(-1);
@@ -204,8 +228,9 @@
              exit(-1);
             }
 
+              //tests unutaires de la fonction conversionLatitude
 
-        if (conversionLatitude("3723.2475")-37,387458 > 0.0001){
+        if (conversionLatitude("3723.2475")-37,38745833 > 0.0001){
          printf ("Erreur Test unitaire conversion Latitude.\n");
          exit(-1);
             }
@@ -215,6 +240,8 @@
          exit(-1);
             }
 
+              //tests unutaires de la fonction conversionLongitude
+
         if (conversionLongitude("00306.6039")- 3.110065 > 0.0001){
          printf ("Erreur Test unitaire conversion Longitude.\n");
          exit(-1);
