Révision 89
Ajouté par Yannis SENOUCI il y a environ 3 ans
main.c | ||
---|---|---|
}
|
||
return ok;
|
||
}
|
||
|
||
//Fonction ? modifier !!!!!
|
||
void traitement(char * trame)
|
||
{
|
||
static int cpt = 0;
|
||
cpt++;
|
||
if(trame_cmp(trame,"GPGGA")==1)
|
||
{
|
||
printf ("> %s\n",trame);
|
||
}
|
||
}
|
||
|
||
int decode_int(char c)
|
||
{
|
||
... | ... | |
}
|
||
}
|
||
|
||
int decode_nombre(char *ch,int n)
|
||
int decode_nombre(char *ch,int i,int n)
|
||
{
|
||
int res=0;
|
||
int i;
|
||
for(i=0;i<n;i++)
|
||
int j;
|
||
for(j=i;j<i+n;j++)
|
||
{
|
||
res=(res*10)+decode_int(ch[i]);
|
||
res=(res*10)+decode_int(ch[j]);
|
||
}
|
||
return res;
|
||
}
|
||
|
||
float latitude(char *ch)
|
||
{
|
||
float res, res1, res2, res3;
|
||
|
||
res1 = decode_nombre(ch,17,2);
|
||
res2 = decode_nombre(ch,19,2);
|
||
res3 = decode_nombre(ch,22,4);
|
||
|
||
res = res1 + (res2 + res3/10000)/60;
|
||
return res;
|
||
}
|
||
|
||
//Fonction ? modifier !!!!!
|
||
void traitement(char * trame)
|
||
{
|
||
static int cpt = 0;
|
||
cpt++;
|
||
if(trame_cmp(trame,"GPGGA")==1)
|
||
{
|
||
printf ("> %s\n",trame);
|
||
}
|
||
}
|
||
|
||
//Ajouter vos tests unitaires dans cette fonction.
|
||
void tests_unitaires(void){
|
||
... | ... | |
printf ("Erreur Test unitaire decode int.\n");
|
||
exit(-1);
|
||
}
|
||
if(decode_nombre("7558",2)!=75){
|
||
if(decode_nombre("7558",0,2)!=75){
|
||
printf ("Erreur Test unitaire decode nombre.\n");
|
||
exit(-1);
|
||
}
|
||
if(latitude("$GPGGA,141914.00,4545.0000,")!=45.75){
|
||
printf ("Erreur Test unitaire latitude.\n");
|
||
exit(-1);
|
||
}
|
||
}
|
||
|
Formats disponibles : Unified diff
implementation fct laatitude avec test qu8