- Обновлена таблица модбас
- дефайны и настройки нормально переименованы (A_POS, A_NEG, B_POS, B_NEG, TIME_FOR_FORWARD, TIME_FOR_REVERSE) - Добавлена микросекундная задержка для прямого включения (прямое включение на заданное колво микросекунд) - Кнопка переделана на подтягивание к нулю
This commit is contained in:
		
							parent
							
								
									a413b954a8
								
							
						
					
					
						commit
						38eb087efc
					
				@ -48,10 +48,10 @@ typedef struct //MB_DataInRegsTypeDef
 | 
			
		||||
typedef struct //MB_DataInRegsTypeDef
 | 
			
		||||
{
 | 
			
		||||
  uint16_t TimeForForward;
 | 
			
		||||
  uint16_t TimeForReverse;
 | 
			
		||||
  uint16_t TimeBeforeTest;
 | 
			
		||||
  uint16_t TimeDeadtime;
 | 
			
		||||
  uint16_t TimeBeforePeak;
 | 
			
		||||
  uint16_t TimeBeforeDisconnect;
 | 
			
		||||
  
 | 
			
		||||
  uint16_t Adc_PulseWidth;
 | 
			
		||||
  uint16_t Adc_PulseSign;
 | 
			
		||||
@ -104,18 +104,19 @@ typedef struct //MB_DataCoilsTypeDef
 | 
			
		||||
  unsigned ForwardTest:1;
 | 
			
		||||
  unsigned ReverseTest:1;
 | 
			
		||||
  unsigned StartTest:1;
 | 
			
		||||
  unsigned PhaseForwardHiTest:1;
 | 
			
		||||
  unsigned PhaseForwardLoTest:1;
 | 
			
		||||
  unsigned PhaseReverseHiTest:1;
 | 
			
		||||
  unsigned PhaseReverseLoTest:1;
 | 
			
		||||
  unsigned KeyForwardHiTest:1;
 | 
			
		||||
  unsigned KeyForwardLoTest:1;
 | 
			
		||||
  unsigned KeyReverseHiTest:1;
 | 
			
		||||
  unsigned KeyReverseLoTest:1;
 | 
			
		||||
  
 | 
			
		||||
  unsigned reserved:9;
 | 
			
		||||
  
 | 
			
		||||
  /* reg 2 - settings */
 | 
			
		||||
  unsigned msTimeForForward_enable:1;
 | 
			
		||||
  unsigned msTimeForReverse_enable:1;  
 | 
			
		||||
  unsigned msTimeBeforeTest_enable:1;
 | 
			
		||||
  unsigned msTimeDeadtime_enable:1;
 | 
			
		||||
  unsigned msTimeBeforePeak_enable:1;
 | 
			
		||||
  unsigned msTimeBeforeDisconnect_enable:1;  
 | 
			
		||||
  unsigned reserved2:11;
 | 
			
		||||
}MB_DataCoilsTypeDef;
 | 
			
		||||
 | 
			
		||||
@ -124,7 +125,7 @@ typedef struct //MB_DataCoilsTypeDef
 | 
			
		||||
#define C_CONTROL_QNT                 7
 | 
			
		||||
 | 
			
		||||
#define C_SETTINGS_ADDR               16
 | 
			
		||||
#define C_SETTINGS_QNT                3
 | 
			
		||||
#define C_SETTINGS_QNT                5
 | 
			
		||||
 | 
			
		||||
/** MODBUS_DATA_COILS_DEFINES
 | 
			
		||||
  * @} 
 | 
			
		||||
 | 
			
		||||
@ -67,7 +67,7 @@ void MX_GPIO_Init(void)
 | 
			
		||||
  /*Configure GPIO pin : PC14 */
 | 
			
		||||
  GPIO_InitStruct.Pin = GPIO_PIN_14;
 | 
			
		||||
  GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
 | 
			
		||||
  GPIO_InitStruct.Pull = GPIO_PULLDOWN;
 | 
			
		||||
  GPIO_InitStruct.Pull = GPIO_PULLUP;
 | 
			
		||||
  HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
 | 
			
		||||
 | 
			
		||||
  /*Configure GPIO pins : PAPin PAPin PAPin PAPin */
 | 
			
		||||
 | 
			
		||||
@ -21,24 +21,31 @@
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
  * @brief    Задержка (миллисекундная) для положительного напряжения ПО УМОЛЧАНИЮ
 | 
			
		||||
  * @details  Пока только миллисекунды, т.к. меньше я пока не реализовал, да и как понимаю не требуется
 | 
			
		||||
  * @details  Задержка миллисекундная или микросекундная @ref TIME_BEFORE_TEST_MS_DELAY
 | 
			
		||||
  */
 | 
			
		||||
#define DEF_MS_TIME_FOR_POSITIVE              2000
 | 
			
		||||
#define DEF_TIME_FOR_FORWARD                100
 | 
			
		||||
#define DEF_TIME_FOR_FORWARD_MS_DELAY       1         ///< включение миллисекундной задержки для @ref DEF_TIME_FOR_FORWARD по умолчанию
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
  * @brief    Задержка перед окончанием тестирования (отключение питания) ПО УМОЛЧАНИЮ
 | 
			
		||||
  * @details  Задержка миллисекундная или микросекундная @ref TIME_FOR_REVERSE_MS_DELAY
 | 
			
		||||
  */
 | 
			
		||||
#define DEF_TIME_FOR_REVERSE                200
 | 
			
		||||
#define DEF_TIME_FOR_REVERSE_MS_DELAY       1         ///< включение миллисекундной задержки для @ref TIME_FOR_REVERSE
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
  * @brief    Задержка перед началом тестирования ПО УМОЛЧАНИЮ
 | 
			
		||||
  * @details  Задержка миллисекундная или микросекундная @ref TIME_BEFORE_TEST_MS_DELAY
 | 
			
		||||
  */
 | 
			
		||||
#define DEF_TIME_BEFORE_TEST                  500
 | 
			
		||||
#define DEF_TIME_BEFORE_TEST_MS_DELAY         1         ///< включение миллисекундной задержки для @ref TIME_BEFORE_TEST по умолчанию
 | 
			
		||||
#define DEF_TIME_BEFORE_TEST                500
 | 
			
		||||
#define DEF_TIME_BEFORE_TEST_MS_DELAY       1         ///< включение миллисекундной задержки для @ref TIME_BEFORE_TEST по умолчанию
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
  * @brief    Задержка для дедтайма ПО УМОЛЧАНИЮ
 | 
			
		||||
  * @details  Задержка миллисекундная или микросекундная @ref DEF_DEADTIME_MS_DELAY
 | 
			
		||||
  */
 | 
			
		||||
#define DEF_DEADTIME                          500
 | 
			
		||||
#define DEF_DEADTIME_MS_DELAY                 0         ///< включение миллисекундной задержки для @ref DEF_DEADTIME по умолчанию
 | 
			
		||||
#define DEF_DEADTIME                        0
 | 
			
		||||
#define DEF_DEADTIME_MS_DELAY               0         ///< включение миллисекундной задержки для @ref DEF_DEADTIME по умолчанию
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
  * @brief    Задержка между включением АЦП и предполагаемым скачком напряжения ПО УМОЛЧАНИЮ
 | 
			
		||||
@ -48,15 +55,8 @@
 | 
			
		||||
  * @note     Но если миллисекундная, то скорее всего скачок не попадет в буфер АЦП.
 | 
			
		||||
  *           Поэтому желательно только микросекундная (@ref TIME_BEFORE_PEAK_MS_DELAY = 0)
 | 
			
		||||
  */
 | 
			
		||||
#define DEF_TIME_BEFORE_PEAK                  5
 | 
			
		||||
#define DEF_TIME_BEFORE_PEAK_MS_DELAY         0         ///< включение миллисекундной задержки для @ref TIME_BEFORE_PEAK
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
  * @brief    Задержка перед окончанием тестирования (отключение питания) ПО УМОЛЧАНИЮ
 | 
			
		||||
  * @details  Задержка миллисекундная или микросекундная @ref TIME_BEFORE_DISCONNECT_MS_DELAY
 | 
			
		||||
  */
 | 
			
		||||
#define DEF_TIME_BEFORE_DISCONNECT            2000
 | 
			
		||||
#define DEF_TIME_BEFORE_DISCONNECT_MS_DELAY   1         ///< включение миллисекундной задержки для @ref TIME_BEFORE_DISCONNECT
 | 
			
		||||
#define DEF_TIME_BEFORE_PEAK                5
 | 
			
		||||
#define DEF_TIME_BEFORE_PEAK_MS_DELAY       0         ///< включение миллисекундной задержки для @ref TIME_BEFORE_PEAK
 | 
			
		||||
 | 
			
		||||
/** TESTER_SW_TIMINGS_CONFIG
 | 
			
		||||
  * @}
 | 
			
		||||
@ -86,8 +86,8 @@
 | 
			
		||||
 | 
			
		||||
/* Дефайны для кнопки */
 | 
			
		||||
/* Состояния нажатой и отжатой кнопки */
 | 
			
		||||
#define SW_ON       1     ///< Состояние нажатой кнопки
 | 
			
		||||
#define SW_OFF      0     ///< Состояние отжатой кнопки
 | 
			
		||||
#define SW_ON       0     ///< Состояние нажатой кнопки
 | 
			
		||||
#define SW_OFF      1     ///< Состояние отжатой кнопки
 | 
			
		||||
 | 
			
		||||
/* Пин кнопки при перенастройке надо также перенастроить через cube) */
 | 
			
		||||
#define SWITCH_START_Port               GPIOC         ///< Порт кнокпи старта (при перенастройке надо также перенастроить через cube)
 | 
			
		||||
@ -107,7 +107,7 @@
 | 
			
		||||
	@{
 | 
			
		||||
	*/
 | 
			
		||||
//#define USE_HAL_GPIO_FUNCTIONS  ///< По этому дефайну для переключения пинов будут использоваться HAL_GPIO функции
 | 
			
		||||
//#define RECONNECT_WITHOUT_DEADTIME ///< По этому дефайну дедтайм отключается. Если отключить и USE_HAL_GPIO_FUNCTIONS, то переключатся фазы будут почти синхронно (160 нс)
 | 
			
		||||
#define RECONNECT_WITHOUT_DEADTIME ///< По этому дефайну дедтайм отключается. Если отключить и USE_HAL_GPIO_FUNCTIONS, то переключатся фазы будут почти синхронно (160 нс)
 | 
			
		||||
  
 | 
			
		||||
/* Состояния ключей для подключения и откючения питания */
 | 
			
		||||
#define PHASE_CONNECT       1   ///< Ключ замкнут подключено в данном состоянии пина
 | 
			
		||||
@ -115,16 +115,15 @@
 | 
			
		||||
 | 
			
		||||
/* Ключи для прямого включения диода */
 | 
			
		||||
/* (при перенастройке надо также перенастроить через cube) */
 | 
			
		||||
#define SWITCH_PHASE_FORWARD_Port       GPIOB         ///< Порт пина первого ключа для прямого включения диода
 | 
			
		||||
#define SWITCH_PHASE_FORWARD_HI_Pin     GPIO_PIN_0    ///< Пин первого ключа для прямого включения диода
 | 
			
		||||
#define SWITCH_PHASE_FORWARD_LO_Pin     GPIO_PIN_1    ///< Пин второго ключа для прямого включения диода
 | 
			
		||||
#define SWITCH_PHASES_Port        GPIOB         ///< Порт пина первого ключа для прямого включения диода
 | 
			
		||||
#define SWITCH_PHASE_A_POS_Pin    GPIO_PIN_0    ///< Пин первого ключа для прямого включения диода
 | 
			
		||||
#define SWITCH_PHASE_B_NEG_Pin    GPIO_PIN_1    ///< Пин второго ключа для прямого включения диода
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* Ключи для обратного включения диода */
 | 
			
		||||
/* (при перенастройке надо также перенастроить через cube) */
 | 
			
		||||
#define SWITCH_PHASE_REVERSE_Port       GPIOB         ///< Порт пина первого ключа для обратного включения диода
 | 
			
		||||
#define SWITCH_PHASE_REVERSE_HI_Pin     GPIO_PIN_10   ///< Пин первого ключа для обратного включения диода
 | 
			
		||||
#define SWITCH_PHASE_REVERSE_LO_Pin     GPIO_PIN_11   ///< Пин первого ключа для обратного включения диода
 | 
			
		||||
#define SWITCH_PHASE_A_NEG_Pin    GPIO_PIN_10   ///< Пин первого ключа для обратного включения диода
 | 
			
		||||
#define SWITCH_PHASE_B_POS_Pin    GPIO_PIN_11   ///< Пин первого ключа для обратного включения диода
 | 
			
		||||
 | 
			
		||||
/** TESTER_PHASE_SW_CONFIG
 | 
			
		||||
  * @}
 | 
			
		||||
 | 
			
		||||
@ -43,7 +43,7 @@ void TESTER_TestDiode_Forward(TESTER_TestHandleTypeDef *htest)
 | 
			
		||||
  while(1)
 | 
			
		||||
  {
 | 
			
		||||
    /* Считывание АЦП пока таймаут истечет */
 | 
			
		||||
    res = ADC_ReadContinuous(htest->adc, htest->continuous_buff_size, tickstart, htest->SwTimings.msticks_for_forward);
 | 
			
		||||
    res = ADC_ReadContinuous(htest->adc, htest->continuous_buff_size, tickstart, htest->SwTimings.ticks_for_forward.ticks);
 | 
			
		||||
    
 | 
			
		||||
    if(res != HAL_OK)
 | 
			
		||||
      break;
 | 
			
		||||
@ -85,7 +85,7 @@ void TESTER_TestDiode_Reverse(TESTER_TestHandleTypeDef *htest)
 | 
			
		||||
  TESTER_Connect_Phase(&htest->SwPhaseReverse);
 | 
			
		||||
  
 | 
			
		||||
  /* Обратное включение на определенное время */
 | 
			
		||||
  TESTER_Delay(&htest->SwTimings.ticks_before_disconnect, &hmcstim);
 | 
			
		||||
  TESTER_Delay(&htest->SwTimings.ticks_for_reverse, &hmcstim);
 | 
			
		||||
  
 | 
			
		||||
  /* Отключение питания от диода */
 | 
			
		||||
  TESTER_Disconnect_AllPhases(&htest->SwPhaseReverse, &htest->SwPhaseForward);
 | 
			
		||||
@ -118,7 +118,7 @@ void TESTER_TestDiode_SwitchConnection(TESTER_TestHandleTypeDef *htest)
 | 
			
		||||
  TESTER_Connect_Phase(&htest->SwPhaseForward);
 | 
			
		||||
  
 | 
			
		||||
  /* Прямое включение на определенное время */
 | 
			
		||||
  msDelay(htest->SwTimings.msticks_for_forward);
 | 
			
		||||
  TESTER_Delay(&htest->SwTimings.ticks_for_forward, &hmcstim);
 | 
			
		||||
  htest->DiodeForwardVolt = htest->adc->chAdc.U_Current;
 | 
			
		||||
  TESTER_LED_TestingDiodeReverse(&htest->leds->LED1);
 | 
			
		||||
    
 | 
			
		||||
@ -126,7 +126,7 @@ void TESTER_TestDiode_SwitchConnection(TESTER_TestHandleTypeDef *htest)
 | 
			
		||||
  TESTER_Reconnect_TwoPhases(&htest->SwPhaseForward, &htest->SwPhaseReverse, &htest->SwTimings.ticks_deadtime);
 | 
			
		||||
  
 | 
			
		||||
  /* Обратное включение на определенное время */
 | 
			
		||||
  TESTER_Delay(&htest->SwTimings.ticks_before_disconnect, &hmcstim);
 | 
			
		||||
  TESTER_Delay(&htest->SwTimings.ticks_for_reverse, &hmcstim);
 | 
			
		||||
  
 | 
			
		||||
  /* Отключение питания от диода */
 | 
			
		||||
  TESTER_Disconnect_AllPhases(&htest->SwPhaseReverse, &htest->SwPhaseForward);
 | 
			
		||||
 | 
			
		||||
@ -71,11 +71,11 @@ typedef struct
 | 
			
		||||
  */
 | 
			
		||||
typedef struct
 | 
			
		||||
{
 | 
			
		||||
  uint32_t                  msticks_for_forward;        ///< миллисекундная задержка для положительного напряжения @ref TESTER_TestDiode_Forward
 | 
			
		||||
  TESTER_TicksDelayTypeDef  ticks_for_forward;          ///< задержка для прямого включения @ref TESTER_TestDiode_Forward
 | 
			
		||||
  TESTER_TicksDelayTypeDef  ticks_for_reverse;          ///< задержка для прямого включения @ref TESTER_TestDiode_Reverse
 | 
			
		||||
  TESTER_TicksDelayTypeDef  ticks_before_test;          ///< задержка перед началом тестирования (мс или мкс)
 | 
			
		||||
  TESTER_TicksDelayTypeDef  ticks_deadtime;             ///< задержка между включением АЦП и предполагаемым скачком напряжения, чтобы точно поймать его в буфере АЦП (мс или мкс)
 | 
			
		||||
  TESTER_TicksDelayTypeDef  ticks_before_expected_peak; ///< задержка между включением АЦП и предполагаемым скачком напряжения, чтобы точно поймать его в буфере АЦП (мс или мкс)
 | 
			
		||||
  TESTER_TicksDelayTypeDef  ticks_before_disconnect;    ///< задержка перед выключением фаз (мс или мкс)
 | 
			
		||||
}TESTER_SwitchTimingsTypeDef;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 | 
			
		||||
@ -54,13 +54,13 @@ void TESTER_main_while(TESTER_ProjectTypeDef *tester)
 | 
			
		||||
  
 | 
			
		||||
  /* ПОДТЯГИВАНИЕ СОСТОЯНИЯ КЛЮЧЕЙ С МОДБАС */
 | 
			
		||||
  TESTER_TestOneSwitch(tester->htest->SwPhaseForward.SW_Port, tester->htest->SwPhaseForward.SwHI_Pin,
 | 
			
		||||
                        tester->mbdata->Coils.PhaseForwardHiTest);
 | 
			
		||||
                        tester->mbdata->Coils.KeyForwardHiTest);
 | 
			
		||||
  TESTER_TestOneSwitch(tester->htest->SwPhaseForward.SW_Port, tester->htest->SwPhaseForward.SwLO_Pin,
 | 
			
		||||
                        tester->mbdata->Coils.PhaseForwardLoTest);
 | 
			
		||||
                        tester->mbdata->Coils.KeyForwardLoTest);
 | 
			
		||||
  TESTER_TestOneSwitch(tester->htest->SwPhaseForward.SW_Port, tester->htest->SwPhaseReverse.SwHI_Pin,
 | 
			
		||||
                        tester->mbdata->Coils.PhaseReverseHiTest);
 | 
			
		||||
                        tester->mbdata->Coils.KeyReverseHiTest);
 | 
			
		||||
  TESTER_TestOneSwitch(tester->htest->SwPhaseForward.SW_Port, tester->htest->SwPhaseReverse.SwLO_Pin,
 | 
			
		||||
                        tester->mbdata->Coils.PhaseReverseLoTest);
 | 
			
		||||
                        tester->mbdata->Coils.KeyReverseLoTest);
 | 
			
		||||
  
 | 
			
		||||
  
 | 
			
		||||
  
 | 
			
		||||
@ -162,16 +162,17 @@ void TESTER_InterfaceHandle(TESTER_ProjectTypeDef *tester)
 | 
			
		||||
  */
 | 
			
		||||
void TESTER_UpdateSettings(TESTER_TestHandleTypeDef *htest, MB_DataStructureTypeDef *mbdata)
 | 
			
		||||
{
 | 
			
		||||
  htest->SwTimings.ticks_before_disconnect.ticks = mbdata->HoldRegs.TimeBeforeDisconnect;
 | 
			
		||||
  htest->SwTimings.ticks_for_reverse.ticks = mbdata->HoldRegs.TimeForReverse;
 | 
			
		||||
  htest->SwTimings.ticks_deadtime.ticks = mbdata->HoldRegs.TimeDeadtime;
 | 
			
		||||
  htest->SwTimings.ticks_before_expected_peak.ticks = mbdata->HoldRegs.TimeBeforePeak;
 | 
			
		||||
  htest->SwTimings.ticks_before_test.ticks = mbdata->HoldRegs.TimeBeforeTest;  
 | 
			
		||||
  htest->SwTimings.msticks_for_forward = mbdata->HoldRegs.TimeForForward;
 | 
			
		||||
  htest->SwTimings.ticks_for_forward.ticks = mbdata->HoldRegs.TimeForForward;
 | 
			
		||||
  
 | 
			
		||||
  htest->SwTimings.ticks_before_disconnect.msdelay = mbdata->Coils.msTimeBeforeDisconnect_enable;
 | 
			
		||||
  htest->SwTimings.ticks_for_reverse.msdelay = mbdata->Coils.msTimeForReverse_enable;
 | 
			
		||||
  htest->SwTimings.ticks_deadtime.msdelay = mbdata->Coils.msTimeDeadtime_enable;
 | 
			
		||||
  htest->SwTimings.ticks_before_expected_peak.msdelay = mbdata->Coils.msTimeBeforePeak_enable;
 | 
			
		||||
  htest->SwTimings.ticks_before_test.msdelay = mbdata->Coils.msTimeBeforeTest_enable;  
 | 
			
		||||
  htest->SwTimings.ticks_before_test.msdelay = mbdata->Coils.msTimeForForward_enable;  
 | 
			
		||||
  
 | 
			
		||||
  TESTER_ADC_UpdateSettings(htest->adc, mbdata);
 | 
			
		||||
}
 | 
			
		||||
@ -185,15 +186,15 @@ void TESTER_Set_Default_Settings(TESTER_ProjectTypeDef *tester)
 | 
			
		||||
  tester->mbdata->Coils.ForwardTest = 1;
 | 
			
		||||
  tester->mbdata->Coils.ReverseTest = 1;
 | 
			
		||||
  
 | 
			
		||||
  /* Настройка пинов для прямого включения */
 | 
			
		||||
  tester->htest->SwPhaseReverse.SW_Port   = SWITCH_PHASE_REVERSE_Port;
 | 
			
		||||
  tester->htest->SwPhaseReverse.SwHI_Pin  = SWITCH_PHASE_REVERSE_HI_Pin;
 | 
			
		||||
  tester->htest->SwPhaseReverse.SwLO_Pin  = SWITCH_PHASE_REVERSE_LO_Pin;
 | 
			
		||||
  
 | 
			
		||||
  /* Настройка пинов для обратного включения */
 | 
			
		||||
  tester->htest->SwPhaseForward.SW_Port   = SWITCH_PHASE_FORWARD_Port;
 | 
			
		||||
  tester->htest->SwPhaseForward.SwHI_Pin  = SWITCH_PHASE_FORWARD_HI_Pin;
 | 
			
		||||
  tester->htest->SwPhaseForward.SwLO_Pin  = SWITCH_PHASE_FORWARD_LO_Pin;
 | 
			
		||||
  tester->htest->SwPhaseForward.SW_Port   = SWITCH_PHASES_Port;
 | 
			
		||||
  tester->htest->SwPhaseForward.SwHI_Pin  = SWITCH_PHASE_A_POS_Pin;
 | 
			
		||||
  tester->htest->SwPhaseForward.SwLO_Pin  = SWITCH_PHASE_B_NEG_Pin;
 | 
			
		||||
  
 | 
			
		||||
  /* Настройка пинов для прямого включения */
 | 
			
		||||
  tester->htest->SwPhaseReverse.SW_Port   = SWITCH_PHASES_Port;
 | 
			
		||||
  tester->htest->SwPhaseReverse.SwHI_Pin  = SWITCH_PHASE_B_POS_Pin;
 | 
			
		||||
  tester->htest->SwPhaseReverse.SwLO_Pin  = SWITCH_PHASE_A_NEG_Pin;
 | 
			
		||||
  
 | 
			
		||||
  
 | 
			
		||||
  /* Настройка пинов для кнопки старта */
 | 
			
		||||
@ -206,10 +207,14 @@ void TESTER_Set_Default_Settings(TESTER_ProjectTypeDef *tester)
 | 
			
		||||
  tester->leds.LED1.LED_Pin         = LED1_Pin;  
 | 
			
		||||
  
 | 
			
		||||
  /* Настройка таймингов по умолчанию для тестирования */
 | 
			
		||||
  tester->mbdata->HoldRegs.TimeForForward          = DEF_MS_TIME_FOR_POSITIVE;
 | 
			
		||||
  tester->mbdata->HoldRegs.TimeBeforeTest             = DEF_TIME_BEFORE_TEST;
 | 
			
		||||
  tester->mbdata->Coils.msTimeBeforeTest_enable       = DEF_TIME_BEFORE_TEST_MS_DELAY;
 | 
			
		||||
  
 | 
			
		||||
  tester->mbdata->HoldRegs.TimeBeforeDisconnect       = DEF_TIME_BEFORE_DISCONNECT;
 | 
			
		||||
  tester->mbdata->Coils.msTimeBeforeDisconnect_enable = DEF_TIME_BEFORE_DISCONNECT_MS_DELAY;
 | 
			
		||||
  tester->mbdata->HoldRegs.TimeForReverse       = DEF_TIME_FOR_REVERSE;
 | 
			
		||||
  tester->mbdata->Coils.msTimeForReverse_enable = DEF_TIME_FOR_REVERSE_MS_DELAY;
 | 
			
		||||
  
 | 
			
		||||
  tester->mbdata->HoldRegs.TimeForForward             = DEF_TIME_FOR_FORWARD;
 | 
			
		||||
  tester->mbdata->Coils.msTimeForForward_enable       = DEF_TIME_FOR_FORWARD_MS_DELAY;
 | 
			
		||||
  
 | 
			
		||||
  tester->mbdata->HoldRegs.TimeDeadtime               = DEF_DEADTIME;
 | 
			
		||||
  tester->mbdata->Coils.msTimeDeadtime_enable         = DEF_DEADTIME_MS_DELAY;
 | 
			
		||||
@ -217,9 +222,6 @@ void TESTER_Set_Default_Settings(TESTER_ProjectTypeDef *tester)
 | 
			
		||||
  tester->mbdata->HoldRegs.TimeBeforePeak             = DEF_TIME_BEFORE_PEAK;
 | 
			
		||||
  tester->mbdata->Coils.msTimeBeforePeak_enable       = DEF_TIME_BEFORE_PEAK_MS_DELAY;
 | 
			
		||||
  
 | 
			
		||||
  tester->mbdata->HoldRegs.TimeBeforeTest             = DEF_TIME_BEFORE_TEST;
 | 
			
		||||
  tester->mbdata->Coils.msTimeBeforeTest_enable       = DEF_TIME_BEFORE_TEST_MS_DELAY;
 | 
			
		||||
  
 | 
			
		||||
  
 | 
			
		||||
  /* Настройка АЦП */
 | 
			
		||||
  tester->mbdata->HoldRegs.Adc_PulseWidth             = TESTER_ADC_PULSE_EXPETCED_WIDTH;
 | 
			
		||||
 | 
			
		||||
@ -145,7 +145,7 @@
 | 
			
		||||
        <SetRegEntry>
 | 
			
		||||
          <Number>0</Number>
 | 
			
		||||
          <Key>ST-LINKIII-KEIL_SWO</Key>
 | 
			
		||||
          <Name>-U53FF72064980555724221187 -O2254 -SF10000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P1 -N00("ARM CoreSight SW-DP (ARM Core") -D00(1BA01477) -L00(0) -TO131090 -TC10000000 -TT10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_128.FLM -FS08000000 -FL08000 -FP0($$Device:STM32F103C6$Flash\STM32F10x_128.FLM) -WA0 -WE0 -WVCE4 -WS2710 -WM0 -WP2</Name>
 | 
			
		||||
          <Name>-U005600373433510237363934 -O2254 -SF10000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P1 -N00("ARM CoreSight SW-DP (ARM Core") -D00(1BA01477) -L00(0) -TO131090 -TC10000000 -TT10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_128.FLM -FS08000000 -FL08000 -FP0($$Device:STM32F103C6$Flash\STM32F10x_128.FLM) -WA0 -WE0 -WVCE4 -WS2710 -WM0 -WP2</Name>
 | 
			
		||||
        </SetRegEntry>
 | 
			
		||||
      </TargetDriverDllRegistry>
 | 
			
		||||
      <Breakpoint/>
 | 
			
		||||
@ -190,6 +190,16 @@
 | 
			
		||||
          <WinNumber>1</WinNumber>
 | 
			
		||||
          <ItemText>hmodbus1,0x0A</ItemText>
 | 
			
		||||
        </Ww>
 | 
			
		||||
        <Ww>
 | 
			
		||||
          <count>8</count>
 | 
			
		||||
          <WinNumber>1</WinNumber>
 | 
			
		||||
          <ItemText>MB_DATA,0x0A</ItemText>
 | 
			
		||||
        </Ww>
 | 
			
		||||
        <Ww>
 | 
			
		||||
          <count>9</count>
 | 
			
		||||
          <WinNumber>1</WinNumber>
 | 
			
		||||
          <ItemText>\\diode_tester\../Core/Interfaces/modbus.c\MB_DATA.HoldRegs.TimeForForward</ItemText>
 | 
			
		||||
        </Ww>
 | 
			
		||||
      </WatchWindow1>
 | 
			
		||||
      <WatchWindow2>
 | 
			
		||||
        <Ww>
 | 
			
		||||
@ -271,7 +281,7 @@
 | 
			
		||||
        <aLa>0</aLa>
 | 
			
		||||
        <aPa1>0</aPa1>
 | 
			
		||||
        <AscS4>0</AscS4>
 | 
			
		||||
        <aSer4>0</aSer4>
 | 
			
		||||
        <aSer4>1</aSer4>
 | 
			
		||||
        <StkLoc>1</StkLoc>
 | 
			
		||||
        <TrcWin>0</TrcWin>
 | 
			
		||||
        <newCpu>0</newCpu>
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								docs/mb_adr.xlsx
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								docs/mb_adr.xlsx
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							
		Loading…
	
		Reference in New Issue
	
	Block a user