view Small_CPU/Inc/gpio.h @ 976:0b81ac558e89 Evo_2_23

Devbugfix UART buffer cleaning: In the previous version a buffer cleaning function was used which resets the ringbuffer read index. As result the processing of data was stopped until the DMA write comes to the index 0. When reaching it the complete buffer was proceeded including possibly invalid data. The usage of the cleanbuffer function was replaced by the flush buffer function (meaning the data is discarded but the data index is maintained). There was already a function for this. Because the function was 99% the same as the read function, it was integrated into the ReadData function. Calling the function with parameter flush = 1 will result in a buffer flush. The workaround of the previous revision was updated to only be applied in case a DiveO2 sensor is operated in stand alone mode.
author Ideenmodellierer
date Wed, 29 Jan 2025 17:21:20 +0100 (2 months ago)
parents e9c37071933b
children
line wrap: on
line source
/**
  ******************************************************************************
  * @file    gpio.h
  * @author  heinrichs weikamp gmbh
  * @version V0.0.1
  * @date    08-Dec-2024
  * @brief   new GPIO definitions (GPIO_V2)
  ******************************************************************************
  * @attention
  *
  * <h2><center>&copy; COPYRIGHT(c) 2024 heinrichs weikamp</center></h2>
  *
  ******************************************************************************
  */ 

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

#ifdef __cplusplus
 extern "C" {
#endif

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

#include "configuration.h"

#define VIBRATION_CONTROL_PIN			GPIO_PIN_3		/* PortA */
#define LED_CONTROL_PIN_RED        		GPIO_PIN_2		/* PortA */
#define LED_CONTROL_PIN_GREEN      		GPIO_PIN_1		/* PortA */
#define MAINCPU_CONTROL_PIN				GPIO_PIN_0		/* PortC */
#define	GPS_POWER_CONTROL_PIN			GPIO_PIN_15		/* PortB */
#define	GPS_BCKP_CONTROL_PIN			GPIO_PIN_14		/* PortB */

void GPIO_LEDs_VIBRATION_Init(void);
void GPIO_GNSS_Init();
void GPIO_Power_MainCPU_Init(void);
void GPIO_Power_MainCPU_ON(void);
void GPIO_Power_MainCPU_OFF(void);

#ifdef ENABLE_GPIO_V2
void GPIO_LED_RED_OFF(void);
void GPIO_LED_RED_ON(void);
void GPIO_LED_GREEN_OFF(void);
void GPIO_LED_GREEN_ON(void);
void GPIO_VIBRATION_OFF(void);
void GPIO_VIBRATION_ON(void);
void GPIO_GPS_OFF(void);
void GPIO_GPS_ON(void);
void GPIO_GPS_BCKP_OFF(void);
void GPIO_GPS_BCKP_ON(void);

void GPIO_HandleBuzzer();
#endif
#ifdef __cplusplus
}
#endif
#endif /* GPIO_H */



/************************ (C) COPYRIGHT heinrichs weikamp *****END OF FILE****/