78 lines
1.8 KiB
C
78 lines
1.8 KiB
C
#ifndef _BLE_GPS_SERVER_H_
|
|
#define _BLE_GPS_SERVER_H_
|
|
|
|
#include "ble_protocol.h"
|
|
|
|
|
|
/********************************
|
|
*4.18.5 APP 下发 GPS 坐标点到设备
|
|
**********************************/
|
|
typedef enum
|
|
{
|
|
APP_GPS_LONGITUDE_TYPE = 1,
|
|
APP_GPS_LATITUDE_TYPE,
|
|
APP_GPS_DISTANCES_TYPE,
|
|
} APPGPSInfo;
|
|
|
|
/********************************
|
|
* 4.18.3 设备主动请求GPS 信息
|
|
**********************************/
|
|
|
|
typedef enum
|
|
{
|
|
DEVICE_GPS_REQUEST_TYPE = 1,
|
|
DEVICE_GPS_STATUS_ACK_TYPE,
|
|
} deviceRequestGpsStatus;
|
|
|
|
|
|
/********************************
|
|
4.18.6 APP 下发 GPS 坐标点到设备
|
|
**********************************/
|
|
|
|
typedef enum
|
|
{
|
|
DEVICE_GPS_STATUS_TYPE = 1,
|
|
} appGpsStatus;
|
|
|
|
|
|
//命令
|
|
enum
|
|
{
|
|
APP_ASK_IS_ISSUE_EPHEMERISFILE_ID = 0X01,
|
|
DEVICE_REQ_EPHEMERIS_STA_ID,
|
|
DEVICE_REQ_PHONE_GPS_INFO_ID,
|
|
SET_APP_GPS_INFO_TO_DEVICE_ID,
|
|
DEVICE_RECEIVE_GPS_INFO_ID,
|
|
DEVICE_RECEIVE_GPS_STATUS_ID,
|
|
GPS_SERVERE_MAX_ID,
|
|
|
|
};
|
|
|
|
|
|
/**
|
|
* @struct FitGpsInfo
|
|
* @brief GPS信息结构体.
|
|
* @details 用于记录户外运动GPS.
|
|
*/
|
|
typedef struct {
|
|
uint8_t vaild; // gps有效性
|
|
uint32_t longtitude; // 经度
|
|
uint32_t latitude; // 纬度
|
|
uint32_t distance; // 距离 cm
|
|
} FitGpsInfo;
|
|
|
|
|
|
void BLE_deviceRequestGpsInfoACK(uint8_t *in_data,uint16_t in_len,uint8_t *out_data,uint16_t *out_len);
|
|
|
|
void deviceRequestphoneGpsInfo(uint8_t command);
|
|
|
|
void BLE_dReceiveAppGpsInfo(uint8_t *in_data,uint16_t in_len,uint8_t
|
|
*out_data,uint16_t *out_len);
|
|
|
|
void BLE_ReceiveAppGpsStatus(uint8_t *in_data,uint16_t in_len,uint8_t
|
|
*out_data,uint16_t *out_len);
|
|
|
|
extern const p_func_t GpsServerFunc[GPS_SERVERE_MAX_ID];
|
|
|
|
#endif
|