?? nmea0183.h
字號:
///////////////////////////////////////////////////////////////////////////////
// Nmea0183.h: interface for the CNmea0183 class
//
// Copyright (c) 2004,上海合眾思壯科技有限責任公司GIS部
//
// All rights reserved
//
// 文件名稱:Nmea0183.h
//
// 摘要 :Nmea0183協議類
//
// 作者 :Hansom
//
// 當前版本:1.1
//
// 完成日期:2004年04月12日
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
#if !defined(AFX_NMEA0183_H__251617C4_9697_46D7_B200_C4C5BFED4BCA__INCLUDED_)
#define AFX_NMEA0183_H__251617C4_9697_46D7_B200_C4C5BFED4BCA__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "GpsComm.h"
const double Knot2Meter = 1.851985; // 節->公里/小時
const long SAT_NUMBER = 20; // 定義衛星數
const long SAT_ID_NUMBER = 12; // 定義衛星ID數目
///////////////////////////////////////////////////////////////////////////////
// GPS主要數據結構體
struct ST_GPS_DATA
{
BYTE byFixType; // 定位標志,0-no fixed,1-fixed.
BOOL bIsAzimuth; // 方位角無效
double dbLat; // 緯度
double dbLong; // 經度
double dbSpeed; // 相對于地面的速度
double dbAzimuth; // 方位角
SYSTEMTIME UtcTime; // utc時間
double dbAlt; // 海拔高度
};
///////////////////////////////////////////////////////////////////////////////
// 定位解算精度的幾何圖形(DOP)數據
struct ST_DOP_DATA
{
double dbPdop; // PDOP值
double dbHdop; // HDOP值
double dbVdop; // VDOP值
int nNum; // 鎖定衛星個數
int nUsedID[SAT_ID_NUMBER]; // 鎖定衛星id
};
///////////////////////////////////////////////////////////////////////////////
// 衛星數據
struct ST_SAT_DATA
{
int nSatID; // 衛星編號
int nElevation; // 仰角
int nAzimuth; // 方位角
int nSNR; // 信噪比.0~99,-1為無效
BOOL bUsed;
};
///////////////////////////////////////////////////////////////////////////////
class CNmea0183 : public CGpsComm
{
public:
CNmea0183();
virtual ~CNmea0183();
public:
// 從接收緩沖區的數據搜索完整一幀,并將其轉換為具體的數據結構
virtual int SearchOneFrame(char *pchRevBuf, const int nRevLen, int &nReadPtr,
const int nWritePtr, ST_MSG *pMsg);
private:
// 判斷數據檢驗是否正確,如果正確則生成具體數據結構
BOOL ProOneFrm(ST_MSG *pMsg);
double GetCoor(const double dbIn)const;
private:
ST_SAT_DATA m_SatData[SAT_NUMBER];
ST_GPS_DATA m_GpsData;
int m_nAllSatNum;
int m_nRevSatNum;
int m_nRevFrmNum;
char *m_pchProBuf;
int m_nWritePtr;
};
#endif // !defined(AFX_NMEA0183_H__251617C4_9697_46D7_B200_C4C5BFED4BCA__INCLUDED_)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -