view Discovery/Inc/base.h @ 339:37f45300bc2e
PressureMeasure_Improvment
Apply averaging to pressure measurement: In pre versions calculated pressure value jittered +/-10hPa. Since we measure the pressure several time a second but only use one value a second, calc average including not used values
Activated pressure / temperature offsets: The functionality to store offsets was already present in the firmware but values have not been apllied in the RTE => added functionality to include offsets in calculation
Set Max possible surface pressure to 1070hPa (Black sea level)
author
ideenmodellierer
date
Sat, 17 Aug 2019 19:03:47 +0200 (2019-08-17)
parents
5f11787b4f42
children
b111fc4250e9
line source
///////////////////////////////////////////////////////////////////////////////+ −
/// -*- coding: UTF-8 -*-+ −
///+ −
/// \file Discovery/Inc/base.h+ −
/// \brief main(): init hardware and start sub-systems+ −
/// \author MCD Application Team+ −
/// \date 26-February-2014+ −
///+ −
/// $Id$+ −
///////////////////////////////////////////////////////////////////////////////+ −
/// \par Copyright (c) 2014-2018 Heinrichs Weikamp gmbh+ −
///+ −
/// This program is free software: you can redistribute it and/or modify+ −
/// it under the terms of the GNU General Public License as published by+ −
/// the Free Software Foundation, either version 3 of the License, or+ −
/// (at your option) any later version.+ −
///+ −
/// This program is distributed in the hope that it will be useful,+ −
/// but WITHOUT ANY WARRANTY; without even the implied warranty of+ −
/// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the+ −
/// GNU General Public License for more details.+ −
///+ −
/// You should have received a copy of the GNU General Public License+ −
/// along with this program. If not, see <http://www.gnu.org/licenses/>.+ −
//////////////////////////////////////////////////////////////////////////////+ −
/// \par COPYRIGHT(c) 2014 STMicroelectronics+ −
///+ −
/// Redistribution and use in source and binary forms, with or without modification,+ −
/// are permitted provided that the following conditions are met:+ −
/// 1. Redistributions of source code must retain the above copyright notice,+ −
/// this list of conditions and the following disclaimer.+ −
/// 2. Redistributions in binary form must reproduce the above copyright notice,+ −
/// this list of conditions and the following disclaimer in the documentation+ −
/// and/or other materials provided with the distribution.+ −
/// 3. Neither the name of STMicroelectronics nor the names of its contributors+ −
/// may be used to endorse or promote products derived from this software+ −
/// without specific prior written permission.+ −
///+ −
/// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"+ −
/// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE+ −
/// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE+ −
/// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE+ −
/// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL+ −
/// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR+ −
/// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER+ −
/// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,+ −
/// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE+ −
/// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.+ −
//////////////////////////////////////////////////////////////////////////////+ −
+ −
/* Define to prevent recursive inclusion -------------------------------------*/+ −
#ifndef BASE_H+ −
#define BASE_H+ −
+ −
/* Includes ------------------------------------------------------------------*/+ −
#include "stm32f4xx_hal.h"+ −
#include "tStructure.h"+ −
+ −
/* Exported types ------------------------------------------------------------*/+ −
/* Exported constants --------------------------------------------------------*/+ −
/* Exported macro ------------------------------------------------------------*/+ −
+ −
#define TOP_LAYER 1+ −
#define BACKGRD_LAYER 0+ −
+ −
#define SURFMODE 1+ −
#define DIVEMODE 2+ −
+ −
typedef enum+ −
{+ −
ST_Boot = 0,+ −
ST_Surface,+ −
ST_Dive,+ −
ST_Menu,+ −
ST_END+ −
} SState;+ −
+ −
typedef enum+ −
{+ −
ACTION_IDLE_TICK = 0,+ −
ACTION_IDLE_SECOND,+ −
ACTION_MODE_CHANGE,+ −
ACTION_TIMEOUT,+ −
ACTION_BUTTON_CUSTOM,+ −
ACTION_BUTTON_BACK,+ −
ACTION_BUTTON_NEXT,+ −
ACTION_BUTTON_ENTER,+ −
ACTION_BUTTON_ENTER_FINAL,+ −
ACTION_END+ −
} SAction;+ −
+ −
/* Exported macro ------------------------------------------------------------*/+ −
/* Exported functions ------------------------------------------------------- */+ −
+ −
uint32_t get_globalState(void);+ −
void set_globalState(uint32_t newID);+ −
void get_globalStateList(SStateList *output);+ −
void set_globalState_Menu_Page(uint8_t page);+ −
void set_globalState_Menu_Line(uint8_t line);+ −
void get_idSpecificStateList(uint32_t id, SStateList *output);+ −
void delayMicros(uint32_t micros);+ −
void get_RTC_DateTime(RTC_DateTypeDef * sdatestructureget, RTC_TimeTypeDef * stimestructureget);+ −
void set_RTC_DateTime(RTC_DateTypeDef * sdatestructure, RTC_TimeTypeDef * stimestructure);+ −
uint8_t get_globalMode(void);+ −
void set_globalMode(uint8_t newMode);+ −
void set_globalState_Log_Page(uint8_t pageIsLine);+ −
void set_returnFromComm(void);+ −
uint8_t font_update_required(void);+ −
+ −
#endif /* BASE_H */+ −
+ −
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/+ −