From 2c5900e872a3c6064addd5949b3bf55377723912 Mon Sep 17 00:00:00 2001 From: liuyuyan Date: Sun, 9 Jun 2024 22:08:10 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E5=A2=9E=E5=8A=A0PC0=E6=8C=89=E9=94=AE?= =?UTF-8?q?=E7=BB=88=E7=AB=AF=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Core/Inc/main.h | 1 + Core/Inc/stm32f1xx_it.h | 1 + Core/Src/gpio.c | 6 +++++- Core/Src/stm32f1xx_it.c | 14 ++++++++++++++ demo1_start.ioc | 10 +++++++--- 5 files changed, 28 insertions(+), 4 deletions(-) diff --git a/Core/Inc/main.h b/Core/Inc/main.h index c34ded3..417fa96 100644 --- a/Core/Inc/main.h +++ b/Core/Inc/main.h @@ -60,6 +60,7 @@ void Error_Handler(void); /* Private defines -----------------------------------------------------------*/ #define KEY_Pin GPIO_PIN_0 #define KEY_GPIO_Port GPIOC +#define KEY_EXTI_IRQn EXTI0_IRQn #define JD_PIN_Pin GPIO_PIN_11 #define JD_PIN_GPIO_Port GPIOA /* USER CODE BEGIN Private defines */ diff --git a/Core/Inc/stm32f1xx_it.h b/Core/Inc/stm32f1xx_it.h index 8699210..c4c1a23 100644 --- a/Core/Inc/stm32f1xx_it.h +++ b/Core/Inc/stm32f1xx_it.h @@ -56,6 +56,7 @@ void SVC_Handler(void); void DebugMon_Handler(void); void PendSV_Handler(void); void SysTick_Handler(void); +void EXTI0_IRQHandler(void); /* USER CODE BEGIN EFP */ /* USER CODE END EFP */ diff --git a/Core/Src/gpio.c b/Core/Src/gpio.c index 41c36b4..4d669a8 100644 --- a/Core/Src/gpio.c +++ b/Core/Src/gpio.c @@ -53,7 +53,7 @@ void MX_GPIO_Init(void) /*Configure GPIO pin : PtPin */ GPIO_InitStruct.Pin = KEY_Pin; - GPIO_InitStruct.Mode = GPIO_MODE_INPUT; + GPIO_InitStruct.Mode = GPIO_MODE_IT_FALLING; GPIO_InitStruct.Pull = GPIO_NOPULL; HAL_GPIO_Init(KEY_GPIO_Port, &GPIO_InitStruct); @@ -64,6 +64,10 @@ void MX_GPIO_Init(void) GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; HAL_GPIO_Init(JD_PIN_GPIO_Port, &GPIO_InitStruct); + /* EXTI interrupt init*/ + HAL_NVIC_SetPriority(EXTI0_IRQn, 0, 0); + HAL_NVIC_EnableIRQ(EXTI0_IRQn); + } /* USER CODE BEGIN 2 */ diff --git a/Core/Src/stm32f1xx_it.c b/Core/Src/stm32f1xx_it.c index 23284f5..10f575e 100644 --- a/Core/Src/stm32f1xx_it.c +++ b/Core/Src/stm32f1xx_it.c @@ -199,6 +199,20 @@ void SysTick_Handler(void) /* please refer to the startup file (startup_stm32f1xx.s). */ /******************************************************************************/ +/** + * @brief This function handles EXTI line0 interrupt. + */ +void EXTI0_IRQHandler(void) +{ + /* USER CODE BEGIN EXTI0_IRQn 0 */ + + /* USER CODE END EXTI0_IRQn 0 */ + HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_0); + /* USER CODE BEGIN EXTI0_IRQn 1 */ + + /* USER CODE END EXTI0_IRQn 1 */ +} + /* USER CODE BEGIN 1 */ /* USER CODE END 1 */ diff --git a/demo1_start.ioc b/demo1_start.ioc index dacdb4b..1efc863 100644 --- a/demo1_start.ioc +++ b/demo1_start.ioc @@ -6,7 +6,7 @@ ADC1.Rank-0\#ChannelRegularConversion=1 ADC1.SamplingTime-0\#ChannelRegularConversion=ADC_SAMPLETIME_1CYCLE_5 ADC1.master=1 File.Version=6 -GPIO.groupedBy= +GPIO.groupedBy=Group By Peripherals KeepUserPlacement=false Mcu.Family=STM32F1 Mcu.IP0=ADC1 @@ -45,6 +45,7 @@ MxCube.Version=6.3.0 MxDb.Version=DB.6.0.30 NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:false\:false +NVIC.EXTI0_IRQn=true\:0\:0\:false\:false\:true\:true\:true NVIC.ForceEnableDMAVector=true NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:false\:false @@ -72,10 +73,11 @@ PA7.Locked=true PA7.Signal=S_TIM3_CH2 PA9.Mode=Asynchronous PA9.Signal=USART1_TX -PC0.GPIOParameters=GPIO_Label +PC0.GPIOParameters=GPIO_Label,GPIO_ModeDefaultEXTI PC0.GPIO_Label=KEY +PC0.GPIO_ModeDefaultEXTI=GPIO_MODE_IT_FALLING PC0.Locked=true -PC0.Signal=GPIO_Input +PC0.Signal=GPXTI0 PC1.Locked=true PC1.Signal=ADCx_IN11 PC6.Locked=true @@ -142,6 +144,8 @@ RCC.USBFreq_Value=72000000 RCC.VCOOutput2Freq_Value=8000000 SH.ADCx_IN11.0=ADC1_IN11,IN11 SH.ADCx_IN11.ConfNb=1 +SH.GPXTI0.0=GPIO_EXTI0 +SH.GPXTI0.ConfNb=1 SH.S_TIM2_CH2.0=TIM2_CH2,PWM Generation2 CH2 SH.S_TIM2_CH2.ConfNb=1 SH.S_TIM3_CH1.0=TIM3_CH1,PWM Generation1 CH1 -- Gitee From 3f191ca18743e96f48df7c101e3ebd87701ad2ed Mon Sep 17 00:00:00 2001 From: liuyuyan Date: Sun, 9 Jun 2024 22:16:26 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E8=A7=A3=E5=86=B3master=E5=88=86=E6=94=AFi?= =?UTF-8?q?nit=E6=B5=8B=E8=AF=95=E7=A8=8B=E5=BA=8F=E7=BC=BA=E5=B0=91?= =?UTF-8?q?=E5=88=86=E5=8F=B7=E5=AF=BC=E8=87=B4=E9=94=99=E8=AF=AF=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Core/Src/user/init.c | 2 +- Core/Src/user/key.c | 12 ++++++++++++ Core/Src/user/key.h | 8 ++++++++ 3 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 Core/Src/user/key.c create mode 100644 Core/Src/user/key.h diff --git a/Core/Src/user/init.c b/Core/Src/user/init.c index 72df6a8..0c7ed56 100644 --- a/Core/Src/user/init.c +++ b/Core/Src/user/init.c @@ -27,7 +27,7 @@ void test(void) breathingLamp(); // 马达方向1 motorSpeed(MOTOR_TIM8_CH1,TEST_MOTOR_SP); - HAL_Delay(TEST_DELAY_MS) + HAL_Delay(TEST_DELAY_MS); // 马达方向2 motorSpeed(MOTOR_TIM8_CH2,TEST_MOTOR_SP); HAL_Delay(TEST_DELAY_MS); diff --git a/Core/Src/user/key.c b/Core/Src/user/key.c new file mode 100644 index 0000000..536bcce --- /dev/null +++ b/Core/Src/user/key.c @@ -0,0 +1,12 @@ +// +// Created by liuyu on 2024/6/9. +// + +#include +#include "key.h" + + +void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) +{ + +} diff --git a/Core/Src/user/key.h b/Core/Src/user/key.h new file mode 100644 index 0000000..901bbc9 --- /dev/null +++ b/Core/Src/user/key.h @@ -0,0 +1,8 @@ +// +// Created by liuyu on 2024/6/9. +// + +#ifndef DEMO1_START_KEY_H +#define DEMO1_START_KEY_H + +#endif //DEMO1_START_KEY_H -- Gitee From 10430ea5368c92c8e70e31814bff93ccad7e087c Mon Sep 17 00:00:00 2001 From: liuyuyan Date: Sun, 9 Jun 2024 22:27:11 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E6=8C=89=E9=94=AE?= =?UTF-8?q?=E4=B8=AD=E6=96=AD=E6=A3=80=E6=B5=8B=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Core/Src/user/key.c | 13 +++++++++++++ Core/Src/user/key.h | 3 ++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/Core/Src/user/key.c b/Core/Src/user/key.c index 536bcce..3e63b3d 100644 --- a/Core/Src/user/key.c +++ b/Core/Src/user/key.c @@ -3,10 +3,23 @@ // #include +#include #include "key.h" +#include "rgb.h" void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) { + static bool flag = true; + if (flag) + { + flag = false; + setRGBColor(500,500,500); + } + else + { + flag = true; + setRGBColor(0,0,0); + } } diff --git a/Core/Src/user/key.h b/Core/Src/user/key.h index 901bbc9..2d3a851 100644 --- a/Core/Src/user/key.h +++ b/Core/Src/user/key.h @@ -4,5 +4,6 @@ #ifndef DEMO1_START_KEY_H #define DEMO1_START_KEY_H - +void keyEvent(void); +void keyProcess(void); #endif //DEMO1_START_KEY_H -- Gitee From d987357c14092800b4526d0b09ab2e118c045f8d Mon Sep 17 00:00:00 2001 From: liuyuyan Date: Mon, 10 Jun 2024 21:36:11 +0800 Subject: [PATCH 4/4] =?UTF-8?q?1=E3=80=81=E5=A2=9E=E5=8A=A0=E6=8C=89?= =?UTF-8?q?=E9=94=AE=E4=B8=AD=E6=96=AD=E6=A3=80=E6=B5=8B=202=E3=80=81?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AE=9A=E6=97=B6=E5=99=A8=E6=A3=80=E6=B5=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Core/Inc/stm32f1xx_it.h | 1 + Core/Inc/tim.h | 2 ++ Core/Src/main.c | 1 + Core/Src/stm32f1xx_it.c | 16 +++++++++- Core/Src/tim.c | 70 +++++++++++++++++++++++++++++++++++++++++ Core/Src/user/key.c | 47 +++++++++++++++++++++------ Core/Src/user/myExti.c | 37 ++++++++++++++++++++++ Core/Src/user/myExti.h | 8 +++++ demo1_start.ioc | 18 ++++++++--- 9 files changed, 185 insertions(+), 15 deletions(-) create mode 100644 Core/Src/user/myExti.c create mode 100644 Core/Src/user/myExti.h diff --git a/Core/Inc/stm32f1xx_it.h b/Core/Inc/stm32f1xx_it.h index c4c1a23..00e6d43 100644 --- a/Core/Inc/stm32f1xx_it.h +++ b/Core/Inc/stm32f1xx_it.h @@ -57,6 +57,7 @@ void DebugMon_Handler(void); void PendSV_Handler(void); void SysTick_Handler(void); void EXTI0_IRQHandler(void); +void TIM4_IRQHandler(void); /* USER CODE BEGIN EFP */ /* USER CODE END EFP */ diff --git a/Core/Inc/tim.h b/Core/Inc/tim.h index 9993917..ee07c3b 100644 --- a/Core/Inc/tim.h +++ b/Core/Inc/tim.h @@ -33,6 +33,7 @@ extern "C" { extern TIM_HandleTypeDef htim2; extern TIM_HandleTypeDef htim3; +extern TIM_HandleTypeDef htim4; extern TIM_HandleTypeDef htim8; /* USER CODE BEGIN Private defines */ @@ -41,6 +42,7 @@ extern TIM_HandleTypeDef htim8; void MX_TIM2_Init(void); void MX_TIM3_Init(void); +void MX_TIM4_Init(void); void MX_TIM8_Init(void); void HAL_TIM_MspPostInit(TIM_HandleTypeDef *htim); diff --git a/Core/Src/main.c b/Core/Src/main.c index e5af03d..c166dd8 100644 --- a/Core/Src/main.c +++ b/Core/Src/main.c @@ -132,6 +132,7 @@ int main(void) MX_TIM3_Init(); MX_TIM8_Init(); MX_ADC1_Init(); + MX_TIM4_Init(); /* USER CODE BEGIN 2 */ mainInit(); userInit(); diff --git a/Core/Src/stm32f1xx_it.c b/Core/Src/stm32f1xx_it.c index 10f575e..53fd9b6 100644 --- a/Core/Src/stm32f1xx_it.c +++ b/Core/Src/stm32f1xx_it.c @@ -56,7 +56,7 @@ /* USER CODE END 0 */ /* External variables --------------------------------------------------------*/ - +extern TIM_HandleTypeDef htim4; /* USER CODE BEGIN EV */ /* USER CODE END EV */ @@ -213,6 +213,20 @@ void EXTI0_IRQHandler(void) /* USER CODE END EXTI0_IRQn 1 */ } +/** + * @brief This function handles TIM4 global interrupt. + */ +void TIM4_IRQHandler(void) +{ + /* USER CODE BEGIN TIM4_IRQn 0 */ + + /* USER CODE END TIM4_IRQn 0 */ + HAL_TIM_IRQHandler(&htim4); + /* USER CODE BEGIN TIM4_IRQn 1 */ + + /* USER CODE END TIM4_IRQn 1 */ +} + /* USER CODE BEGIN 1 */ /* USER CODE END 1 */ diff --git a/Core/Src/tim.c b/Core/Src/tim.c index 45ce95d..f6b5b98 100644 --- a/Core/Src/tim.c +++ b/Core/Src/tim.c @@ -26,6 +26,7 @@ TIM_HandleTypeDef htim2; TIM_HandleTypeDef htim3; +TIM_HandleTypeDef htim4; TIM_HandleTypeDef htim8; /* TIM2 init function */ @@ -140,6 +141,46 @@ void MX_TIM3_Init(void) /* USER CODE END TIM3_Init 2 */ HAL_TIM_MspPostInit(&htim3); +} +/* TIM4 init function */ +void MX_TIM4_Init(void) +{ + + /* USER CODE BEGIN TIM4_Init 0 */ + + /* USER CODE END TIM4_Init 0 */ + + TIM_ClockConfigTypeDef sClockSourceConfig = {0}; + TIM_MasterConfigTypeDef sMasterConfig = {0}; + + /* USER CODE BEGIN TIM4_Init 1 */ + + /* USER CODE END TIM4_Init 1 */ + htim4.Instance = TIM4; + htim4.Init.Prescaler = 7200-1; + htim4.Init.CounterMode = TIM_COUNTERMODE_UP; + htim4.Init.Period = 30000-1; + htim4.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; + htim4.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; + if (HAL_TIM_Base_Init(&htim4) != HAL_OK) + { + Error_Handler(); + } + sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL; + if (HAL_TIM_ConfigClockSource(&htim4, &sClockSourceConfig) != HAL_OK) + { + Error_Handler(); + } + sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET; + sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; + if (HAL_TIMEx_MasterConfigSynchronization(&htim4, &sMasterConfig) != HAL_OK) + { + Error_Handler(); + } + /* USER CODE BEGIN TIM4_Init 2 */ + + /* USER CODE END TIM4_Init 2 */ + } /* TIM8 init function */ void MX_TIM8_Init(void) @@ -231,6 +272,21 @@ void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* tim_baseHandle) /* USER CODE END TIM3_MspInit 1 */ } + else if(tim_baseHandle->Instance==TIM4) + { + /* USER CODE BEGIN TIM4_MspInit 0 */ + + /* USER CODE END TIM4_MspInit 0 */ + /* TIM4 clock enable */ + __HAL_RCC_TIM4_CLK_ENABLE(); + + /* TIM4 interrupt Init */ + HAL_NVIC_SetPriority(TIM4_IRQn, 0, 0); + HAL_NVIC_EnableIRQ(TIM4_IRQn); + /* USER CODE BEGIN TIM4_MspInit 1 */ + + /* USER CODE END TIM4_MspInit 1 */ + } } void HAL_TIM_PWM_MspInit(TIM_HandleTypeDef* tim_pwmHandle) @@ -338,6 +394,20 @@ void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* tim_baseHandle) /* USER CODE END TIM3_MspDeInit 1 */ } + else if(tim_baseHandle->Instance==TIM4) + { + /* USER CODE BEGIN TIM4_MspDeInit 0 */ + + /* USER CODE END TIM4_MspDeInit 0 */ + /* Peripheral clock disable */ + __HAL_RCC_TIM4_CLK_DISABLE(); + + /* TIM4 interrupt Deinit */ + HAL_NVIC_DisableIRQ(TIM4_IRQn); + /* USER CODE BEGIN TIM4_MspDeInit 1 */ + + /* USER CODE END TIM4_MspDeInit 1 */ + } } void HAL_TIM_PWM_MspDeInit(TIM_HandleTypeDef* tim_pwmHandle) diff --git a/Core/Src/user/key.c b/Core/Src/user/key.c index 3e63b3d..abefb94 100644 --- a/Core/Src/user/key.c +++ b/Core/Src/user/key.c @@ -4,22 +4,51 @@ #include #include +#include +#include #include "key.h" #include "rgb.h" +#define RGB_VAL 500 -void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) +/** +* @brief 按键事件检测--3s触发myExti中的定时器回调,然后会调用到该函数 +* @param name +* @param value +* @return +* @retval +* @bug +*/ +void keyEvent(void) { - static bool flag = true; - if (flag) - { - flag = false; - setRGBColor(500,500,500); + static bool flag=true; + if (flag){ + setRGBColor(RGB_VAL,RGB_VAL,RGB_VAL); + } else{ + setRGBColor(0,0,0); } + flag=!flag; + HAL_TIM_Base_Stop_IT(&htim4); +} - else +/** +* @brief 按键中断--有按键事件触发时,且是触发的才会开启tim4,否则有其他按键中断会关闭tim4 +* @param name +* @param value +* @return +* @retval +* @bug +*/ +void keyProcess(void) +{ + //按键按下,下降沿触发 + if (HAL_GPIO_ReadPin(KEY_GPIO_Port,KEY_Pin)==0) { - flag = true; - setRGBColor(0,0,0); + __HAL_TIM_CLEAR_FLAG(&htim4, TIM_SR_UIF); + htim4.Instance->CNT=0; + HAL_TIM_Base_Start_IT(&htim4); + } else{ + HAL_TIM_Base_Stop_IT(&htim4); } } + diff --git a/Core/Src/user/myExti.c b/Core/Src/user/myExti.c new file mode 100644 index 0000000..35b79c3 --- /dev/null +++ b/Core/Src/user/myExti.c @@ -0,0 +1,37 @@ +// +// Created by liuyu on 2024/6/10. +// + +#include "myExti.h" +#include "key.h" + +/** +* @brief 定时器触发中断事件--配置为3s +* @param &htim:定时器 +* @return +* @retval +* @bug +*/ +void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) +{ + if (htim->Instance==TIM4) + { + keyEvent(); + } + +} + +/** +* @brief 外部中断 +* @param GPIO_Pin :GPIO管脚 +* @return +* @retval +* @bug +*/ +void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) +{ + if (GPIO_Pin==GPIO_PIN_0) + { + keyProcess(); + } +} \ No newline at end of file diff --git a/Core/Src/user/myExti.h b/Core/Src/user/myExti.h new file mode 100644 index 0000000..693c9ce --- /dev/null +++ b/Core/Src/user/myExti.h @@ -0,0 +1,8 @@ +// +// Created by liuyu on 2024/6/10. +// + +#ifndef DEMO1_START_MYEXTI_H +#define DEMO1_START_MYEXTI_H +#include +#endif //DEMO1_START_MYEXTI_H diff --git a/demo1_start.ioc b/demo1_start.ioc index 1efc863..eeaa1b8 100644 --- a/demo1_start.ioc +++ b/demo1_start.ioc @@ -15,9 +15,10 @@ Mcu.IP2=RCC Mcu.IP3=SYS Mcu.IP4=TIM2 Mcu.IP5=TIM3 -Mcu.IP6=TIM8 -Mcu.IP7=USART1 -Mcu.IPNb=8 +Mcu.IP6=TIM4 +Mcu.IP7=TIM8 +Mcu.IP8=USART1 +Mcu.IPNb=9 Mcu.Name=STM32F103R(C-D-E)Tx Mcu.Package=LQFP64 Mcu.Pin0=PD0-OSC_IN @@ -29,6 +30,7 @@ Mcu.Pin13=PA14 Mcu.Pin14=VP_SYS_VS_Systick Mcu.Pin15=VP_TIM2_VS_ClockSourceINT Mcu.Pin16=VP_TIM3_VS_ClockSourceINT +Mcu.Pin17=VP_TIM4_VS_ClockSourceINT Mcu.Pin2=PC0 Mcu.Pin3=PC1 Mcu.Pin4=PA1 @@ -37,7 +39,7 @@ Mcu.Pin6=PA7 Mcu.Pin7=PC6 Mcu.Pin8=PC7 Mcu.Pin9=PA9 -Mcu.PinsNb=17 +Mcu.PinsNb=18 Mcu.ThirdPartyNb=0 Mcu.UserConstants= Mcu.UserName=STM32F103RCTx @@ -54,6 +56,7 @@ NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:true\:false\:false NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4 NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:false\:false NVIC.SysTick_IRQn=true\:15\:0\:false\:false\:true\:false\:true +NVIC.TIM4_IRQn=true\:0\:0\:false\:false\:true\:true\:true NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false PA1.Locked=true PA1.Signal=S_TIM2_CH2 @@ -116,7 +119,7 @@ ProjectManager.StackSize=0x400 ProjectManager.TargetToolchain=SW4STM32 ProjectManager.ToolChainLocation= ProjectManager.UnderRoot=true -ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_USART1_UART_Init-USART1-false-HAL-true,4-MX_TIM2_Init-TIM2-false-HAL-true,5-MX_TIM3_Init-TIM3-false-HAL-true,6-MX_TIM8_Init-TIM8-false-HAL-true,7-MX_ADC1_Init-ADC1-false-HAL-true +ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_USART1_UART_Init-USART1-false-HAL-true,4-MX_TIM2_Init-TIM2-false-HAL-true,5-MX_TIM3_Init-TIM3-false-HAL-true,6-MX_TIM8_Init-TIM8-false-HAL-true,7-MX_ADC1_Init-ADC1-false-HAL-true,8-MX_TIM4_Init-TIM4-false-HAL-true RCC.ADCFreqValue=36000000 RCC.AHBFreq_Value=72000000 RCC.APB1CLKDivider=RCC_HCLK_DIV2 @@ -168,6 +171,9 @@ TIM3.Period=5000-1 TIM3.Prescaler=72-1 TIM3.Pulse-PWM\ Generation1\ CH1=500-1 TIM3.Pulse-PWM\ Generation2\ CH2=100-1 +TIM4.IPParameters=Prescaler,Period +TIM4.Period=30000-1 +TIM4.Prescaler=7200-1 TIM8.Channel-PWM\ Generation1\ CH1=TIM_CHANNEL_1 TIM8.Channel-PWM\ Generation2\ CH2=TIM_CHANNEL_2 TIM8.IPParameters=Channel-PWM Generation1 CH1,Channel-PWM Generation2 CH2,Prescaler,Period @@ -181,4 +187,6 @@ VP_TIM2_VS_ClockSourceINT.Mode=Internal VP_TIM2_VS_ClockSourceINT.Signal=TIM2_VS_ClockSourceINT VP_TIM3_VS_ClockSourceINT.Mode=Internal VP_TIM3_VS_ClockSourceINT.Signal=TIM3_VS_ClockSourceINT +VP_TIM4_VS_ClockSourceINT.Mode=Internal +VP_TIM4_VS_ClockSourceINT.Signal=TIM4_VS_ClockSourceINT board=custom -- Gitee