Всякие оптимизации и переделки под отладку на 417

По основному алгу
- расчет частоты сети тепер по всему периоду, а не полупериоду
- добавлены новые параметры: сдвиг синуса от нуля и сдвиг между фазами
This commit is contained in:
2025-11-19 11:34:33 +03:00
parent b61a11b4fe
commit 5090ddfd48
16 changed files with 316 additions and 184 deletions

View File

@@ -111,11 +111,12 @@
/* Периоды вызова всякого */
#define PM_ADC_PERIOD_US 30 ///< Период опроса АЦП в мкс
#define PM_SLOW_PERIOD_CNT 25 ///< Период обновления медленных расчетов тиках @ref PM_ADC_PERIOD_US
#define PM_SLOW_PERIOD_CNT 50 ///< Период обновления медленных расчетов тиках @ref PM_ADC_PERIOD_US
#define PM_TEMP_SLOW_PERIOD_CNT 200 ///< Период обновления датчиков температуры в тиках @ref PM_SLOW_PERIOD_CNT
/* Частоты таймеров в МГц*/
#define US_TIM5_FREQ_MHZ 90 ///< Частота тиков таймера ШИМ (1-4 каналы)
#define ADC_TIM8_FREQ_MZH 180 ///< Частота тиков таймера АЦП
#define PWM_TIM1_FREQ_MHZ 180 ///< Частота тиков таймера ШИМ (1-4 каналы)
#define PWM_TIM3_FREQ_MHZ 90 ///< Частота тиков таймера ШИМ (5-6 каналы)
@@ -127,12 +128,14 @@
// ===== ОТЛАДОЧНЫЕ ШТУКИ ДЛЯ 417 ======
#if defined(STM32F417xx)
#undef US_TIM5_FREQ_MHZ
#undef ADC_TIM8_FREQ_MZH
#undef PWM_TIM1_FREQ_MHZ
#undef PWM_TIM3_FREQ_MHZ
#undef ANGLE_TIM2_FREQ_MHZ
// У 417 меньше частота поэтому меняем прескалер
#define US_TIM5_FREQ_MHZ 84 ///< Частота тиков таймера ШИМ (1-4 каналы)
#define ADC_TIM8_FREQ_MZH 168 ///< Частота тиков таймера АЦП
#define PWM_TIM1_FREQ_MHZ 168 ///< Частота тиков таймера ШИМ (1-4 каналы)
#define PWM_TIM3_FREQ_MHZ 84 ///< Частота тиков таймера ШИМ (5-6 каналы)

View File

@@ -27,11 +27,11 @@
* @brief Список аварий УПП
*/
typedef enum {
WM_Not_Init = 0, ///< УПП не инициализирован
WM_Ready = 1, ///< УПП в готовности
WM_Running = 2, ///< УПП в работе, управляет тиристорами
WM_Done = 3, ///< УПП закончил свою работу
WM_Error = 4, ///< УПП в аварии
UPP_Not_Init = 0, ///< УПП не инициализирован
UPP_Ready = 1, ///< УПП в готовности
UPP_Work = 2, ///< УПП в работе, управляет тиристорами
UPP_Error = 3, ///< УПП в аварии
// WM_Done = 3, ///< УПП закончил свою работу
} UPP_WorkModeType_t;
/**