www.pudn.com > gps_working.rar > gps_protocal.h


 
 
 
 
#ifndef gps_protocol_h___________ 
#define gps_protocol_h___________ 
 
#include "fixed_echo.h" 
 
/*  
当前的gps全部有用信息 
经度、纬度有正负,代表东经西经,南纬北纬。以北为正,以东为正 
*/ 
typedef struct { 
 
	// true 表示成功定位 
	fixed_bool is_valid;		 
	 
	int longitude;	//以0.0001分为单位 
	int latitude;		//以0.0001分为单位 
	uchar years;		//年月日 时分秒 
	uchar months; 
	uchar days; 
	uchar hours;		 
	uchar minutes; 
	uchar seconds; 
 
	/* 收到的卫星的数目。0表示定位失败*/ 
	uchar stars;		//  
	uchar pad0;		// 对齐 
	 
	int speed;		// 单位公里每小时. 
	 
	/* 速率方向,取值0-3599,以正北为0, 单位0.1度,  逆时针递增.  */ 
	/* 注意当speed很小的时候,方向可能不准确*/ 
	int direction;		 
 
} gps_protocol_info_t; 
 
 
fixed_status gps_protocol_init(); 
void gps_protocol_close(); 
 
/*  
功能: 取得当前卫星定位信息。 
上层以超过每秒十次的频率调用这个函数。这个函数读取串口数据并进行解释 
返回NULL表示没有收到信息。 
 
如果没有接收到新的完整的定位信息,返回NULL; 
如果接收到新的定位信息,返回定位信息的结构指针。 
注意上层函数必须保存info结构体的一个完整副本 。 
 
如果接收到多个信息,则返回最新的一个。 
*/ 
gps_protocol_info_t* gps_protocol_get_info(); 
 
#endif