view Small_CPU/Inc/externalInterface.h @ 684:9bc817e9e221 Betatest

Ignore automatic setpoint changes during ascend: In the previous version setpoint changes which have been configured for descending were considered for deco calculation in case one or more additional diluents have been activated. This procedure does not fit to the common way to keep setpoint high till end of the dive in order to get rid of the deco time. In the new implementation the OSTC assumes that the current setpoint is used till the end of the dive.
author Ideenmodellierer
date Thu, 02 Jun 2022 20:24:59 +0200
parents 1b995079c045
children 52d68cf9994c
line wrap: on
line source

/**
  ******************************************************************************
  * @file    externalInterface.h
  * @author  heinrichs weikamp gmbh
  * @version V0.0.1
  * @date    07-Nov-2020
  * @brief	 Interface functionality to proceed external analog signal via i2c connection
  *
  @verbatim
  ==============================================================================
                        ##### How to use #####
  ==============================================================================
  @endverbatim
  ******************************************************************************
  * @attention
  *
  * <h2><center>&copy; COPYRIGHT(c) 2014 heinrichs weikamp</center></h2>
  *
  ******************************************************************************
  */

/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef EXTERNAL_INTERFACE_H
#define EXTERNAL_INTERFACE_H

#ifdef __cplusplus
 extern "C" {
#endif

/* Includes ------------------------------------------------------------------*/

#define MAX_ADC_CHANNEL		(3u)		/* number of channels to be read */
#define EXTERNAL_ADC_NO_DATA	0xFF

#define EXT33V_CONTROL_PIN				GPIO_PIN_7	/* PortC */

void externalInterface_Init(void);
void externalInterface_InitPower33(void);
uint8_t externalInterface_StartConversion(uint8_t channel);
uint8_t externalInterface_ReadAndSwitch();
float externalInterface_CalculateADCValue(uint8_t channel);
float getExternalInterfaceChannel(uint8_t channel);
void externalInterface_SwitchPower33(uint8_t state);
uint8_t externalInterface_isEnabledPower33();

void externalInterface_SetCO2Value(uint16_t CO2_ppm);
void externalInterface_SetCO2SignalStrength(uint16_t LED_qa);
uint16_t externalInterface_GetCO2Value(void);
uint16_t externalInterface_GetCO2SignalStrength(void);
void externalInterface_SetCO2State(uint16_t state);
uint16_t externalInterface_GetCO2State(void);

void externalInterface_ExecuteCmd(uint16_t Cmd);

#endif /* EXTERNAL_INTERFACE_H */