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_UpdateCPU2_No _MB(2,7,6,1,0)
+ − 260 //#define StMHARD6_UpdateCPU2_Yes _MB(2,7,6,2,0)
+ − 261 //#define StMHARD6_UpdateCPU2_Now _MB(2,7,6,3,0)
+ − 262
+ − 263 /* PAGE 8 */
+ − 264 #define StMSYS _MB(2,8,0,0,0)
+ − 265
+ − 266 /* PAGE 8 EDIT FIELD CONTENT */
+ − 267 #define StMSYS1_Date _MB(2,8,1,1,0)
+ − 268 #define StMSYS1_Time _MB(2,8,1,2,0)
+ − 269 #define StMSYS1_DDMMYY _MB(2,8,1,3,0)
+ − 270 #define StMSYS1_MMDDYY _MB(2,8,1,4,0)
+ − 271 #define StMSYS1_YYMMDD _MB(2,8,1,5,0)
+ − 272 #define StMSYS1_DST _MB(2,8,1,6,0)
+ − 273
+ − 274 #define StMSYS2_English _MB(2,8,2,1,0)
+ − 275 #define StMSYS2_German _MB(2,8,2,2,0)
+ − 276 #define StMSYS2_French _MB(2,8,2,3,0)
+ − 277 #define StMSYS2_Italian _MB(2,8,2,4,0)
+ − 278 #define StMSYS2_Espanol _MB(2,8,2,5,0)
+ − 279
+ − 280 #define StMSYS3_Units _MB(2,8,3,1,0)
+ − 281 #define StMSYS3_Colors _MB(2,8,3,2,0)
+ − 282 #define StMSYS3_Debug _MB(2,8,3,3,0)
+ − 283
+ − 284 #define StMSYS4_CViewTimeout _MB(2,8,4,1,0)
+ − 285 #define StMSYS4_CViewStandard _MB(2,8,4,2,0)
+ − 286 #define StMSYS4_CornerTimeout _MB(2,8,4,3,0)
+ − 287 #define StMSYS4_CornerStandard _MB(2,8,4,4,0)
+ − 288 #define StMSYS4_ExtraDisplay _MB(2,8,4,5,0)
+ − 289
+ − 290 #define StMSYS5_Info _MB(2,8,5,1,0)
+ − 291
+ − 292
+ − 293 #define StMSYS6_Exit _MB(2,8,6,1,0)
+ − 294 #define StMSYS6_LogbookOffset _MB(2,8,6,7,0)
+ − 295 #define StMSYS6_ResetAll _MB(2,8,6,2,0)
+ − 296 #define StMSYS6_ResetDeco _MB(2,8,6,3,0)
+ − 297 #define StMSYS6_Reboot _MB(2,8,6,4,0)
+ − 298 #define StMSYS6_Maintenance _MB(2,8,6,5,0)
+ − 299 #define StMSYS6_ResetLogbook _MB(2,8,6,6,0)
+ − 300 #define StMSYS6_SetBattCharge _MB(2,8,6,7,0)
+ − 301 #define StMSYS6_RebootRTE _MB(2,8,6,8,0)
+ − 302 #define StMSYS6_RebootMainCPU _MB(2,8,6,9,0)
+ − 303 #define StMSYS6_ScreenTest _MB(2,8,6,10,0)
+ − 304 #define StMSYS6_SetFactoryBC _MB(2,8,6,11,0)
+ − 305
+ − 306
+ − 307 /* PAGE 9 */
+ − 308 #define StMPLAN _MB(2,9,0,0,0)
+ − 309
+ − 310 /* PAGE 9 EDIT FIELD CONTENT */
+ − 311 #define StMPLAN2_Interval _MB(2,9,2,1,0)
+ − 312 #define StMPLAN3_DiveTime _MB(2,9,3,1,0)
+ − 313 #define StMPLAN4_MaxDepth _MB(2,9,4,1,0)
+ − 314 #define StMPLAN5_ExitResult _MB(2,9,5,1,0)
+ − 315 #define StMPLAN4_Settings _MB(2,9,6,1,0)
+ − 316
+ − 317
+ − 318 //#define StMDECO6_SALINITY _MB(2,5,6,1,0)
+ − 319 //#define StMDECO6_DefaultSAL _MB(2,5,6,2,0)
+ − 320
+ − 321
+ − 322
+ − 323
+ − 324 //#define StMDECO7_AMV _MB(2,5,7,1,0)
+ − 325 //#define StMDECO7_DefaultAMV _MB(2,5,7,2,0)
+ − 326 //#define StMDECO7_RESERVE _MB(2,5,7,3,0)
+ − 327
+ − 328
+ − 329 /*
+ − 330 typedef struct
+ − 331 {
+ − 332 uint32_t id;
+ − 333 int8_t implemented;
+ − 334 int8_t enabled;
+ − 335 uint32_t pointer;
+ − 336 uint8_t type;
+ − 337 } SStateOfMachine;
+ − 338 */
+ − 339
+ − 340 typedef struct
+ − 341 {
+ − 342 uint8_t base;
+ − 343 uint8_t page;
+ − 344 uint8_t line;
+ − 345 uint8_t field;
+ − 346 uint8_t mode;
+ − 347 } SStateList;
+ − 348
+ − 349
+ − 350
+ − 351 #endif /* TSTRUCTURE_H */
+ − 352
+ − 353 /************************ (C) COPYRIGHT heinrichs weikamp *****END OF FILE****/