comparison Discovery/Inc/tStructure.h @ 38:5f11787b4f42

include in ostc4 repository
author heinrichsweikamp
date Sat, 28 Apr 2018 11:52:34 +0200
parents
children cc9c18075e00
comparison
equal deleted inserted replaced
37:ccc45c0e1ea2 38:5f11787b4f42
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****/