Révision 346
Ajouté par Yaye Oumy NDONG il y a presque 3 ans
branch/Ndong_Yaye_Oumy/sp4a12/main.c | ||
---|---|---|
|
||
|
||
int decode_trame(char* t, Position* p){
|
||
int a,i;
|
||
char copie_lat[9];
|
||
char copie_long[10];
|
||
a=trame_cmp(t,"GPGGA");
|
||
int a,i; // a=1 si la trame est valide ; a=0 si la trame n'est pas valide
|
||
char copie_lat[9]; // chaine dans laquelle on copiera la latitude
|
||
char copie_long[10]; // chaine dans laquelle on copiera la longitude
|
||
a=trame_cmp(t,"GPGGA"); // comparaison pour voir si la trame est valide
|
||
if(a==1)
|
||
{
|
||
for(i=0;i<9;++i)
|
||
{
|
||
copie_lat[i]=t[27+i];
|
||
copie_lat[i]=t[17+i]; // on extrait la latitude
|
||
}
|
||
(*p).latitude= conv_lat_flottant(copie_lat);
|
||
(*p).latitude= conv_lat_flottant(copie_lat); // on convertit la laatitude en flottant
|
||
for(i=0;i<10;++i)
|
||
{
|
||
copie_long[i]=t[29+i];
|
||
copie_long[i]=t[29+i]; // on extrait la lobgitude
|
||
}
|
||
(*p).longitude=conv_long_flottant(copie_long);
|
||
}else{
|
||
exit(-1);
|
||
(*p).longitude=conv_long_flottant(copie_long); // on convertit la longitude en flottant
|
||
}
|
||
return a; if(decode_nombre("5145",2)!=51){ //test decode_nombre
|
||
printf ("Erreur Test unitaire trame_cmp.\n");
|
||
exit(-1);
|
||
}
|
||
if(decode_nombre("1234",2)!=12){
|
||
printf ("Erreur Test unitaire trame_cmp.\n");
|
||
exit(-1);
|
||
}
|
||
return a;
|
||
}
|
||
|
||
|
||
//Fonction ? modifier !!!!!
|
||
void traitement(char * trame)
|
||
{
|
||
|
||
// Position a={0.0,0.0};
|
||
//int a;
|
||
Position p;
|
||
//p=&a;
|
||
static int cpt=0;
|
||
cpt++;
|
||
cpt++;
|
||
// a=decode_trame(trame,p1);
|
||
if(decode_trame(trame,&p))
|
||
{
|
||
printf("latitude:%f longitude:%f \n", p.latitude,p.longitude);
|
||
}
|
||
|
||
}
|
||
|
||
//Ajouter vos tests unitaires dans cette fonction.
|
Formats disponibles : Unified diff
affichagr des latitudes et longitudes des trames valides