From 1690cdcb93889f70d00a82e5da49ecc438e31cce Mon Sep 17 00:00:00 2001 From: Razvalyaev Date: Sat, 6 Dec 2025 07:51:00 +0300 Subject: [PATCH] =?UTF-8?q?=D1=82=D1=80=D0=B8=D0=B3=D0=B3=D0=B5=D1=80=20?= =?UTF-8?q?=D1=80=D0=B5=D0=B6=D0=B8=D0=BC=20=D1=83=20=D0=B2=D1=82=D0=BE?= =?UTF-8?q?=D1=80=D0=BE=D0=B3=D0=BE=20=D1=88=D0=B8=D0=BC=20=D1=82=D0=B0?= =?UTF-8?q?=D0=B9=D0=BC=D0=B5=D1=80=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- UPP/Core/Src/tim.c | 11 +- UPP/MDK-ARM/UPP.uvoptx | 94 ++++++------ UPP/MDK-ARM/UPP.uvprojx | 309 ++++++++++++++++++++-------------------- UPP/UPP.ioc | 20 ++- 4 files changed, 221 insertions(+), 213 deletions(-) diff --git a/UPP/Core/Src/tim.c b/UPP/Core/Src/tim.c index 9659878..ce6afdf 100644 --- a/UPP/Core/Src/tim.c +++ b/UPP/Core/Src/tim.c @@ -53,7 +53,7 @@ void MX_TIM1_Init(void) htim1.Init.CounterMode = TIM_COUNTERMODE_UP; htim1.Init.Period = 65535; htim1.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; - htim1.Init.RepetitionCounter = 20; + htim1.Init.RepetitionCounter = 0; htim1.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; if (HAL_TIM_Base_Init(&htim1) != HAL_OK) { @@ -268,6 +268,7 @@ void MX_TIM8_Init(void) /* USER CODE END TIM8_Init 0 */ TIM_ClockConfigTypeDef sClockSourceConfig = {0}; + TIM_SlaveConfigTypeDef sSlaveConfig = {0}; TIM_MasterConfigTypeDef sMasterConfig = {0}; TIM_OC_InitTypeDef sConfigOC = {0}; TIM_BreakDeadTimeConfigTypeDef sBreakDeadTimeConfig = {0}; @@ -280,7 +281,7 @@ void MX_TIM8_Init(void) htim8.Init.CounterMode = TIM_COUNTERMODE_UP; htim8.Init.Period = 65535; htim8.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; - htim8.Init.RepetitionCounter = 20; + htim8.Init.RepetitionCounter = 0; htim8.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; if (HAL_TIM_Base_Init(&htim8) != HAL_OK) { @@ -299,6 +300,12 @@ void MX_TIM8_Init(void) { Error_Handler(); } + sSlaveConfig.SlaveMode = TIM_SLAVEMODE_TRIGGER; + sSlaveConfig.InputTrigger = TIM_TS_ITR0; + if (HAL_TIM_SlaveConfigSynchro(&htim8, &sSlaveConfig) != HAL_OK) + { + Error_Handler(); + } sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET; sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; if (HAL_TIMEx_MasterConfigSynchronization(&htim8, &sMasterConfig) != HAL_OK) diff --git a/UPP/MDK-ARM/UPP.uvoptx b/UPP/MDK-ARM/UPP.uvoptx index c3a2b14..0d4b4d0 100644 --- a/UPP/MDK-ARM/UPP.uvoptx +++ b/UPP/MDK-ARM/UPP.uvoptx @@ -1,4 +1,4 @@ - + 1.0 @@ -45,7 +45,7 @@ 79 66 8 - + 1 @@ -104,16 +104,16 @@ 0 0 6 - - - - - - - - - - + + + + + + + + + + STLink\ST-LINKIII-KEIL_SWO.dll @@ -142,8 +142,8 @@ 0 0 ..\Core\PowerMonitor\power_monitor.c - - + + @@ -175,19 +175,19 @@ 0 0 - - + + 0 0 0 - - - - - - - - + + + + + + + + 1 1 @@ -222,7 +222,7 @@ 79 66 8 - + 1 @@ -281,16 +281,16 @@ 0 0 6 - - - - - - - - - - + + + + + + + + + + STLink\ST-LINKIII-KEIL_SWO.dll @@ -307,7 +307,7 @@ 0 ARMDBGFLAGS - + 0 @@ -325,7 +325,7 @@ -U005600373433510237363934 -O206 -SF10000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P1 -N00("ARM CoreSight SW-DP (ARM Core") -D00(2BA01477) -L00(0) -TO131123 -TC168000000 -TT10000000 -TP21 -TDS800D -TDT1 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC1000 -FN1 -FF0STM32F4xx_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F417ZGTx$CMSIS\Flash\STM32F4xx_1024.FLM) -WA0 -WE0 -WVCE4 -WS2710 -WM0 -WP2 - + 0 @@ -524,19 +524,19 @@ 0 0 - - + + 0 0 0 - - - - - - - - + + + + + + + + 0 diff --git a/UPP/MDK-ARM/UPP.uvprojx b/UPP/MDK-ARM/UPP.uvprojx index 3def99e..0c2212a 100644 --- a/UPP/MDK-ARM/UPP.uvprojx +++ b/UPP/MDK-ARM/UPP.uvprojx @@ -1,10 +1,7 @@ - - - + + 2.1 -
### uVision Project, (C) Keil Software
- UPP @@ -20,28 +17,28 @@ Keil.STM32F4xx_DFP.2.17.1 https://www.keil.com/pack/ IRAM(0x20000000-0x2002FFFF) IRAM2(0x10000000-0x1000FFFF) IROM(0x8000000-0x80FFFFF) CLOCK(25000000) FPU2 CPUTYPE("Cortex-M4") TZ - - - + + + 0 - - - - - - - - - - + + + + + + + + + + $$Device:STM32F427ZGTx$CMSIS\SVD\STM32F427x.svd 0 0 - - - - - + + + + + 0 0 @@ -56,15 +53,15 @@ 1 1 1 - + 1 0 0 0 0 - - + + 0 0 0 @@ -73,8 +70,8 @@ 0 0 - - + + 0 0 0 @@ -83,15 +80,15 @@ 0 1 - - + + 0 0 0 0 1 - + 0 @@ -105,8 +102,8 @@ 0 0 3 - - + + 0 @@ -139,11 +136,11 @@ 1 BIN\UL2V8M.DLL - - - - - + + + + + 0 @@ -176,7 +173,7 @@ 0 0 "Cortex-M4" - + 0 0 0 @@ -311,7 +308,7 @@ 0x10000 - + 1 @@ -338,9 +335,9 @@ 0 0 - + USE_HAL_DRIVER,STM32F427xx, ARM_MATH_CM4 - + ../Core/Inc;../Drivers/STM32F4xx_HAL_Driver/Inc;../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy;../Drivers/CMSIS/Device/ST/STM32F4xx/Include;../Drivers/CMSIS/Include;../AllLibs/ExtMemory/Inc;../AllLibs/Modbus/Inc;../AllLibs/MyLibs/MyLibs/Inc;../AllLibs/MyLibs/RTT;../AllLibs/PeriphGeneral/Inc;../Core/Configs;../Core/PowerMonitor;../Core/Thyristors;../Core/UPP @@ -356,10 +353,10 @@ 0 1 - - - - + + + + @@ -369,15 +366,15 @@ 0 1 0 - - - - - - - - - + + + + + + + + + @@ -952,8 +949,8 @@ 2 2 11 - - + + 1 @@ -969,10 +966,10 @@ 2 0 - - - - + + + + @@ -1007,28 +1004,28 @@ Keil.STM32F4xx_DFP.2.17.1 https://www.keil.com/pack/ IRAM(0x20000000,0x00020000) IRAM2(0x10000000,0x00010000) IROM(0x08000000,0x00100000) CPUTYPE("Cortex-M4") FPU2 CLOCK(12000000) ELITTLE - - + + UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32F4xx_1024 -FS08000000 -FL0100000 -FP0($$Device:STM32F417ZGTx$CMSIS\Flash\STM32F4xx_1024.FLM)) 0 $$Device:STM32F417ZGTx$Drivers\CMSIS\Device\ST\STM32F4xx\Include\stm32f4xx.h - - - - - - - - - + + + + + + + + + $$Device:STM32F417ZGTx$CMSIS\SVD\STM32F41x.svd 0 0 - - - - - + + + + + 0 0 @@ -1043,15 +1040,15 @@ 1 1 1 - + 1 0 0 0 0 - - + + 0 0 0 @@ -1060,8 +1057,8 @@ 0 0 - - + + 0 0 0 @@ -1070,15 +1067,15 @@ 0 0 - - + + 0 0 0 0 1 - + 0 @@ -1092,8 +1089,8 @@ 0 0 3 - - + + 0 @@ -1127,10 +1124,10 @@ 1 BIN\UL2CM3.DLL "" () - - - - + + + + 0 @@ -1163,7 +1160,7 @@ 0 0 "Cortex-M4" - + 0 0 0 @@ -1298,7 +1295,7 @@ 0x10000 - + 1 @@ -1325,9 +1322,9 @@ 0 0 - + USE_HAL_DRIVER,STM32F417xx, ARM_MATH_CM4 - + ../Core/Inc;../Drivers/STM32F4xx_HAL_Driver/Inc;../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy;../Drivers/CMSIS/Device/ST/STM32F4xx/Include;../Drivers/CMSIS/Include;../AllLibs/ExtMemory/Inc;../AllLibs/Modbus/Inc;../AllLibs/MyLibs/MyLibs/Inc;../AllLibs/MyLibs/RTT;../AllLibs/PeriphGeneral/Inc;../Core/Configs;../Core/PowerMonitor;../Core/Thyristors;../Core/UPP @@ -1343,10 +1340,10 @@ 0 1 - - - - + + + + @@ -1356,15 +1353,15 @@ 0 1 0 - - - - - - - - - + + + + + + + + + @@ -1519,8 +1516,8 @@ 2 2 11 - - + + 1 @@ -1549,10 +1546,10 @@ 2 2 - - - - + + + + @@ -1580,8 +1577,8 @@ 2 2 11 - - + + 1 @@ -1610,10 +1607,10 @@ 2 2 - - - - + + + + @@ -1641,8 +1638,8 @@ 2 2 11 - - + + 1 @@ -1671,10 +1668,10 @@ 2 2 - - - - + + + + @@ -1702,8 +1699,8 @@ 2 2 11 - - + + 1 @@ -1732,10 +1729,10 @@ 2 2 - - - - + + + + @@ -1883,8 +1880,8 @@ 2 2 11 - - + + 1 @@ -1913,10 +1910,10 @@ 2 2 - - - - + + + + @@ -2199,8 +2196,8 @@ 2 2 11 - - + + 1 @@ -2216,10 +2213,10 @@ 2 0 - - - - + + + + @@ -2236,34 +2233,32 @@ - - + - + - + - + - - + + - + - - + + - + - @@ -2272,5 +2267,5 @@ -
+ diff --git a/UPP/UPP.ioc b/UPP/UPP.ioc index fd38e5f..f2944be 100644 --- a/UPP/UPP.ioc +++ b/UPP/UPP.ioc @@ -136,14 +136,16 @@ Mcu.Pin61=VP_TIM2_VS_no_output2 Mcu.Pin62=VP_TIM2_VS_no_output3 Mcu.Pin63=VP_TIM3_VS_ClockSourceINT Mcu.Pin64=VP_TIM5_VS_ClockSourceINT -Mcu.Pin65=VP_TIM8_VS_ClockSourceINT -Mcu.Pin66=VP_TIM8_VS_OPM -Mcu.Pin67=VP_TIM11_VS_ClockSourceINT -Mcu.Pin68=VP_TIM12_VS_ClockSourceINT +Mcu.Pin65=VP_TIM8_VS_ControllerModeTrigger +Mcu.Pin66=VP_TIM8_VS_ClockSourceINT +Mcu.Pin67=VP_TIM8_VS_ClockSourceITR +Mcu.Pin68=VP_TIM8_VS_OPM +Mcu.Pin69=VP_TIM11_VS_ClockSourceINT Mcu.Pin7=PC15/OSC32_OUT +Mcu.Pin70=VP_TIM12_VS_ClockSourceINT Mcu.Pin8=PF6 Mcu.Pin9=PF7 -Mcu.PinsNb=69 +Mcu.PinsNb=71 Mcu.ThirdPartyNb=0 Mcu.UserConstants=angletim,htim2;mb_huart,huart3;mbdbg_htim,htim11;PWM_CHANNEL_1,TIM_CHANNEL_1;PWM_CHANNEL_2,TIM_CHANNEL_2;PWM_CHANNEL_3,TIM_CHANNEL_3;PWM_CHANNEL_4,TIM_CHANNEL_4;mem_hspi,hspi3;ANGLE_CHANNEL_2,TIM_CHANNEL_2;ANGLE_CHANNEL_3,TIM_CHANNEL_3;ANGLE_CHANNEL_1,TIM_CHANNEL_1;PWM_CHANNEL_5,TIM_CHANNEL_3;PWM_CHANNEL_6,TIM_CHANNEL_4;mb_htim,htim12;adc_tim,htim3;usTick,ustim.Instance->CNT;hpwm2,htim8;mb_dbg_huart,huart6;ustim,htim5;hpwm1,htim1 Mcu.UserName=STM32F427ZGTx @@ -474,7 +476,7 @@ TIM1.Channel-PWM\ Generation3\ CH3=TIM_CHANNEL_3 TIM1.Channel-PWM\ Generation4\ CH4=TIM_CHANNEL_4 TIM1.IPParameters=Prescaler,Channel-PWM Generation1 CH1,Channel-PWM Generation2 CH2,Channel-PWM Generation4 CH4,Channel-PWM Generation3 CH3,TIM_MasterOutputTrigger,RepetitionCounter TIM1.Prescaler=0 -TIM1.RepetitionCounter=20 +TIM1.RepetitionCounter=0 TIM1.TIM_MasterOutputTrigger=TIM_TRGO_UPDATE TIM11.IPParameters=Prescaler TIM11.Prescaler=180-1 @@ -498,7 +500,7 @@ TIM8.IPParameters=Prescaler,Period,TIM_MasterSlaveMode,TIM_MasterOutputTrigger,C TIM8.OC4Preload_PWM=ENABLE TIM8.Period=65535 TIM8.Prescaler=0 -TIM8.RepetitionCounter=20 +TIM8.RepetitionCounter=0 TIM8.TIM_MasterOutputTrigger=TIM_TRGO_RESET TIM8.TIM_MasterSlaveMode=TIM_MASTERSLAVEMODE_DISABLE USART3.IPParameters=VirtualMode @@ -535,6 +537,10 @@ VP_TIM5_VS_ClockSourceINT.Mode=Internal VP_TIM5_VS_ClockSourceINT.Signal=TIM5_VS_ClockSourceINT VP_TIM8_VS_ClockSourceINT.Mode=Internal VP_TIM8_VS_ClockSourceINT.Signal=TIM8_VS_ClockSourceINT +VP_TIM8_VS_ClockSourceITR.Mode=TriggerSource_ITR0 +VP_TIM8_VS_ClockSourceITR.Signal=TIM8_VS_ClockSourceITR +VP_TIM8_VS_ControllerModeTrigger.Mode=Trigger Mode +VP_TIM8_VS_ControllerModeTrigger.Signal=TIM8_VS_ControllerModeTrigger VP_TIM8_VS_OPM.Mode=OPM_bit VP_TIM8_VS_OPM.Signal=TIM8_VS_OPM board=custom