Mercurial > public > ostc4
annotate Small_CPU/Inc/uartProtocol_GNSS.h @ 947:96cf6c53c934 Evo_2_23
GNSS sleep mode:
Backup voltage is now enabled during initialization. Power saving interval has been changed to 20 second active in a 60 minutes cycle.
author | Ideenmodellierer |
---|---|
date | Sun, 22 Dec 2024 21:14:41 +0100 |
parents | f41974734268 |
children |
rev | line source |
---|---|
899
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
1 /** |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
2 ****************************************************************************** |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
3 * @file uartProtocol_GNSS.h |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
4 * @author heinrichs weikamp gmbh |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
5 * @version V0.0.1 |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
6 * @date 30-Sep-2024 |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
7 * @brief Interface functionality for operation of gnss devices |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
8 * |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
9 @verbatim |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
10 ============================================================================== |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
11 ##### How to use ##### |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
12 ============================================================================== |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
13 @endverbatim |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
14 ****************************************************************************** |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
15 * @attention |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
16 * |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
17 * <h2><center>© COPYRIGHT(c) 2014 heinrichs weikamp</center></h2> |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
18 * |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
19 ****************************************************************************** |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
20 */ |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
21 |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
22 /* Define to prevent recursive inclusion -------------------------------------*/ |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
23 #ifndef UART_PROTOCOL_GNSS_H |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
24 #define UART_PROTOCOL_GNSS_H |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
25 |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
26 #ifdef __cplusplus |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
27 extern "C" { |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
28 #endif |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
29 |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
30 /* Includes ------------------------------------------------------------------*/ |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
31 #include "configuration.h" |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
32 #include "stm32f4xx_hal.h" |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
33 |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
34 typedef enum |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
35 { |
919 | 36 UART_GNSS_INIT = 0, /* Default Status for every sensor type */ |
37 UART_GNSS_IDLE, /* sensor detected and no communication pending */ | |
38 UART_GNSS_ERROR, /* Error message received from sensor */ | |
39 UART_GNSS_WARMUP = 10, | |
936 | 40 UART_GNSS_INACTIVE, /* no requests to the receiver */ |
919 | 41 UART_GNSS_LOADCONF_0, |
42 UART_GNSS_LOADCONF_1, | |
43 UART_GNSS_LOADCONF_2, | |
939 | 44 UART_GNSS_SETMODE_MOBILE, |
936 | 45 UART_GNSS_PWRDOWN, |
46 UART_GNSS_PWRUP, | |
47 UART_GNSS_SETCONF, /* save configuration */ | |
919 | 48 UART_GNSS_GET_PVT, |
931 | 49 UART_GNSS_GET_SAT |
899
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
50 } uartGnssStatus_t; |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
51 |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
52 typedef enum |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
53 { |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
54 GNSSRX_READY = 0, /* Initial state */ |
919 | 55 GNSSRX_DETECT_HEADER_0, |
56 GNSSRX_DETECT_HEADER_1, | |
57 GNSSRX_DETECT_HEADER_2, | |
58 GNSSRX_DETECT_HEADER_3, | |
931 | 59 GNSSRX_DETECT_LENGTH_0, |
60 GNSSRX_DETECT_LENGTH_1, | |
919 | 61 GNSSRX_DETECT_ACK_0, |
62 GNSSRX_DETECT_ACK_1, | |
63 GNSSRX_DETECT_ACK_2, | |
64 GNSSRX_DETECT_ACK_3, | |
931 | 65 GNSSRX_READ_DATA, |
66 GNSSRX_READ_CK_A, | |
67 GNSSRX_READ_CK_B, | |
899
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
68 } receiveStateGnss_t; |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
69 |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
70 |
919 | 71 typedef enum |
72 { | |
73 GNSSCMD_LOADCONF_0 = 0, | |
74 GNSSCMD_LOADCONF_1, | |
75 GNSSCMD_LOADCONF_2, | |
939 | 76 GNSSCMD_SETMOBILE, |
936 | 77 GNSSCMD_MODE_PWS, |
78 GNSSCMD_MODE_NORMAL, | |
79 GNSSCMD_SET_CONFIG, | |
919 | 80 GNSSCMD_GET_NAV_DATA, |
81 GNSSCMD_GET_PVT_DATA, | |
931 | 82 GNSSCMD_GET_POSLLH_DATA, |
83 GNSSCMD_GET_NAVSAT_DATA | |
919 | 84 } gnssSensorCmd_t; |
85 | |
931 | 86 typedef struct |
87 { | |
88 uint8_t class; | |
89 uint8_t id; | |
90 } gnssRequest_s; | |
91 | |
936 | 92 void uartGnss_ReqPowerDown(uint8_t request); |
939 | 93 uint8_t uartGnss_isPowerDownRequested(void); |
932 | 94 uartGnssStatus_t uartGnss_GetState(void); |
95 void uartGnss_SetState(uartGnssStatus_t newState); | |
899
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
96 void uartGnss_Control(void); |
919 | 97 void uartGnss_ProcessData(uint8_t data); |
98 uint8_t uartGnss_isSensorConnected(); | |
99 void uartGnss_SendCmd(uint8_t GnssCmd); | |
899
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
100 |
2225c467f1e9
Added data path and visualization for position data:
Ideenmodellierer
parents:
diff
changeset
|
101 #endif /* UART_PROTOCOL_GNSS_H */ |