38
|
1 ///////////////////////////////////////////////////////////////////////////////
|
|
2 /// -*- coding: UTF-8 -*-
|
|
3 ///
|
|
4 /// \file Discovery/Inc/tStructure.h
|
|
5 /// \brief Header file for All
|
|
6 /// \author heinrichs weikamp gmbh
|
|
7 /// \date 04-July-2014
|
|
8 ///
|
|
9 /// $Id$
|
|
10 ///////////////////////////////////////////////////////////////////////////////
|
|
11 /// \par Copyright (c) 2014-2018 Heinrichs Weikamp gmbh
|
|
12 ///
|
|
13 /// This program is free software: you can redistribute it and/or modify
|
|
14 /// it under the terms of the GNU General Public License as published by
|
|
15 /// the Free Software Foundation, either version 3 of the License, or
|
|
16 /// (at your option) any later version.
|
|
17 ///
|
|
18 /// This program is distributed in the hope that it will be useful,
|
|
19 /// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
20 /// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
21 /// GNU General Public License for more details.
|
|
22 ///
|
|
23 /// You should have received a copy of the GNU General Public License
|
|
24 /// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
25 //////////////////////////////////////////////////////////////////////////////
|
|
26
|
|
27 /* Define to prevent recursive inclusion -------------------------------------*/
|
|
28 #ifndef TSTRUCTURE_H
|
|
29 #define TSTRUCTURE_H
|
|
30
|
|
31 #ifdef __cplusplus
|
|
32 extern "C" {
|
|
33 #endif
|
|
34
|
|
35 /* Includes ------------------------------------------------------------------*/
|
|
36 #include "stdint.h"
|
|
37
|
|
38 /** @addtogroup Template
|
|
39 * @{
|
|
40 */
|
|
41
|
|
42
|
|
43 #ifdef __cplusplus
|
|
44 }
|
|
45 #endif
|
|
46
|
|
47 #define _MB(base,menuPage,menuLine,menuEditField,menuEditWhichMode) ((base << 28) + (menuPage << 24) + (menuLine << 16) + (menuEditField << 8) + menuEditWhichMode)
|
|
48
|
|
49 #define BaseInfo 0
|
|
50 #define BaseHome 1
|
|
51 #define BaseMenu 2
|
|
52 #define BaseComm 3
|
|
53 #define BaseStop 6
|
|
54 #define BaseBoot 7
|
|
55
|
|
56 #define PageDebug 0
|
|
57 #define PageSurface 1
|
|
58 #define PageDive 2
|
|
59
|
|
60 #define MaskLineFieldDigit _MB(7,15,0,0,0)
|
|
61 #define MaskFieldDigit _MB(7,15,255,0,0)
|
|
62 #define MaskAllButLine _MB(0,0,255,0,0)
|
|
63 #define MaskLineDigit _MB(7,15,0,255,0)
|
|
64 #define InfoPageLogList 2
|
|
65 #define InfoPageLogShow 3
|
|
66 #define InfoPageCompass 6
|
|
67
|
|
68 #define StI _MB(0,1,0,0,0)
|
|
69 #define StILOGLIST _MB(0,2,0,0,0)
|
|
70 #define StILOGSHOW _MB(0,3,0,0,0)
|
|
71 #define StIDIVE _MB(0,4,0,0,0)
|
|
72 #define StISIM _MB(0,5,0,0,0)
|
|
73 #define StICOMPASS _MB(0,6,0,0,0)
|
|
74 #define StIDEBUG _MB(0,7,0,0,0)
|
|
75
|
|
76 #define StI_GoToLogbook _MB(0,1,1,0,0)
|
|
77 #define StI_GoToPlanner _MB(0,1,2,0,0)
|
|
78 #define StI_StartSimulator _MB(0,1,3,0,0)
|
|
79
|
|
80 #define StISIM_Descend _MB(0,5,1,0,0)
|
|
81 #define StISIM_Ascend _MB(0,5,2,0,0)
|
|
82 #define StISIM_Divetime _MB(0,5,3,0,0)
|
|
83 #define StISIM_Exit _MB(0,5,4,0,0)
|
|
84 #define StISIM_FollowDeco _MB(0,5,5,0,0)
|
|
85
|
|
86
|
|
87 #define StDEBUG _MB(1,0,0,0,0)
|
|
88 #define StS _MB(1,1,0,0,0)
|
|
89 #define StD _MB(1,2,0,0,0)
|
|
90 #define StDMGAS _MB(1,2,1,0,0)
|
|
91 #define StDMSPT _MB(1,2,2,0,0)
|
|
92 #define StDMENU _MB(1,2,3,0,0)
|
|
93 #define StDSIM1 _MB(1,2,4,0,0)
|
|
94 #define StDSIM2 _MB(1,2,5,0,0)
|
|
95 #define StDSIM3 _MB(1,2,6,0,0)
|
|
96 #define StDSIM4 _MB(1,2,7,0,0)
|
|
97 #define StDBEAR _MB(1,2,8,0,0)
|
|
98 #define StDRAVG _MB(1,2,9,0,0)
|
|
99 #define StDQUIT _MB(1,2,10,0,0)
|
|
100
|
|
101
|
|
102 #define StUART_STANDARD _MB(3,1,0,0,0)
|
|
103 #define StUART_RTECONNECT _MB(3,2,0,0,0)
|
|
104
|
|
105 #define StStop _MB(6,0,0,0,0)
|
|
106 #define StBoot0 _MB(7,0,0,0,0)
|
|
107
|
|
108 /* globalState defines in which visible range the cursor can move */
|
|
109 /* position of the cursor does not affect globalState */
|
|
110 /* next page is a different globalState */
|
|
111 /* next line, field or digit is not a different state */
|
|
112 /* digit is empty at the moment and be reused for future features */
|
|
113
|
|
114 /* PAGE 1 */
|
|
115 #define StMOG _MB(2,1,0,0,0)
|
|
116
|
|
117 /* PAGE 1 MENU EDIT */
|
|
118
|
|
119 /* PAGE 1 EDIT FIELD CONTENT */
|
|
120 /* used for PAGE 2 AS WELL */
|
|
121 #define StMOG_Mix _MB(2,1,255,1,0)
|
|
122 #define StMOG_GasType _MB(2,1,255,2,0)
|
|
123 #define StMOG_ChangeDepth _MB(2,1,255,3,0)
|
|
124 #define StMOG_SetToMOD _MB(2,1,255,4,0)
|
|
125 #define StMOG_Bottle _MB(2,1,255,5,0)
|
|
126 #define StMOG_Wireless _MB(2,1,255,6,0)
|
|
127
|
|
128 #define StMOG_MOD _MB(2,1,255,9,0)
|
|
129
|
|
130 #define StMOG_First _MB(2,1,255,21,0)
|
|
131 #define StMOG_Deco _MB(2,1,255,22,0)
|
|
132 #define StMOG_Travel _MB(2,1,255,23,0)
|
|
133 #define StMOG_Inactive _MB(2,1,255,24,0)
|
|
134
|
|
135 #define StMOG_NoTransmitter _MB(2,1,255,30,0)
|
|
136 #define StMOG_Transmitter1 _MB(2,1,255,31,0)
|
|
137 #define StMOG_Transmitter2 _MB(2,1,255,32,0)
|
|
138 #define StMOG_Transmitter3 _MB(2,1,255,33,0)
|
|
139 #define StMOG_Transmitter4 _MB(2,1,255,34,0)
|
|
140 #define StMOG_Transmitter5 _MB(2,1,255,35,0)
|
|
141 //#define StMOG_Transmitter6 _MB(2,1,255,36,0)
|
|
142 //#define StMOG_Transmitter7 _MB(2,1,255,37,0)
|
|
143 //#define StMOG_Transmitter8 _MB(2,1,255,38,0)
|
|
144 //#define StMOG_Transmitter9 _MB(2,1,255,39,0)
|
|
145
|
|
146 #define StMOG_DM_ActiveBase _MB(2,1,6,255,0)
|
|
147 #define StMOG_DM_ExtraMix _MB(2,1,6,6,0)
|
|
148 /*
|
|
149 #define StMOG_DM_Active1 _MB(2,1,6,255,1)
|
|
150 #define StMOG_DM_Active2 _MB(2,1,6,255,2)
|
|
151 #define StMOG_DM_Active3 _MB(2,1,6,255,3)
|
|
152 #define StMOG_DM_Active4 _MB(2,1,6,255,4)
|
|
153 #define StMOG_DM_Active5 _MB(2,1,6,255,5)
|
|
154 #define StMOG_DM_Active6 _MB(2,1,6,255,6)
|
|
155 #define StMOG_DM_Active7 _MB(2,1,6,255,7)
|
|
156 #define StMOG_DM_Active8 _MB(2,1,6,1,8)
|
|
157 #define StMOG_DM_Active9 _MB(2,1,6,1,9)
|
|
158 #define StMOG_DM_Active10 _MB(2,1,6,1,10)
|
|
159 */
|
|
160
|
|
161 /*
|
|
162 #define StMOG_Depth _MB(2,1,255, 2,0)
|
|
163 #define StMOG_DefaultDepth _MB(2,1,255, 4,0)
|
|
164 #define StMOG_Reset _MB(2,1,255, 5,0)
|
|
165 #define StMOG_ToggleDefault _MB(2,1,255, 6,0)
|
|
166 #define StMOG_SensorLink _MB(2,1,255, 9,0)
|
|
167 #define StMOG_Size _MB(2,1,255,10,0)
|
|
168 */
|
|
169
|
|
170 /* PAGE 2 */
|
|
171 #define StMCG _MB(2,2,0,0,0)
|
|
172 /* PAGE 3 */
|
|
173 #define StMSP _MB(2,3,0,0,0)
|
|
174
|
|
175 /* PAGE 3 EDIT FIELD CONTENT */
|
|
176 #define StMSP_ppo2_setting _MB(2,3,255,1,0)
|
|
177 #define StMSP_Depth _MB(2,3,255,2,0)
|
|
178 #define StMSP_Active _MB(2,3,255,3,0)
|
|
179 #define StMSP_First _MB(2,3,255,4,0)
|
|
180 #define StMSP_Select _MB(2,3,255,5,0)
|
|
181 #define StMSP_Sensor1 _MB(2,3,255,6,0)
|
|
182 #define StMSP_Sensor2 _MB(2,3,255,7,0)
|
|
183 #define StMSP_Sensor3 _MB(2,3,255,8,0)
|
|
184
|
|
185 /* PAGE 4 */
|
|
186 #define StMXTRA _MB(2,4,0,0,0)
|
|
187
|
|
188 /* PAGE 4 MENU EDIT */
|
|
189 #define StMXTRA_ResetStopwatch _MB(2,4,1,1,0)
|
|
190 #define StMXTRA_CompassHeading _MB(2,4,2,1,0)
|
|
191
|
|
192 /* PAGE 5 */
|
|
193 #define StMDECO _MB(2,5,0,0,0)
|
|
194
|
|
195 /* PAGE 5 MENU EDIT */
|
|
196 /*
|
|
197 #define StMDECO1 _MB(2,5,1,0,0)
|
|
198 #define StMDECO2 _MB(2,5,2,0,0)
|
|
199 #define StMDECO3 _MB(2,5,3,0,0)
|
|
200 #define StMDECO4 _MB(2,5,4,0,0)
|
|
201 #define StMDECO5 _MB(2,5,5,0,0)
|
|
202 #define StMDECO6 _MB(2,5,6,0,0)
|
|
203 */
|
|
204
|
|
205 /* PAGE 5 EDIT FIELD CONTENT */
|
|
206 #define StMDECO1_OC _MB(2,5,1,1,0)
|
|
207 #define StMDECO1_CC _MB(2,5,1,2,0)
|
|
208 #define StMDECO1_Apnea _MB(2,5,1,3,0)
|
|
209 #define StMDECO1_Gauge _MB(2,5,1,4,0)
|
|
210
|
|
211 #define StMDECO2_CCRmode _MB(2,5,2,1,0)
|
|
212 #define StMDECO3_PPO2Max _MB(2,5,3,1,0)
|
|
213 #define StMDECO4_SafetyStop _MB(2,5,4,1,0)
|
|
214 #define StMDECO5_FUTURE _MB(2,5,5,1,0)
|
|
215 #define StMDECO6_SALINITY _MB(2,5,6,1,0)
|
|
216
|
|
217 /* PAGE 6 */
|
|
218 #define StMDECOP _MB(2,6,0,0,0)
|
|
219
|
|
220 #define StMDECOP1_Algorithm _MB(2,6,1,1,0)
|
|
221 #define StMDECOP2_VPM _MB(2,6,2,1,0)
|
|
222 #define StMDECOP3_GF _MB(2,6,3,1,0)
|
|
223 #define StMDECOP4_AltGF _MB(2,6,4,1,0)
|
|
224 #define StMDECOP5_LASTSTOP _MB(2,6,5,1,0)
|
|
225
|
|
226 #define StMDECOP7_ActiveGF _MB(2,6,7,1,0)
|
|
227 #define StMDECOP8_ActiveVPM _MB(2,6,8,1,0)
|
|
228 #define StMDECOP9_ActiveAltGF _MB(2,6,9,1,0)
|
|
229
|
|
230 /* PAGE 7 */
|
|
231 #define StMHARD _MB(2,7,0,0,0)
|
|
232
|
|
233 /* PAGE 7 EDIT FIELD CONTENT */
|
|
234
|
|
235
|
|
236 #define StMHARD1_Bluetooth _MB(2,7,1,1,0)
|
|
237
|
|
238 #define StMHARD2_Compass_SetCourse _MB(2,7,2,2,0)
|
|
239 #define StMHARD2_Compass_ResetCourse _MB(2,7,2,3,0)
|
|
240 #define StMHARD2_Compass_Calibrate _MB(2,7,2,4,0)
|
|
241
|
|
242 //#define StMHARD2_Exit _MB(2,7,2,2,0)
|
|
243
|
|
244 #define StMHARD3_O2_Sensor1 _MB(2,7,3,1,0)
|
|
245 #define StMHARD3_O2_Sensor2 _MB(2,7,3,2,0)
|
|
246 #define StMHARD3_O2_Sensor3 _MB(2,7,3,3,0)
|
|
247 #define StMHARD3_O2_Fallback _MB(2,7,3,4,0)
|
|
248
|
|
249 #define StMHARD4_BrightnessEco _MB(2,7,4,1,0)
|
|
250 #define StMHARD4_BrightnessStd _MB(2,7,4,2,0)
|
|
251 #define StMHARD4_BrightnessHigh _MB(2,7,4,3,0)
|
|
252 #define StMHARD4_BrightnessMax _MB(2,7,4,4,0)
|
|
253
|
|
254 #define StMHARD5_Button1 _MB(2,7,5,1,0)
|
|
255 #define StMHARD5_ButtonBalance1 _MB(2,7,5,2,0)
|
|
256 #define StMHARD5_ButtonBalance2 _MB(2,7,5,3,0)
|
|
257 #define StMHARD5_ButtonBalance3 _MB(2,7,5,4,0)
|
|
258
|
|
259 #define StMHARD6_ScooterDrag _MB(2,7,6,1,0)
|
|
260 #define StMHARD6_ScooterLoad _MB(2,7,6,2,0)
|
|
261 #define StMHARD6_ScooterBatt _MB(2,7,6,3,0)
|
|
262
|
|
263 //#define StMHARD6_UpdateCPU2_No _MB(2,7,6,1,0)
|
|
264 //#define StMHARD6_UpdateCPU2_Yes _MB(2,7,6,2,0)
|
|
265 //#define StMHARD6_UpdateCPU2_Now _MB(2,7,6,3,0)
|
|
266
|
|
267 /* PAGE 8 */
|
|
268 #define StMSYS _MB(2,8,0,0,0)
|
|
269
|
|
270 /* PAGE 8 EDIT FIELD CONTENT */
|
|
271 #define StMSYS1_Date _MB(2,8,1,1,0)
|
|
272 #define StMSYS1_Time _MB(2,8,1,2,0)
|
|
273 #define StMSYS1_DDMMYY _MB(2,8,1,3,0)
|
|
274 #define StMSYS1_MMDDYY _MB(2,8,1,4,0)
|
|
275 #define StMSYS1_YYMMDD _MB(2,8,1,5,0)
|
|
276 #define StMSYS1_DST _MB(2,8,1,6,0)
|
|
277
|
|
278 #define StMSYS2_English _MB(2,8,2,1,0)
|
|
279 #define StMSYS2_German _MB(2,8,2,2,0)
|
|
280 #define StMSYS2_French _MB(2,8,2,3,0)
|
|
281 #define StMSYS2_Italian _MB(2,8,2,4,0)
|
|
282 #define StMSYS2_Espanol _MB(2,8,2,5,0)
|
|
283
|
|
284 #define StMSYS3_Units _MB(2,8,3,1,0)
|
|
285 #define StMSYS3_Colors _MB(2,8,3,2,0)
|
|
286 #define StMSYS3_Debug _MB(2,8,3,3,0)
|
|
287
|
|
288 #define StMSYS4_CViewTimeout _MB(2,8,4,1,0)
|
|
289 #define StMSYS4_CViewStandard _MB(2,8,4,2,0)
|
|
290 #define StMSYS4_CornerTimeout _MB(2,8,4,3,0)
|
|
291 #define StMSYS4_CornerStandard _MB(2,8,4,4,0)
|
|
292 #define StMSYS4_ExtraDisplay _MB(2,8,4,5,0)
|
|
293
|
|
294 #define StMSYS5_Info _MB(2,8,5,1,0)
|
|
295
|
|
296
|
|
297 #define StMSYS6_Exit _MB(2,8,6,1,0)
|
|
298 #define StMSYS6_LogbookOffset _MB(2,8,6,7,0)
|
|
299 #define StMSYS6_ResetAll _MB(2,8,6,2,0)
|
|
300 #define StMSYS6_ResetDeco _MB(2,8,6,3,0)
|
|
301 #define StMSYS6_Reboot _MB(2,8,6,4,0)
|
|
302 #define StMSYS6_Maintenance _MB(2,8,6,5,0)
|
|
303 #define StMSYS6_ResetLogbook _MB(2,8,6,6,0)
|
|
304 #define StMSYS6_SetBattCharge _MB(2,8,6,7,0)
|
|
305 #define StMSYS6_RebootRTE _MB(2,8,6,8,0)
|
|
306 #define StMSYS6_RebootMainCPU _MB(2,8,6,9,0)
|
|
307 #define StMSYS6_ScreenTest _MB(2,8,6,10,0)
|
|
308 #define StMSYS6_SetFactoryBC _MB(2,8,6,11,0)
|
|
309
|
|
310
|
|
311 /* PAGE 9 */
|
|
312 #define StMPLAN _MB(2,9,0,0,0)
|
|
313
|
|
314 /* PAGE 9 EDIT FIELD CONTENT */
|
|
315 #define StMPLAN2_Interval _MB(2,9,2,1,0)
|
|
316 #define StMPLAN3_DiveTime _MB(2,9,3,1,0)
|
|
317 #define StMPLAN4_MaxDepth _MB(2,9,4,1,0)
|
|
318 #define StMPLAN5_ExitResult _MB(2,9,5,1,0)
|
|
319 #define StMPLAN4_Settings _MB(2,9,6,1,0)
|
|
320
|
|
321
|
|
322 //#define StMDECO6_SALINITY _MB(2,5,6,1,0)
|
|
323 //#define StMDECO6_DefaultSAL _MB(2,5,6,2,0)
|
|
324
|
|
325
|
|
326
|
|
327
|
|
328 //#define StMDECO7_AMV _MB(2,5,7,1,0)
|
|
329 //#define StMDECO7_DefaultAMV _MB(2,5,7,2,0)
|
|
330 //#define StMDECO7_RESERVE _MB(2,5,7,3,0)
|
|
331
|
|
332
|
|
333 /*
|
|
334 typedef struct
|
|
335 {
|
|
336 uint32_t id;
|
|
337 int8_t implemented;
|
|
338 int8_t enabled;
|
|
339 uint32_t pointer;
|
|
340 uint8_t type;
|
|
341 } SStateOfMachine;
|
|
342 */
|
|
343
|
|
344 typedef struct
|
|
345 {
|
|
346 uint8_t base;
|
|
347 uint8_t page;
|
|
348 uint8_t line;
|
|
349 uint8_t field;
|
|
350 uint8_t mode;
|
|
351 } SStateList;
|
|
352
|
|
353
|
|
354
|
|
355 #endif /* TSTRUCTURE_H */
|
|
356
|
|
357 /************************ (C) COPYRIGHT heinrichs weikamp *****END OF FILE****/
|