123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223 |
- /******************************************************************************
- ** File Name: mn_gps_signal_def.h *
- ** Author: CUIFANG DENG *
- ** Date: 05/31/2017 *
- ** Copyright: Copyright 2001-2017 by Spreadtrum Communications,Inc. *
- ** All Rights Reserved. *
- ** This software is supplied under the terms of a license *
- ** agreement or non-disclosure agreement with Spreadtrum. *
- ** Passing on and copying of this document,and communication *
- ** of its contents is not permitted without prior written *
- ** authorization. *
- ** Description: *
- ******************************************************************************
- ******************************************************************************
- ** Edit History *
- ** --------------------------------------------------------------------------*
- ** Date Name Description *
- **---------------------------------------------------------------------------*
- ** 05/31/2017 cuifang.deng Create. *
- ******************************************************************************/
- //#ifdef _MNGPS_SUPPORT_
- #if !defined(_MN_GPS_SIGNAL_DEF_H)
- #define _MN_GPS_SIGNAL_DEF_H
- #include "sci_types.h"
- #include "os_api.h"
- #include "mn_type.h"
- #include "mn_gps_type.h"
- typedef enum
- {
- MN_GPS_NOT_RUN,
- MN_GPS_NOT_FIX,
- MN_GPS_2D_FIX,
- MN_GPS_3D_FIX
- } MN_GPS_STATUS_E;
- typedef enum
- {
- MN_GPS_HOT_MODE,
- MN_GPS_COLD_MODE,
- MN_GPS_WARM_MODE,
- MN_GPS_FACTORY_MODE
- } MN_GPS_RESET_MODE_E,
- MN_GPS_START_MODE_E;
- // following signal only have signal header
- typedef xSignalHeaderRec SIGNALS_NO_PARA_T;
- typedef struct
- {
- SIGNAL_VARS
- uint8 type; //bit0: START_GPS bit1: START_BDS bit2: START_GLONASS
- MN_GPS_START_MODE_E start_mode;
- } MN_GPS_START_REQ_T;
- typedef struct
- {
- SIGNAL_VARS
- MN_GPS_RESET_MODE_E reset_mode;
- } MN_GPS_RESET_REQ_T;
- typedef struct
- {
- SIGNAL_VARS
- MN_GPS_DATA_SOCKET_E dataSocket_type;
- } MN_GPS_DATA_SOCKET_IND_T;
- typedef struct
- {
- SIGNAL_VARS
- MN_GPS_GNSS_MODE_E gnss_mode;
- } MN_GPS_SET_GNSS_MODE_REQ_T;
- typedef struct
- {
- SIGNAL_VARS
- MN_GPS_STATUS_E status;
- } MN_GPS_STATUS_CNF_T;
- typedef struct
- {
- SIGNAL_VARS
- uint16 type; // value 0- disable ouput; BIT0=1--GGA, BIT1=1--GLL, BIT2=1--GSA, BIT3=1--GSV, BIT4=1--RMC, BIT5=1--VTG
- uint32 time_interval;
- } MN_GPS_OUTPUT_REQ_T;
- typedef struct
- {
- SIGNAL_VARS
- MN_SYS_SIM_E dual_sys;
- uint32 netid; //value 5~11. 0:invalid
- } MN_GPS_PDP_INFO_REQ_T;
- typedef struct
- {
- SIGNAL_VARS
- MN_SYS_SIM_E dual_sys;
- BOOLEAN is_report_location_info;
- BOOLEAN is_report_satellite_info;
- } MN_GPS_REPORT_REQ_T;
- typedef struct
- {
- SIGNAL_VARS
- MN_SYS_SIM_E dual_sys;
- uint8 type;
- } MN_GPS_ASSERT_REQ_T;
- typedef struct
- {
- SIGNAL_VARS
- BOOLEAN is_ok;
- } MN_GPS_DOWNLOAD_CNF_T,
- MN_GPS_INIT_CNF_T,
- MN_GPS_START_CNF_T,
- MN_GPS_STOP_CNF_T,
- MN_GPS_RESET_CNF_T,
- MN_GPS_OUTPUT_CNF_T,
- MN_GPS_POWEROFF_CNF_T,
- MN_GPS_SET_GNSS_MODE_CNF_T,
- MN_GPS_DEL_AID_DATA_CNF_T,
- MN_GPS_PDP_INFO_CNF_T,
- MN_GPS_RUN_CNF_T,
- MN_GPS_REPORT_CNF_T;
- typedef SIGNALS_NO_PARA_T MN_GPS_ERR_IND_T;
- typedef struct
- {
- SIGNAL_VARS
- MN_GPS_STATUS_E fix_status; //¶¨Î»×´Ì¬
- } MN_GPS_READ_STATUS_CNF_T;
- typedef struct
- {
- uint16 wYear;
- uint16 wMonth;
- uint16 wDay;
- uint16 wHour;
- uint16 wMinute;
- uint16 wSecond;
- } TimeStamp;
- typedef struct
- {
- float longitude; // ¾¶È
- float latitude; // γ¶È
- float altitude; // ¸ß¶È
- TimeStamp utc_time; // ÊÀ½çʱ¼ä
- uint32 ttff_time; // µÚÒ»´Î¶¨Î»ËùÓÃʱ¼ä£¬µ¥Î»s
- uint8 satellite_num; // ÎÀÐÇÊýÄ¿
- float speed; // ¶ÔµØËÙ¶È
- float course; // ¶ÔµØ·½Ïò
- uint16 clockdrift;
- SCI_TICK_TIME_T m_nSystemTimeStamp; // RTC or any other system time
- uint32 m_nUTCTime; // second
- uint8 m_nUncertaintySemiMajor;
- uint8 m_nUncertaintySemiMinor;
- float m_nBearing; // increments of 1 measured clockwise from the North.
- uint16 m_nDirection; // UP=0, Down=1
- float m_nHorizontalVelocity; // m/s
- float m_nVerticalVelocity; // m/s
- uint32 fix_flag;
- float m_nHorizontalAccuracy;
- float m_nPDOP; // λÖþ«¶ÈÒò×Ó
- float m_nHDOP; // ˮƽ¾«¶ÈÒò×Ó
- float m_nVDOP; // ´¹Ö±¾«¶ÈÒò×Ó
- } MN_GPS_INFO_T;
- typedef struct
- {
- uint16 m_nSatelliteIdentifier; // SV PRN
- uint16 m_cn0; // 2CN0ÐÅÔë±È
- uint16 m_nElevation; // Ñö½Ç
- uint16 m_nAzimuth; // ·½Î»½Ç
- uint8 m_IsUsed;
- } MN_GPS_SATELLITE_INFO_T;
- typedef struct
- {
- uint8 satellite_num;
- MN_GPS_SATELLITE_INFO_T satellite_info[32];
- } MN_GPS_SATELLITE_INFO_LIST_T;
- typedef struct
- {
- SIGNAL_VARS
- MN_GPS_INFO_T gps_info;
- MN_GPS_SATELLITE_INFO_LIST_T satellite_list_info;
- } MN_GPS_READ_INFO_CNF_T;
- typedef struct
- {
- SIGNAL_VARS
- MN_GPS_INFO_T gps_info;
- } MN_GPS_LOCATION_INFO_IND_T;
- typedef struct
- {
- SIGNAL_VARS
- MN_GPS_SATELLITE_INFO_LIST_T satellite_list_info;
- } MN_GPS_SATELLITE_INFO_IND_T;
- typedef struct
- {
- SIGNAL_VARS
- uint16 length;
- uint16 type; // BIT0=1--GGA, BIT1=1--GLL, BIT2=1--GSA, BIT3=1--GSV, BIT4=1--RMC, BIT5=1--VTG
- uint8 nmea_data[NMEA_PACKET_DATA_LEN]; // NMEA packet buffer
- } MN_GPS_OUTPUT_INFO_IND_T;
- typedef struct
- {
- SIGNAL_VARS
- float longitude; //¾¶È
- float latitude; //γ¶È
- TimeStamp utc_time; // ÊÀ½çʱ¼ä
- uint32 ttff_time; //µÚÒ»´Î¶¨Î»ËùÓÃʱ¼ä£¬µ¥Î»s
- uint16 cn0;
- } MN_GPS_FIX_IND_T;
- #endif /* end of _MN_GPS_SIGNAL_DEF_H */
- //#endif
|