Функции для работы с кнопками и диодами перенесены в модуль gpio_general
This commit is contained in:
parent
87849674ab
commit
b47fe883ff
128
diode_tester/Core/MyLibs/general_gpio.c
Normal file
128
diode_tester/Core/MyLibs/general_gpio.c
Normal file
@ -0,0 +1,128 @@
|
|||||||
|
/**
|
||||||
|
**************************************************************************
|
||||||
|
* @file general_gpio.c
|
||||||
|
* @brief Модуль для инициализации портов.
|
||||||
|
**************************************************************************
|
||||||
|
@verbatim
|
||||||
|
//-------------------Функции-------------------//
|
||||||
|
Functions: users
|
||||||
|
- GPIO_Clock_Enable Инициализация тактирования порта
|
||||||
|
@endverbatim
|
||||||
|
***************************************************************************/
|
||||||
|
#include "general_gpio.h"
|
||||||
|
|
||||||
|
//-------------------------------------------------------------------
|
||||||
|
//------------------------GPIO INIT FUNCTIONS------------------------
|
||||||
|
|
||||||
|
HAL_StatusTypeDef GPIO_Clock_Enable(GPIO_TypeDef *GPIOx)
|
||||||
|
{
|
||||||
|
HAL_StatusTypeDef status = HAL_OK;
|
||||||
|
// choose port for enable clock
|
||||||
|
if (GPIOx==GPIOA)
|
||||||
|
__HAL_RCC_GPIOA_CLK_ENABLE();
|
||||||
|
else if (GPIOx==GPIOB)
|
||||||
|
__HAL_RCC_GPIOB_CLK_ENABLE();
|
||||||
|
else if (GPIOx==GPIOC)
|
||||||
|
__HAL_RCC_GPIOC_CLK_ENABLE();
|
||||||
|
#ifdef GPIOD
|
||||||
|
else if (GPIOx==GPIOD)
|
||||||
|
__HAL_RCC_GPIOD_CLK_ENABLE();
|
||||||
|
#endif
|
||||||
|
#ifdef GPIOE
|
||||||
|
else if (GPIOx==GPIOE)
|
||||||
|
__HAL_RCC_GPIOE_CLK_ENABLE();
|
||||||
|
#endif
|
||||||
|
else
|
||||||
|
status = HAL_ERROR;
|
||||||
|
|
||||||
|
return status;
|
||||||
|
}
|
||||||
|
|
||||||
|
//------------------------GPIO INIT FUNCTIONS------------------------
|
||||||
|
//-------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
//-------------------------------------------------------------------
|
||||||
|
//------------------------GPIO LED FUNCTIONS-------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Включить светодиод
|
||||||
|
*/
|
||||||
|
void GPIO_LED_On(GPIO_LEDTypeDef *led)
|
||||||
|
{
|
||||||
|
led->state = LED_IS_ON;
|
||||||
|
HAL_GPIO_WritePin(led->LED_Port, led->LED_Pin, LED_ON);
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* @brief Выключить светодиод
|
||||||
|
*/
|
||||||
|
void GPIO_LED_Off(GPIO_LEDTypeDef *led)
|
||||||
|
{
|
||||||
|
led->state = LED_IS_OFF;
|
||||||
|
HAL_GPIO_WritePin(led->LED_Port, led->LED_Pin, LED_OFF);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Активировать моргание светодиодом
|
||||||
|
*/
|
||||||
|
void GPIO_LED_Blink_Start(GPIO_LEDTypeDef *led, uint32_t period)
|
||||||
|
{
|
||||||
|
led->state = LED_IS_BLINKING;
|
||||||
|
led->LED_Period = period;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Моргание светодиодом
|
||||||
|
*/
|
||||||
|
void GPIO_LED_Blink_Handle(GPIO_LEDTypeDef *led)
|
||||||
|
{
|
||||||
|
if(led->state == LED_IS_BLINKING)
|
||||||
|
{
|
||||||
|
uint32_t tickcurrent = HAL_GetTick();
|
||||||
|
if((tickcurrent - led->tickprev) > led->LED_Period)
|
||||||
|
{
|
||||||
|
HAL_GPIO_TogglePin(led->LED_Port, led->LED_Pin);
|
||||||
|
led->tickprev = tickcurrent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//------------------------GPIO LED FUNCTIONS-------------------------
|
||||||
|
//-------------------------------------------------------------------
|
||||||
|
|
||||||
|
//-------------------------------------------------------------------
|
||||||
|
//------------------------GPIO SW FUNCTIONS-------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Считать состоянии кнопки запуска
|
||||||
|
*/
|
||||||
|
uint8_t GPIO_Read_Swich(GPIO_SwitchTypeDef *sw)
|
||||||
|
{
|
||||||
|
|
||||||
|
if(HAL_GPIO_ReadPin(sw->Sw_Port, sw->Sw_Pin) == SW_ON)
|
||||||
|
{
|
||||||
|
sw->Sw_PrevState = 1;
|
||||||
|
|
||||||
|
if(sw->tickprev == 0)
|
||||||
|
sw->tickprev = HAL_GetTick();
|
||||||
|
|
||||||
|
if((HAL_GetTick() - sw->tickprev) > sw->Sw_FilterDelay)
|
||||||
|
{
|
||||||
|
if(HAL_GPIO_ReadPin(sw->Sw_Port, sw->Sw_Pin) == SW_ON)
|
||||||
|
{
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
sw->tickprev = 0;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
sw->Sw_PrevState = 0;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
//------------------------GPIO SW FUNCTIONS-------------------------
|
||||||
|
//-------------------------------------------------------------------
|
72
diode_tester/Core/MyLibs/general_gpio.h
Normal file
72
diode_tester/Core/MyLibs/general_gpio.h
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
/**
|
||||||
|
**************************************************************************
|
||||||
|
* @file general_gpio.h
|
||||||
|
* @brief Заголовочный файл для модуля инициализации портов.
|
||||||
|
*************************************************************************/
|
||||||
|
#ifndef __GPIO_GENERAL_H_
|
||||||
|
#define __GPIO_GENERAL_H_
|
||||||
|
|
||||||
|
#include "mylibs_defs.h"
|
||||||
|
|
||||||
|
|
||||||
|
#define SPI_Alternate_Mapping(INSTANCE) ((((INSTANCE) == TIM1) || ((INSTANCE) == TIM2))? GPIO_AF1_TIM1: \
|
||||||
|
(((INSTANCE) == TIM3) || ((INSTANCE) == TIM4) || ((INSTANCE) == TIM5))? GPIO_AF2_TIM3: \
|
||||||
|
(((INSTANCE) == TIM8) || ((INSTANCE) == TIM9) || ((INSTANCE) == TIM10) || ((INSTANCE) == TIM11))? GPIO_AF3_TIM8: \
|
||||||
|
(((INSTANCE) == TIM12) || ((INSTANCE) == TIM13) || ((INSTANCE) == TIM14))? GPIO_AF9_TIM12: \
|
||||||
|
(0))
|
||||||
|
|
||||||
|
|
||||||
|
#define TIM_Alternate_Mapping(INSTANCE) ((((INSTANCE) == TIM1) || ((INSTANCE) == TIM2))? GPIO_AF1_TIM1: \
|
||||||
|
(((INSTANCE) == TIM3) || ((INSTANCE) == TIM4) || ((INSTANCE) == TIM5))? GPIO_AF2_TIM3: \
|
||||||
|
(((INSTANCE) == TIM8) || ((INSTANCE) == TIM9) || ((INSTANCE) == TIM10) || ((INSTANCE) == TIM11))? GPIO_AF3_TIM8: \
|
||||||
|
(((INSTANCE) == TIM12) || ((INSTANCE) == TIM13) || ((INSTANCE) == TIM14))? GPIO_AF9_TIM12: \
|
||||||
|
(0))
|
||||||
|
|
||||||
|
|
||||||
|
typedef enum
|
||||||
|
{
|
||||||
|
LED_IS_OFF = 0,
|
||||||
|
LED_IS_ON = 1,
|
||||||
|
LED_IS_BLINKING = 2,
|
||||||
|
LED_IS_FADING = 3,
|
||||||
|
}GPIO_LEDStateTypeDef;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
GPIO_LEDStateTypeDef state;
|
||||||
|
|
||||||
|
GPIO_TypeDef *LED_Port;
|
||||||
|
uint32_t LED_Pin;
|
||||||
|
|
||||||
|
uint32_t LED_Period;
|
||||||
|
uint32_t tickprev;
|
||||||
|
}GPIO_LEDTypeDef;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
GPIO_TypeDef *Sw_Port;
|
||||||
|
uint32_t Sw_Pin;
|
||||||
|
|
||||||
|
uint32_t Sw_PrevState;
|
||||||
|
uint32_t Sw_FilterDelay;
|
||||||
|
uint32_t tickprev;
|
||||||
|
}GPIO_SwitchTypeDef;
|
||||||
|
|
||||||
|
/////////////////////////////////////////////////////////////////////
|
||||||
|
///////////////////////////---FUNCTIONS---///////////////////////////
|
||||||
|
HAL_StatusTypeDef GPIO_Clock_Enable(GPIO_TypeDef *GPIOx);
|
||||||
|
|
||||||
|
/* Считать состоянии кнопки запуска */
|
||||||
|
uint8_t GPIO_Read_Swich(GPIO_SwitchTypeDef *swstart);
|
||||||
|
/* Включить светодиод */
|
||||||
|
void GPIO_LED_On(GPIO_LEDTypeDef *led);
|
||||||
|
/* Выключить светодиод */
|
||||||
|
void GPIO_LED_Off(GPIO_LEDTypeDef *led);
|
||||||
|
/* Активировать моргание светодиодом */
|
||||||
|
void GPIO_LED_Blink_Start(GPIO_LEDTypeDef *led, uint32_t period);
|
||||||
|
/* Моргание светодиодом */
|
||||||
|
void GPIO_LED_Blink_Handle(GPIO_LEDTypeDef *led);
|
||||||
|
///////////////////////////---FUNCTIONS---///////////////////////////
|
||||||
|
|
||||||
|
|
||||||
|
#endif // __GPIO_GENERAL_H_
|
@ -64,6 +64,7 @@
|
|||||||
|
|
||||||
#include "main.h"
|
#include "main.h"
|
||||||
#include "modbus_data.h"
|
#include "modbus_data.h"
|
||||||
|
#include "general_gpio.h"
|
||||||
|
|
||||||
/** @brief Struct for trackers for Measure */
|
/** @brief Struct for trackers for Measure */
|
||||||
/** @brief Struct for trackers for RS */
|
/** @brief Struct for trackers for RS */
|
||||||
|
@ -4,108 +4,37 @@
|
|||||||
/**
|
/**
|
||||||
* @brief Инициализация структур интерфейса
|
* @brief Инициализация структур интерфейса
|
||||||
*/
|
*/
|
||||||
void TESTER_InterfaceInit(TESTER_SwitchStartTypeDef *swstart, TESTER_LEDsTypeDef *leds)
|
void TESTER_InterfaceInit(GPIO_SwitchTypeDef *swstart, TESTER_LEDsTypeDef *leds)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Включить индикацию таймаута старта при активации теста
|
* @brief Включить индикацию таймаута старта при активации теста
|
||||||
*/
|
*/
|
||||||
void TESTER_LED_TimeoutForStartTest(TESTER_LEDTypeDef *led)
|
void TESTER_LED_TimeoutForStartTest(GPIO_LEDTypeDef *led)
|
||||||
{
|
{
|
||||||
TESTER_LED_Off(led);
|
GPIO_LED_Off(led);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Включить индикацию прямого подключения диода
|
* @brief Включить индикацию прямого подключения диода
|
||||||
*/
|
*/
|
||||||
void TESTER_LED_TestingDiodeForward(TESTER_LEDTypeDef *led)
|
void TESTER_LED_TestingDiodeForward(GPIO_LEDTypeDef *led)
|
||||||
{
|
{
|
||||||
led->state = LED_IS_BLINKING;
|
GPIO_LED_Blink_Start(led, LED_FORWARD_DIODE_PERIOD);
|
||||||
led->period = LED_FORWARD_DIODE_PERIOD;
|
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* @brief Включить индикацию обратного подключения диода
|
* @brief Включить индикацию обратного подключения диода
|
||||||
*/
|
*/
|
||||||
void TESTER_LED_TestingDiodeReverse(TESTER_LEDTypeDef *led)
|
void TESTER_LED_TestingDiodeReverse(GPIO_LEDTypeDef *led)
|
||||||
{
|
{
|
||||||
led->state = LED_IS_BLINKING;
|
GPIO_LED_Blink_Start(led, LED_REVERSE_DIODE_PERIOD);
|
||||||
led->period = LED_REVERSE_DIODE_PERIOD;
|
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* @brief Выключить индикацию ожидания комманды
|
* @brief Выключить индикацию ожидания комманды
|
||||||
* @details Сделано через моргание, чтобы понимать, что системные тики работают
|
* @details Сделано через моргание, чтобы понимать, что системные тики работают
|
||||||
*/
|
*/
|
||||||
void TESTER_LED_WaitForAction(TESTER_LEDTypeDef *led)
|
void TESTER_LED_WaitForAction(GPIO_LEDTypeDef *led)
|
||||||
{
|
{
|
||||||
led->state = LED_IS_BLINKING;
|
GPIO_LED_Blink_Start(led, LED_BLINK_AS_ON);
|
||||||
led->period = LED_BLINK_AS_ON;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Считать состоянии кнопки запуска
|
|
||||||
*/
|
|
||||||
uint8_t TESTER_ReadSwichStart(TESTER_SwitchStartTypeDef *swstart)
|
|
||||||
{
|
|
||||||
|
|
||||||
if(HAL_GPIO_ReadPin(swstart->Sw_Port, swstart->Sw_Pin) == SW_ON)
|
|
||||||
{
|
|
||||||
if(swstart->tickprev == 0)
|
|
||||||
swstart->tickprev = HAL_GetTick();
|
|
||||||
|
|
||||||
if((HAL_GetTick() - swstart->tickprev) > swstart->Sw_FilterDelay)
|
|
||||||
{
|
|
||||||
if(HAL_GPIO_ReadPin(swstart->Sw_Port, swstart->Sw_Pin) == SW_ON)
|
|
||||||
{
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
swstart->tickprev = 0;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* @brief Включить светодиод
|
|
||||||
*/
|
|
||||||
void TESTER_LED_On(TESTER_LEDTypeDef *led)
|
|
||||||
{
|
|
||||||
led->state = LED_IS_ON;
|
|
||||||
HAL_GPIO_WritePin(led->LED_Port, led->LED_Pin, LED_ON);
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* @brief Выключить светодиод
|
|
||||||
*/
|
|
||||||
void TESTER_LED_Off(TESTER_LEDTypeDef *led)
|
|
||||||
{
|
|
||||||
led->state = LED_IS_OFF;
|
|
||||||
HAL_GPIO_WritePin(led->LED_Port, led->LED_Pin, LED_OFF);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Активировать моргание светодиодом
|
|
||||||
*/
|
|
||||||
void TESTER_LED_Blink_Start(TESTER_LEDTypeDef *led)
|
|
||||||
{
|
|
||||||
led->state = LED_IS_BLINKING;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Моргание светодиодом
|
|
||||||
*/
|
|
||||||
void TESTER_LEDBlink_Handle(TESTER_LEDTypeDef *led)
|
|
||||||
{
|
|
||||||
if(led->state == LED_IS_BLINKING)
|
|
||||||
{
|
|
||||||
uint32_t tickcurrent = HAL_GetTick();
|
|
||||||
if((tickcurrent - led->tickprev) > led->period)
|
|
||||||
{
|
|
||||||
HAL_GPIO_TogglePin(led->LED_Port, led->LED_Pin);
|
|
||||||
led->tickprev = tickcurrent;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -14,64 +14,26 @@
|
|||||||
#include "mylibs_include.h"
|
#include "mylibs_include.h"
|
||||||
#include "rs_message.h"
|
#include "rs_message.h"
|
||||||
|
|
||||||
typedef enum
|
|
||||||
{
|
|
||||||
LED_IS_OFF = 0,
|
|
||||||
LED_IS_ON = 1,
|
|
||||||
LED_IS_BLINKING = 2,
|
|
||||||
}TESTER_LEDStateTypeDef;
|
|
||||||
|
|
||||||
typedef struct
|
|
||||||
{
|
|
||||||
TESTER_LEDStateTypeDef state;
|
|
||||||
|
|
||||||
GPIO_TypeDef *LED_Port;
|
|
||||||
uint32_t LED_Pin;
|
|
||||||
|
|
||||||
uint32_t tickprev;
|
|
||||||
uint32_t period;
|
|
||||||
}TESTER_LEDTypeDef;
|
|
||||||
|
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
TESTER_LEDTypeDef LED1;
|
GPIO_LEDTypeDef LED1;
|
||||||
}TESTER_LEDsTypeDef;
|
}TESTER_LEDsTypeDef;
|
||||||
|
|
||||||
|
|
||||||
typedef struct
|
|
||||||
{
|
|
||||||
GPIO_TypeDef *Sw_Port;
|
|
||||||
uint32_t Sw_Pin;
|
|
||||||
|
|
||||||
uint32_t Sw_PrevState;
|
|
||||||
uint32_t Sw_FilterDelay;
|
|
||||||
uint32_t tickprev;
|
|
||||||
}TESTER_SwitchStartTypeDef;
|
|
||||||
|
|
||||||
|
|
||||||
/* Инициализация структур интерфейса */
|
/* Инициализация структур интерфейса */
|
||||||
void TESTER_InterfaceInit(TESTER_SwitchStartTypeDef *swstart, TESTER_LEDsTypeDef *leds);
|
void TESTER_InterfaceInit(GPIO_SwitchTypeDef *swstart, TESTER_LEDsTypeDef *leds);
|
||||||
|
|
||||||
|
|
||||||
/* Включить индикацию таймаута старта при активации теста */
|
/* Включить индикацию таймаута старта при активации теста */
|
||||||
void TESTER_LED_TimeoutForStartTest(TESTER_LEDTypeDef *led);
|
void TESTER_LED_TimeoutForStartTest(GPIO_LEDTypeDef *led);
|
||||||
/* Включить индикацию прямого подключения диода */
|
/* Включить индикацию прямого подключения диода */
|
||||||
void TESTER_LED_TestingDiodeForward(TESTER_LEDTypeDef *led);
|
void TESTER_LED_TestingDiodeForward(GPIO_LEDTypeDef *led);
|
||||||
/* Включить индикацию обратного подключения диода */
|
/* Включить индикацию обратного подключения диода */
|
||||||
void TESTER_LED_TestingDiodeReverse(TESTER_LEDTypeDef *led);
|
void TESTER_LED_TestingDiodeReverse(GPIO_LEDTypeDef *led);
|
||||||
/* Выключить индикацию активного теста диодов */
|
/* Выключить индикацию активного теста диодов */
|
||||||
void TESTER_LED_WaitForAction(TESTER_LEDTypeDef *led);
|
void TESTER_LED_WaitForAction(GPIO_LEDTypeDef *led);
|
||||||
|
|
||||||
/* Считать состоянии кнопки запуска */
|
|
||||||
uint8_t TESTER_ReadSwichStart(TESTER_SwitchStartTypeDef *swstart);
|
|
||||||
/* Включить светодиод */
|
|
||||||
void TESTER_LED_On(TESTER_LEDTypeDef *led);
|
|
||||||
/* Выключить светодиод */
|
|
||||||
void TESTER_LED_Off(TESTER_LEDTypeDef *led);
|
|
||||||
/* Активировать моргание светодиодом */
|
|
||||||
void TESTER_LED_Blink_Start(TESTER_LEDTypeDef *led);
|
|
||||||
/* Моргание светодиодом */
|
|
||||||
void TESTER_LEDBlink_Handle(TESTER_LEDTypeDef *led);
|
|
||||||
#endif //_TESTER_INTERFACE_FUNC_H_
|
#endif //_TESTER_INTERFACE_FUNC_H_
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@ TESTER_ProjectTypeDef TESTER = {0};
|
|||||||
void TESTER_Init(TESTER_ProjectTypeDef *tester)
|
void TESTER_Init(TESTER_ProjectTypeDef *tester)
|
||||||
{
|
{
|
||||||
TESTER_InterfaceInit(&tester->SwStart, &tester->leds);
|
TESTER_InterfaceInit(&tester->SwStart, &tester->leds);
|
||||||
tester->leds.LED1.period = 100;
|
GPIO_LED_Blink_Start(&tester->leds.LED1, 100);
|
||||||
|
|
||||||
tester->delay = 250;
|
tester->delay = 250;
|
||||||
tester->delay_en = 0;
|
tester->delay_en = 0;
|
||||||
@ -34,9 +34,11 @@ void TESTER_pre_while(TESTER_ProjectTypeDef *tester)
|
|||||||
TESTER_UpdateSettings(tester->htest, tester->mbdata);
|
TESTER_UpdateSettings(tester->htest, tester->mbdata);
|
||||||
|
|
||||||
RS_Receive_IT(tester->hmodbus, &MODBUS_MSG);
|
RS_Receive_IT(tester->hmodbus, &MODBUS_MSG);
|
||||||
tester->leds.LED1.period = LED_BLINK_AS_ON;
|
|
||||||
tester->f.flag_init_done = 1;
|
|
||||||
HAL_TIM_Base_Start(&hmcstim);
|
HAL_TIM_Base_Start(&hmcstim);
|
||||||
|
|
||||||
|
|
||||||
|
tester->f.flag_init_done = 1;
|
||||||
|
GPIO_LED_Blink_Start(&tester->leds.LED1, LED_BLINK_AS_ON);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -123,7 +125,7 @@ void TESTER_InterfaceHandle(TESTER_ProjectTypeDef *tester)
|
|||||||
tester->mode = *((TESTER_TestModeTypeDef *)&tester->mbdata->Coils) & 0x3;
|
tester->mode = *((TESTER_TestModeTypeDef *)&tester->mbdata->Coils) & 0x3;
|
||||||
|
|
||||||
/* если кнопка нажата или пришла соответствующая комманда модбас */
|
/* если кнопка нажата или пришла соответствующая комманда модбас */
|
||||||
if(TESTER_ReadSwichStart(&tester->SwStart) || tester->mbdata->Coils.StartTest)
|
if(GPIO_Read_Swich(&tester->SwStart) || tester->mbdata->Coils.StartTest)
|
||||||
{
|
{
|
||||||
tester->mbdata->Coils.StartTest = 0;
|
tester->mbdata->Coils.StartTest = 0;
|
||||||
/* Обновление настроек тестера */
|
/* Обновление настроек тестера */
|
||||||
@ -148,7 +150,7 @@ void TESTER_InterfaceHandle(TESTER_ProjectTypeDef *tester)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
TESTER_LEDBlink_Handle(&tester->leds.LED1);
|
GPIO_LED_Blink_Handle(&tester->leds.LED1);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -199,9 +201,7 @@ void TESTER_Set_Default_Settings(TESTER_ProjectTypeDef *tester)
|
|||||||
|
|
||||||
/* Настройка пинов для светодиода*/
|
/* Настройка пинов для светодиода*/
|
||||||
tester->leds.LED1.LED_Port = LED1_Port;
|
tester->leds.LED1.LED_Port = LED1_Port;
|
||||||
tester->leds.LED1.LED_Pin = LED1_Pin;
|
tester->leds.LED1.LED_Pin = LED1_Pin;
|
||||||
tester->leds.LED1.period = LED_BLINK_AS_ON;
|
|
||||||
|
|
||||||
|
|
||||||
/* Настройка таймингов по умолчанию для тестирования */
|
/* Настройка таймингов по умолчанию для тестирования */
|
||||||
tester->mbdata->HoldRegs.TimeForForward = DEF_MS_TIME_FOR_POSITIVE;
|
tester->mbdata->HoldRegs.TimeForForward = DEF_MS_TIME_FOR_POSITIVE;
|
||||||
|
@ -59,7 +59,7 @@ typedef struct
|
|||||||
MB_DataStructureTypeDef *mbdata;
|
MB_DataStructureTypeDef *mbdata;
|
||||||
|
|
||||||
|
|
||||||
TESTER_SwitchStartTypeDef SwStart; ///< структура кнопки старта
|
GPIO_SwitchTypeDef SwStart; ///< структура кнопки старта
|
||||||
TESTER_LEDsTypeDef leds; ///< структура светодиодов
|
TESTER_LEDsTypeDef leds; ///< структура светодиодов
|
||||||
|
|
||||||
|
|
||||||
|
@ -576,7 +576,7 @@
|
|||||||
|
|
||||||
<Group>
|
<Group>
|
||||||
<GroupName>MyLibs</GroupName>
|
<GroupName>MyLibs</GroupName>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>1</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
<cbSel>0</cbSel>
|
<cbSel>0</cbSel>
|
||||||
<RteFlg>0</RteFlg>
|
<RteFlg>0</RteFlg>
|
||||||
@ -628,6 +628,30 @@
|
|||||||
<RteFlg>0</RteFlg>
|
<RteFlg>0</RteFlg>
|
||||||
<bShared>0</bShared>
|
<bShared>0</bShared>
|
||||||
</File>
|
</File>
|
||||||
|
<File>
|
||||||
|
<GroupNumber>4</GroupNumber>
|
||||||
|
<FileNumber>24</FileNumber>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<tvExp>0</tvExp>
|
||||||
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
<bDave2>0</bDave2>
|
||||||
|
<PathWithFileName>..\Core\MyLibs\general_gpio.c</PathWithFileName>
|
||||||
|
<FilenameWithoutPath>general_gpio.c</FilenameWithoutPath>
|
||||||
|
<RteFlg>0</RteFlg>
|
||||||
|
<bShared>0</bShared>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<GroupNumber>4</GroupNumber>
|
||||||
|
<FileNumber>25</FileNumber>
|
||||||
|
<FileType>5</FileType>
|
||||||
|
<tvExp>0</tvExp>
|
||||||
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
<bDave2>0</bDave2>
|
||||||
|
<PathWithFileName>..\Core\MyLibs\general_gpio.h</PathWithFileName>
|
||||||
|
<FilenameWithoutPath>general_gpio.h</FilenameWithoutPath>
|
||||||
|
<RteFlg>0</RteFlg>
|
||||||
|
<bShared>0</bShared>
|
||||||
|
</File>
|
||||||
</Group>
|
</Group>
|
||||||
|
|
||||||
<Group>
|
<Group>
|
||||||
@ -638,7 +662,7 @@
|
|||||||
<RteFlg>0</RteFlg>
|
<RteFlg>0</RteFlg>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>5</GroupNumber>
|
<GroupNumber>5</GroupNumber>
|
||||||
<FileNumber>24</FileNumber>
|
<FileNumber>26</FileNumber>
|
||||||
<FileType>2</FileType>
|
<FileType>2</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -658,7 +682,7 @@
|
|||||||
<RteFlg>0</RteFlg>
|
<RteFlg>0</RteFlg>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>6</GroupNumber>
|
<GroupNumber>6</GroupNumber>
|
||||||
<FileNumber>25</FileNumber>
|
<FileNumber>27</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -670,7 +694,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>6</GroupNumber>
|
<GroupNumber>6</GroupNumber>
|
||||||
<FileNumber>26</FileNumber>
|
<FileNumber>28</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -682,7 +706,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>6</GroupNumber>
|
<GroupNumber>6</GroupNumber>
|
||||||
<FileNumber>27</FileNumber>
|
<FileNumber>29</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -694,7 +718,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>6</GroupNumber>
|
<GroupNumber>6</GroupNumber>
|
||||||
<FileNumber>28</FileNumber>
|
<FileNumber>30</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -706,7 +730,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>6</GroupNumber>
|
<GroupNumber>6</GroupNumber>
|
||||||
<FileNumber>29</FileNumber>
|
<FileNumber>31</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -718,7 +742,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>6</GroupNumber>
|
<GroupNumber>6</GroupNumber>
|
||||||
<FileNumber>30</FileNumber>
|
<FileNumber>32</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -730,7 +754,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>6</GroupNumber>
|
<GroupNumber>6</GroupNumber>
|
||||||
<FileNumber>31</FileNumber>
|
<FileNumber>33</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -742,7 +766,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>6</GroupNumber>
|
<GroupNumber>6</GroupNumber>
|
||||||
<FileNumber>32</FileNumber>
|
<FileNumber>34</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -762,7 +786,7 @@
|
|||||||
<RteFlg>0</RteFlg>
|
<RteFlg>0</RteFlg>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>7</GroupNumber>
|
<GroupNumber>7</GroupNumber>
|
||||||
<FileNumber>33</FileNumber>
|
<FileNumber>35</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -774,7 +798,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>7</GroupNumber>
|
<GroupNumber>7</GroupNumber>
|
||||||
<FileNumber>34</FileNumber>
|
<FileNumber>36</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -786,7 +810,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>7</GroupNumber>
|
<GroupNumber>7</GroupNumber>
|
||||||
<FileNumber>35</FileNumber>
|
<FileNumber>37</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -798,7 +822,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>7</GroupNumber>
|
<GroupNumber>7</GroupNumber>
|
||||||
<FileNumber>36</FileNumber>
|
<FileNumber>38</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -810,7 +834,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>7</GroupNumber>
|
<GroupNumber>7</GroupNumber>
|
||||||
<FileNumber>37</FileNumber>
|
<FileNumber>39</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -822,7 +846,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>7</GroupNumber>
|
<GroupNumber>7</GroupNumber>
|
||||||
<FileNumber>38</FileNumber>
|
<FileNumber>40</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -834,7 +858,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>7</GroupNumber>
|
<GroupNumber>7</GroupNumber>
|
||||||
<FileNumber>39</FileNumber>
|
<FileNumber>41</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -846,7 +870,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>7</GroupNumber>
|
<GroupNumber>7</GroupNumber>
|
||||||
<FileNumber>40</FileNumber>
|
<FileNumber>42</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -858,7 +882,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>7</GroupNumber>
|
<GroupNumber>7</GroupNumber>
|
||||||
<FileNumber>41</FileNumber>
|
<FileNumber>43</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -870,7 +894,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>7</GroupNumber>
|
<GroupNumber>7</GroupNumber>
|
||||||
<FileNumber>42</FileNumber>
|
<FileNumber>44</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -882,7 +906,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>7</GroupNumber>
|
<GroupNumber>7</GroupNumber>
|
||||||
<FileNumber>43</FileNumber>
|
<FileNumber>45</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -894,7 +918,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>7</GroupNumber>
|
<GroupNumber>7</GroupNumber>
|
||||||
<FileNumber>44</FileNumber>
|
<FileNumber>46</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -906,7 +930,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>7</GroupNumber>
|
<GroupNumber>7</GroupNumber>
|
||||||
<FileNumber>45</FileNumber>
|
<FileNumber>47</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -918,7 +942,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>7</GroupNumber>
|
<GroupNumber>7</GroupNumber>
|
||||||
<FileNumber>46</FileNumber>
|
<FileNumber>48</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -930,7 +954,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>7</GroupNumber>
|
<GroupNumber>7</GroupNumber>
|
||||||
<FileNumber>47</FileNumber>
|
<FileNumber>49</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -942,7 +966,7 @@
|
|||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>7</GroupNumber>
|
<GroupNumber>7</GroupNumber>
|
||||||
<FileNumber>48</FileNumber>
|
<FileNumber>50</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
@ -962,7 +986,7 @@
|
|||||||
<RteFlg>0</RteFlg>
|
<RteFlg>0</RteFlg>
|
||||||
<File>
|
<File>
|
||||||
<GroupNumber>8</GroupNumber>
|
<GroupNumber>8</GroupNumber>
|
||||||
<FileNumber>49</FileNumber>
|
<FileNumber>51</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
|
@ -515,6 +515,16 @@
|
|||||||
<FileType>5</FileType>
|
<FileType>5</FileType>
|
||||||
<FilePath>..\Core\MyLibs\trackers.h</FilePath>
|
<FilePath>..\Core\MyLibs\trackers.h</FilePath>
|
||||||
</File>
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>general_gpio.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\Core\MyLibs\general_gpio.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>general_gpio.h</FileName>
|
||||||
|
<FileType>5</FileType>
|
||||||
|
<FilePath>..\Core\MyLibs\general_gpio.h</FilePath>
|
||||||
|
</File>
|
||||||
</Files>
|
</Files>
|
||||||
</Group>
|
</Group>
|
||||||
<Group>
|
<Group>
|
||||||
|
BIN
docs/mb_adr.xlsx
BIN
docs/mb_adr.xlsx
Binary file not shown.
Loading…
Reference in New Issue
Block a user