|
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <gpsmes.h>
int gps_mes_process(char * buff)
{
int i=0;
//GPRMC&A////
if((*(buff+i)=='$') &&(*(buff+i+1)=='G') && (*(buff+i+2)=='P') &&(*(buff+i+3)=='R') &&(*(buff+i+4)=='M') &&(*(buff+i+5)=='C') &&(*(buff+i+18)=='A')) //
{
while((*(buff+i))!=',') i++; // 查逗号
i++;
sscanf((buff+i),"%2d,%2d,%2d",&gpsmes1.h,&gpsmes1.m,&gpsmes1.s);
while((*(buff+i))!=',') i++; //查逗号
i++; //已到数据位
//跳过 已判定
while((*(buff+i))!=',') i++; //鏌?閫楀彿
i++; //已到数据位
//绾害 ddmm.mmmm 9
sscanf((buff+i),"%f",&gpsmes1.latitude);
while((*(buff+i))!=',') i++; //查逗号
i++; //已到数据位
gpsmes1.part_la=(*(buff+i)); // N or S
while((*(buff+i))!=',') i++; //查逗号
i++; //已到数据位
//longitude ddmm.mmmm 9
sscanf((buff+i),"%f",gpsmes1.longitude);
while((*(buff+i))!=',') i++; //查逗号
i++; //已到数据位
gpsmes1.part_lo=(*(buff+i)); //E or W
while((*(buff+i))!=',') i++; //查逗号
i++; //已到数据位
sscanf((buff+i),"%f",gpsmes1.speed);
i++;
sscanf((buff+i),"%f",gpsmes1.angle);
while((*(buff+i))!=',') i++; //查逗号
i++; //已到数据位
//date
sscanf((buff+i),"%2d,%2d,%2d",&gpsmes1.h,&gpsmes1.m,&gpsmes1.s);
}
///////GPGGA//////
else if((*(buff+i)=='$') &&(*(buff+i+1)=='G')&&(*(buff+i+2)=='P')&& (*(buff+i+3)=='G')&&(*(buff+i+4)=='G')&&(*(buff+i+5)=='A'))
{
while((*(buff+i))!=',')i++; //查逗号
i++; //已到数据位
//UTC hhmmss
sscanf((buff+i),"%2d,%2d,%2d",&gpsmes1.h,&gpsmes1.m,&gpsmes1.s);
while((*(buff+i))!=',')i++; //查逗号
i++; //已到数据位
//latitude ddmm.mmmm
sscanf((buff+i),"%f",&gpsmes1.latitude);
while((*(buff+i))!=',')i++; //查逗号
i++; //已到数据位
gpsmes1.part_la=(*(buff+i)); // N or S
while((*(buff+i))!=',')i++; //查逗号
i++; //已到数据位
//longitude ddmm.mmmm 9
sscanf((buff+i),"%f",&gpsmes1.longitude);
}
}
//if(gpsmes2.flag==0)gpsmes2=gpsmes1;
return 0;
}
下面是gpsmes.h的内容
//////////////////////////
// //
//// gps 数据结构体 ///
// //
//////////////////////
int gps_mes_process(char * buff)
struct gps_mes
{
int flag; //是否使用过该数据
int h,m,s;
char part_la,part_lo;
float latitude;
float longitude;
float speed;
float angle;
} gpsmes1,gpsmes2; |
阿莫论坛20周年了!感谢大家的支持与爱护!!
你熬了10碗粥,别人一桶水倒进去,淘走90碗,剩下10碗给你,你看似没亏,其实你那10碗已经没有之前的裹腹了,人家的一桶水换90碗,继续卖。说白了,通货膨胀就是,你的钱是挣来的,他的钱是印来的,掺和在一起,你的钱就贬值了。
|