b.liu | e958203 | 2025-04-17 19:18:16 +0800 | [diff] [blame^] | 1 | #ifndef SENSOR_DATA_H |
| 2 | #define SENSOR_DATA_H |
| 3 | |
| 4 | #include "gps_oal.h" |
| 5 | |
| 6 | typedef struct |
| 7 | { |
| 8 | U8 rawAcc[6]; |
| 9 | U8 rawGyro[6]; |
| 10 | U8 rawMag[6]; |
| 11 | U8 rawBaro[3]; |
| 12 | U8 rawTemp[2]; |
| 13 | } snrRawData_t; |
| 14 | |
| 15 | typedef struct |
| 16 | { |
| 17 | FLT phyAcc[3]; |
| 18 | FLT phyGyro[3]; |
| 19 | FLT phyMag[3]; |
| 20 | FLT phyBaro; |
| 21 | FLT phyTemp; |
| 22 | FLT walkDis; |
| 23 | U32 stepCnt; |
| 24 | } snrPhysicalData_t; |
| 25 | |
| 26 | typedef struct |
| 27 | { |
| 28 | U32 version; |
| 29 | U8 sensor; |
| 30 | U8 type; |
| 31 | FLT data[3]; |
| 32 | FLT result[6]; |
| 33 | U64 timestamp; |
| 34 | snrRawData_t rawData; |
| 35 | snrPhysicalData_t phyData; |
| 36 | } snrHubSensorParse_t; |
| 37 | |
| 38 | |
| 39 | typedef struct |
| 40 | { |
| 41 | U16 override; |
| 42 | U16 oldDataLen; |
| 43 | U16 newDataLen; |
| 44 | |
| 45 | } snrFiFoDataHdrT; |
| 46 | |
| 47 | extern U64 stepCntBase; |
| 48 | extern FLT walkDistBase; |
| 49 | extern U32 virtualSnrMask; |
| 50 | extern gpsMutexT sensorMaskContext; |
| 51 | extern gpsMutexT sensorLogContext; |
| 52 | |
| 53 | extern void sensorHubInit(void); |
| 54 | extern void sensorHubStart(void); |
| 55 | extern void sensorHubStop(void); |
| 56 | extern void sensorHubReset(void); |
| 57 | |
| 58 | extern void gpsSeSysInit(void); |
| 59 | extern U8 gpsSeLogControl(void); |
| 60 | extern void gpsSeSysDataFileInit(void); |
| 61 | extern void gpsSeSysDataFileOpen(void); |
| 62 | extern void gpsSeSysDataFileClose(void); |
| 63 | |
| 64 | extern void sensorHubUpdateSnrType(U32 type); |
| 65 | extern void sesnorHubVirtualSnrInit(U8 type); |
| 66 | extern void sesnorHubVirtualSnrDeInit(U8 type); |
| 67 | extern void sensorHubDataParseFinish(void); |
| 68 | extern void sensorHubExtractDataPackInfo(U8* buf, U8** msg, U16 len, U16* msgSize); |
| 69 | extern S8 sensorHubParseDataPack(U8* msg, U16 len, U8* res); |
| 70 | extern S8 sensorHubDataReportScreen(U16* event, U8 type); |
| 71 | |
| 72 | #endif |