38
+ − 1 ///////////////////////////////////////////////////////////////////////////////
+ − 2 /// -*- coding: UTF-8 -*-
+ − 3 ///
+ − 4 /// \file Discovery/Inc/tHome.h
+ − 5 /// \brief Control for Surface and Dive Templates
+ − 6 /// \author heinrichs weikamp gmbh
+ − 7 /// \date 10-November-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 THOME_H
+ − 29 #define THOME_H
+ − 30
+ − 31 /* Includes ------------------------------------------------------------------*/
+ − 32
+ − 33 #include <stdio.h>
+ − 34 #include <string.h>
+ − 35 #include "stm32f4xx_hal.h"
+ − 36 #include "base.h"
+ − 37 #include "gfx.h"
+ − 38 #include "gfx_colors.h"
+ − 39 #include "gfx_engine.h"
+ − 40 #include "text_multilanguage.h"
+ − 41 #include "settings.h"
+ − 42 #include "data_central.h"
+ − 43 #include "data_exchange.h"
+ − 44 #include "check_warning.h"
493
b560e474e319
Added possibility to switch between "classic" bigfont views and a selection with a new information combination
Ideenmodellierer
diff
changeset
+ − 45 #include "configuration.h"
38
+ − 46
+ − 47 extern const uint16_t BigFontSeperationLeftRight; // in t3.c
+ − 48 extern const uint16_t BigFontSeperationTopBottom; // in t3.c
+ − 49
+ − 50 #define MAX_AGE_DECOINFO_MS (120000)
+ − 51
+ − 52 enum EXTRADISPLAYS
+ − 53 {
+ − 54 EXTRADISPLAY_none = 0,
+ − 55 EXTRADISPLAY_BIGFONT,
+ − 56 EXTRADISPLAY_DECOGAME,
+ − 57 EXTRADISPLAY_END
+ − 58 };
+ − 59
+ − 60 enum CUSTOMVIEWS
+ − 61 {
+ − 62 CVIEW_noneOrDebug = 0,
+ − 63 CVIEW_sensors,
+ − 64 CVIEW_Compass,
+ − 65 CVIEW_Decolist,
+ − 66 CVIEW_Tissues,
+ − 67 CVIEW_Profile,
+ − 68 CVIEW_EADTime,
+ − 69 CVIEW_Gaslist,
+ − 70 CVIEW_sensors_mV,
+ − 71 CVIEW_Hello,
+ − 72 CVIEW_CompassDebug,
+ − 73 CVIEW_SummaryOfLeftCorner,
672
+ − 74 CVIEW_Charger,
38
+ − 75 CVIEW_END,
+ − 76 CVIEW_T3_Decostop,
+ − 77 CVIEW_T3_TTS,
+ − 78 CVIEW_T3_MaxDepth,
+ − 79 CVIEW_T3_ppO2andGas,
+ − 80 CVIEW_T3_StopWatch,
+ − 81 CVIEW_T3_GasList,
+ − 82 CVIEW_T3_Temperature,
+ − 83 CVIEW_T3_ApnoeSurfaceInfo,
493
b560e474e319
Added possibility to switch between "classic" bigfont views and a selection with a new information combination
Ideenmodellierer
diff
changeset
+ − 84 CVIEW_T3_Navigation,
b560e474e319
Added possibility to switch between "classic" bigfont views and a selection with a new information combination
Ideenmodellierer
diff
changeset
+ − 85 CVIEW_T3_DepthData,
542
+ − 86 CVIEW_T3_DecoTTS,
594
+ − 87 #ifdef ENABLE_T3_PROFILE_VIEW
+ − 88 CVIEW_T3_Profile,
+ − 89 #endif
38
+ − 90 CVIEW_T3_END
+ − 91 };
+ − 92
+ − 93 // for custom view switch on/off 161122 hw
379
+ − 94 extern const uint8_t cv_changelist[];
493
b560e474e319
Added possibility to switch between "classic" bigfont views and a selection with a new information combination
Ideenmodellierer
diff
changeset
+ − 95 extern const uint8_t cv_changelist_BS[];
b560e474e319
Added possibility to switch between "classic" bigfont views and a selection with a new information combination
Ideenmodellierer
diff
changeset
+ − 96
38
+ − 97 #define CHECK_BIT_THOME(var,pos) (((var)>>(pos)) & 1)
+ − 98
+ − 99 typedef struct
+ − 100 {
+ − 101 uint16_t Hours;
+ − 102 uint16_t Minutes;
+ − 103 uint16_t Seconds;
+ − 104 uint32_t Total;
+ − 105
+ − 106 } SDivetime;
+ − 107
+ − 108
+ − 109 typedef struct
+ − 110 {
+ − 111 uint8_t Days;
+ − 112 uint8_t Hours;
+ − 113 uint8_t Minutes;
+ − 114 uint8_t Seconds;
+ − 115 uint32_t Total;
+ − 116 } SSurfacetime;
+ − 117
+ − 118
+ − 119 extern _Bool warning_count_high_time;
+ − 120 extern _Bool display_count_high_time;
+ − 121 extern uint8_t errorsInSettings;
+ − 122
+ − 123
+ − 124 void tHome_init(void);
+ − 125 void tHome_refresh(void);
+ − 126 void tHome_sleepmode_fun(void);
+ − 127 void set_globalState_tHome(void);
+ − 128 void tHome_change_field_button_pressed(void);
361
+ − 129 void tHome_change_customview_button_pressed(uint8_t action);
38
+ − 130
+ − 131 void tHome_findNextStop(const uint16_t *list, uint8_t *depthOut, uint16_t *lengthOut);
+ − 132 void tHomeDiveMenuControl(uint8_t sendAction);
+ − 133 void tHome_tick(void);
+ − 134
+ − 135 uint8_t tHome_gas_writer(uint8_t oxygen_percentage, uint8_t helium_percentage, char *text);
+ − 136 uint32_t tHome_DateCode(RTC_DateTypeDef *dateInput);
+ − 137
+ − 138 void tHome_init_compass(void);
505
+ − 139 uint8_t tHome_getNumberOfAvailableCVs(const uint8_t* pcv_list);
38
+ − 140
+ − 141 float t3_basics_lines_depth_and_divetime(GFX_DrawCfgScreen *tXscreen, GFX_DrawCfgWindow* tXl1, GFX_DrawCfgWindow* tXr1, uint8_t mode);
+ − 142 void t3_basics_battery_low_customview_extra(GFX_DrawCfgWindow* tXc1);
+ − 143 void t3_basics_show_customview_warnings(GFX_DrawCfgWindow* tXc1);
+ − 144 void t3_basics_refresh_customview(float depth, uint8_t tX_selection_customview, GFX_DrawCfgScreen *tXscreen, GFX_DrawCfgWindow* tXc1, GFX_DrawCfgWindow* tXc2, uint8_t mode);
+ − 145 void t3_basics_refresh_apnoeRight(float depth, uint8_t tX_selection_customview, GFX_DrawCfgScreen *tXscreen, GFX_DrawCfgWindow* tXc1, GFX_DrawCfgWindow* tXc2, uint8_t mode);
+ − 146 //void _findNextStop(const uint16_t *list, uint8_t *depthOut, uint16_t *lengthOut);
+ − 147 void t3_basics_colorscheme_mod(char *text);
505
+ − 148 void t3_basics_change_customview(uint8_t *tX_selection_customview, const uint8_t *tX_customviews, uint8_t action);
38
+ − 149
+ − 150 uint8_t tHome_show_lost_connection_count(GFX_DrawCfgScreen *ScreenToWriteOn);
+ − 151
+ − 152 #endif /* THOME_H */