dd

Dependencies:   C12832 LM75B mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers RecGPS.h Source File

RecGPS.h

00001 unsigned char _DL,_Npt,_Pospt;
00002 unsigned char _hh,_mm,_ss;
00003 unsigned char _LatDeg,_LatMin,_LatMin1,_LatMin2,_LatDir;
00004 unsigned char _LongDeg,_LongMin,_LongMin1,_LongMin2,_LongDir;
00005 unsigned char _Qual;
00006 unsigned char _SignHMSL,_HMSL_L,_HMSL_H,_HMSL_1,_HMSL_2,_HUnite;
00007 unsigned char _dd,_yy,_mn,_val;
00008 
00009 unsigned char _Data[16],_PosV[16],_MsgGPSRx[100];
00010 
00011 // defini un structure
00012 typedef struct {
00013           unsigned char GGA_Valid;
00014           unsigned char hh;
00015           unsigned char mm;
00016           unsigned char ss; 
00017   
00018           unsigned char LatDeg; 
00019           unsigned char LatMin;
00020           unsigned char LatMin1;
00021           unsigned char LatMin2;
00022           unsigned int  Latmmmm;
00023           unsigned char LatDir;
00024           
00025           unsigned char LongDeg;
00026           unsigned char LongMin;
00027           unsigned char LongMin1;
00028           unsigned char LongMin2;
00029           unsigned int  Longmmmm;
00030           unsigned char LongDir;
00031           
00032           unsigned char Qual;
00033                   
00034           unsigned int  HMSL;          
00035           unsigned char SignHMSL;
00036           unsigned char HUnite;  
00037 }StructGPS;
00038 
00039 StructGPS GpsData;
00040 //------------------------------------------------------------------------------
00041 //Calcul de la longueur des sous message
00042 unsigned char Get_Length(unsigned short index)
00043  {
00044     static unsigned char LongData;
00045     LongData=_PosV[index+1]-_PosV[index]-1;
00046     return LongData;
00047  }
00048 //Décomposition du message en Sub message
00049 void Set_Data(unsigned char index){
00050     static unsigned char ii,jj;
00051     static unsigned char Start,End;
00052     ii=0;
00053     Start = _PosV[index]+1;    
00054     End   = _PosV[index+1];  
00055     
00056     for(jj=Start;jj<End;jj++){
00057        _Data[ii] = _MsgGPSRx[jj];      
00058        ii++;
00059     }
00060  } 
00061 //Vérification des sub message
00062 void Validation_StrToFloat(unsigned char LongData)
00063  {
00064     unsigned char ii;
00065     _Npt   = 0;
00066     _Pospt = 0;
00067     for(ii=0;ii<LongData;ii++){
00068        if(_Data[ii]=='.')
00069         {
00070           _Npt++;
00071           _Pospt=ii;
00072         }
00073         else if((_Data[ii]<48)||(_Data[ii]>57)) _Npt=_Npt+2;
00074      }
00075  }
00076  
00077 void DecodageGPGGA(unsigned char Ldata);
00078  
00079 //------------------------------------------------------------------------------
00080 #include "DecMsgGPGGA.h"       // GPGGA
00081 //------------------------------------------------------------------------------