⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 drv_gps.h

📁 uCOS2 for 51系列
💻 H
字号:
/*********************************************************************************************************
**				                       uC/OS 2 FOR PHILIP LPC21XX
**                                   The Real-Time Kernel(For ADS1.2)
**
**                                  
**                                                V0.00.1
**
**
**--------------文件信息--------------------------------------------------------------------------------
**文   件   名: Drv_GPS.H
**创   建   人: 龚树强
**最后修改日期: 2005年5月2日
**描        述: 串口0驱动程序头文件
**
**--------------历史版本信息----------------------------------------------------------------------------
** 创建人: 龚树强
** 版  本: V0.01.1
** 日 期: 2005年5月2日
** 描 述: 原始版本
**
**------------------------------------------------------------------------------------------------------
** 修改人: 
** 版  本: 
** 日 期: 
** 描 述: 
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/


#ifndef __DRV_GPS_H__
#define __DRV_GPS_H__


/*******************************************************************************
*********************			常	量	定	义			************************
********************************************************************************/

#define	GPS_RX_BUF_SIZE					32

#define	GPS_NMEA_TYPE_SEG_OFFSET		1
#define	GPS_MOTO_TYPE_SEG_OFFSET		2

#define	GPS_NMEA_TYPE_SEG 				0
#define	GPS_MOTO_TYPE_SEG 				0

#define	GPS_NMEA_FORMAT					0xAA
#define	GPS_MOTO_FORMAT					0x55

#define	GPS_NMEA_GLL					1
#define	GPS_NMEA_GGA					2
#define	GPS_NMEA_VTG					3
#define	GPS_NMEA_RMC					4
#define	GPS_NMEA_GSA					5
#define	GPS_NMEA_ASV					6

#define	GPS_MOTO_Ea						1


/*******************************************************************************
*********************			变	量	定	义			************************
********************************************************************************/
 
extern void		*GPS_RX_Buf[GPS_RX_BUF_SIZE];

extern OS_STK	STK_GPS_INTERPRETER[TASK_STK_SIZE/2];

extern OS_EVENT	*GPS_RX_Q;

typedef	struct	time
{
	INT8U	hour;
	INT8U	min;
	INT8U	sec;
	INT16U	msec;
}TIME;

typedef	struct	date
{
	INT8U	date;
	INT8U	month;
	INT16U	year;
}DATE;

typedef	struct	speed
{
	INT16U	dir;
	INT16U	value;
}SPEED;

typedef	struct	magnetism
{
	INT8U	dir;
	INT16U	value;
}MAG;

typedef	struct	sat_state
{
	INT8U	visible;
	INT8U	tracked;
}SAT_STATE;

typedef	struct 	chanel_state
{
	INT8U	sat_NO;
	INT8U	track_mode;
	INT8U	CN;
	INT8U	chanel_state;
}CHANEL_STATE;

typedef	struct 	position
{
	INT8U	dir;
	INT8U	dec;
	INT8U	min;
	INT16U	mmin;
}POSITION;

typedef	struct	gps_data
{
	TIME		time;
	DATE		date;
	POSITION	latitude;
	POSITION	longitude;
	INT32U		altitude;
	SPEED		spd;
	MAG			mag;
	INT8U		state;
	INT8U		mode;
	SAT_STATE	sat_state;
	CHANEL_STATE	chanel_state[8];
	INT8U		checksum;	
}GPS_DATA;

typedef	struct	gps_cntl
{
	INT32U		msg_mask;
	OS_EVENT	*dest;//转发目的地
}GPS_CNTL;


extern GPS_CNTL	GpsCntl;

extern GPS_DATA	GpsData;

/*********************************************************************************************************
** 函数名称: GPS_Init
** 功能描述: GPS初始化函数
** 输 入: 无
** 输 出: 无
** 全局变量: 无
** 调用模块: 无
**
** 作 者: 龚树强
** 日 期: 2005年1月3日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**-------------------------------------------------------------------------------------------------------
********************************************************************************************************/  

		void	GPS_Init(void)		reentrant;

/*********************************************************************************************************
** 函数名称: GPS_NMEA_TypeCheck
** 功能描述: GPS NMEA格式类型检查函数
** 输 入: 无
** 输 出: 无
** 全局变量: 无
** 调用模块: 无
**
** 作 者: 龚树强
** 日 期: 2005年1月3日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**-------------------------------------------------------------------------------------------------------
********************************************************************************************************/ 

		INT8U	GPS_NMEA_TypeCheck(INT8U rx,INT8U *prx_counter)		reentrant;

/*********************************************************************************************************
** 函数名称: GPS_NMEA_GLL_Interpreter
** 功能描述: GPS NMEA格式GLL包解释函数
** 输 入: 无
** 输 出: 无
** 全局变量: 无
** 调用模块: 无
**
** 作 者: 龚树强
** 日 期: 2005年1月3日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**-------------------------------------------------------------------------------------------------------
********************************************************************************************************/ 

 		void	GPS_NMEA_GLL_Interpreter(INT8U rx,INT8U *prx_counter)		reentrant;
 		
/*********************************************************************************************************
** 函数名称: GPS_NMEA_GAA_Interpreter
** 功能描述: GPS NMEA格式GAA包解释函数
** 输 入: 无
** 输 出: 无
** 全局变量: 无
** 调用模块: 无
**
** 作 者: 龚树强
** 日 期: 2005年1月3日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**-------------------------------------------------------------------------------------------------------
********************************************************************************************************/ 

 		void	GPS_NMEA_GAA_Interpreter(INT8U rx,INT8U *prx_counter)		reentrant;
/*********************************************************************************************************
** 函数名称: GPS_NMEA_VTG_Interpreter
** 功能描述: GPS NMEA格式GLL包解释函数
** 输 入: 无
** 输 出: 无
** 全局变量: 无
** 调用模块: 无
**
** 作 者: 龚树强
** 日 期: 2005年1月3日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**-------------------------------------------------------------------------------------------------------
********************************************************************************************************/ 

 		void	GPS_NMEA_VTG_Interpreter(INT8U rx,INT8U *prx_counter)		reentrant;
/*********************************************************************************************************
** 函数名称: GPS_NMEA_GSA_Interpreter
** 功能描述: GPS NMEA格式RMC包解释函数
** 输 入: 无
** 输 出: 无
** 全局变量: 无
** 调用模块: 无
**
** 作 者: 龚树强
** 日 期: 2005年1月3日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**-------------------------------------------------------------------------------------------------------
********************************************************************************************************/ 

 		void	GPS_NMEA_GSA_Interpreter(INT8U rx,INT8U *prx_counter)		reentrant;
/*********************************************************************************************************
** 函数名称: GPS_NMEA_ASV_Interpreter
** 功能描述: GPS NMEA格式RMC包解释函数
** 输 入: 无
** 输 出: 无
** 全局变量: 无
** 调用模块: 无
**
** 作 者: 龚树强
** 日 期: 2005年1月3日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**-------------------------------------------------------------------------------------------------------
********************************************************************************************************/ 

 		void	GPS_NMEA_ASV_Interpreter(INT8U rx,INT8U *prx_counter)		reentrant;
/*********************************************************************************************************
** 函数名称: Task_GPS_Interpreter       
** 功能描述: GPS包处理函数
** 输 入: void *pData
** 输 出: 无
** 全局变量: 无
** 调用模块: 无
**
** 作 者: 龚树强
** 日 期: 2005年1月3日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**-------------------------------------------------------------------------------------------------------
********************************************************************************************************/  
		void Task_GPS_Interpreter(void *pData)		reentrant;

#endif /*__UART0_H__*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -