/*************************** (C) COPYRIGHT 2017 CXHY ****************************
 * 文件名  ：gps.h
 * 描  述  ：GPS头文件驱动代码     
 * 版  本  ：V1.0
 * 作  者  ：XuZhongPing
 * 日  期  ：2013/11/21 
*********************************************************************************/
#ifndef __GPS_H
#define __GPS_H	 

#include "stm32f10x.h" 
 									   						    
//GPS NMEA-0183协议重要参数结构体定义 

//UTC时间信息
typedef struct  
{										    
 	uint16_t 	year;	//年份
	uint8_t 	month;	//月份
	uint8_t 	date;	//日期
	uint8_t 	hour; 	//小时
	uint8_t 	min; 	//分钟
	uint8_t		sec; 	//秒钟
}nmea_utc_time;   
	   
//NMEA 0183 协议解析后数据存放结构体
typedef struct  
{										    
	nmea_utc_time utc;				//UTC时间
	uint32_t 	latitude;				//纬度 分扩大10000倍,实际要除以10000
	uint8_t 	nshemi;					//北纬/南纬,N:北纬;S:南纬				  
	uint32_t	longitude;			//经度 分扩大10000倍,实际要除以10000
	uint8_t 	ewhemi;					//东经/西经,E:东经;W:西经
	uint8_t		gpssta;					//GPS状态:0,未定位;1,非差分定位;2,差分定位;6,正在估算
	uint8_t		posslnum;				//用于定位的卫星数量,0~12

	uint32_t 	altitude;			 	//海拔高度,放大了10000倍,实际除以10000.单位:0.1m	  
}nmea_msg; 

extern nmea_msg gpsx;

void GPS_Analysis(nmea_msg *gpsx,uint8_t *buf);
void NMEA_GPGGA_Analysis(nmea_msg *gpsx,uint8_t *buf);
void NMEA_GPRMC_Analysis(nmea_msg *gpsx,uint8_t *buf);

void PrinterfGpsInfo(void);		//显示GPS定位信息

void gps_control(void);
void open_gps(void);
void close_gps(void);

#endif  

/******************** (C) COPYRIGHT 2017 CXHY *****END OF FILE*******************/ 
