/** 
**************************************************************************
* @file mylibs_include.h
* @brief Заголочный файл для всех библиотек
**************************************************************************
@details
Здесь нужно собрать библиотеки и дефайны, которые должны быть видны во всем проекте,
чтобы не подключать 100 инклюдов в каждом ".c" файле
**************************************************************************
* @defgroup MYLIBS_ALL      My Libs
* @brief 		Все используемые MyLibs библиотеки
*
*************************************************************************/
#ifndef __MYLIBS_INCLUDE_H_
#define __MYLIBS_INCLUDE_H_

#include "mylibs_defs.h"


#ifdef ARM_MATH_CM4
	#include "arm_math.h"
#endif


#ifdef INCLUDE_BIT_ACCESS_LIB
#include "bit_access.h"
#endif

#ifdef INCLUDE_TRACKERS_LIB
#include "trackers.h"
#endif

#ifdef INCLUDE_TRACE_LIB
#include "trace.h"
#endif



#ifdef INCLUDE_GENERAL_PERIPH_LIBS

#include "general_flash.h"
#include "general_gpio.h"
#ifdef HAL_SPI_MODULE_ENABLED
#include "general_spi.h"
#endif
#ifdef HAL_UART_MODULE_ENABLED
#include "general_uart.h"
#endif
#ifdef HAL_TIM_MODULE_ENABLED
#include "general_tim.h"
#endif

#endif //INCLUDE_GENERAL_PERIPH_LIBS




/////////////////////////---USER SETTINGS---/////////////////////////
// user includes
#include "stdlib.h"
#include "string.h"
#include "stdio.h"
#include "math.h"

#include "main.h"
#include "modbus_data.h"
#include "general_gpio.h"

/** @brief Struct for trackers for Measure */
/** @brief Struct for trackers for RS */
typedef TrackerTypeDef(RS_USER_VARS_NUMB)      RS_TrackerTypeDef;
/** @brief Struct for trackers for ADC */
typedef TrackerTypeDef(ADC_USER_VARS_NUMB)     ADC_TrackerTypeDef;
/** @brief Struct for trackers for ADC Channel */
typedef TrackerTypeDef(ADC_CH_USER_VARS_NUMB)  ADCChannel_TrackerTypeDef;
/////////////////////////---USER SETTINGS---/////////////////////////


#endif // __MYLIBS_INCLUDE_H_

