38 TIM_MasterConfigTypeDef sMasterConfig = {0};
39 TIM_OC_InitTypeDef sConfigOC = {0};
40 TIM_BreakDeadTimeConfigTypeDef sBreakDeadTimeConfig = {0};
45 htim1.Instance = TIM1;
46 htim1.Init.Prescaler = 12-1;
47 htim1.Init.CounterMode = TIM_COUNTERMODE_UP;
48 htim1.Init.Period = 1000-1;
49 htim1.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
50 htim1.Init.RepetitionCounter = 0;
51 htim1.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
52 if (HAL_TIM_PWM_Init(&
htim1) != HAL_OK)
56 sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
57 sMasterConfig.MasterOutputTrigger2 = TIM_TRGO2_RESET;
58 sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
59 if (HAL_TIMEx_MasterConfigSynchronization(&
htim1, &sMasterConfig) != HAL_OK)
63 sConfigOC.OCMode = TIM_OCMODE_PWM1;
65 sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH;
66 sConfigOC.OCNPolarity = TIM_OCNPOLARITY_LOW;
67 sConfigOC.OCFastMode = TIM_OCFAST_DISABLE;
68 sConfigOC.OCIdleState = TIM_OCIDLESTATE_RESET;
69 sConfigOC.OCNIdleState = TIM_OCNIDLESTATE_RESET;
70 if (HAL_TIM_PWM_ConfigChannel(&
htim1, &sConfigOC, TIM_CHANNEL_2) != HAL_OK)
74 sBreakDeadTimeConfig.OffStateRunMode = TIM_OSSR_DISABLE;
75 sBreakDeadTimeConfig.OffStateIDLEMode = TIM_OSSI_DISABLE;
76 sBreakDeadTimeConfig.LockLevel = TIM_LOCKLEVEL_OFF;
77 sBreakDeadTimeConfig.DeadTime = 0;
78 sBreakDeadTimeConfig.BreakState = TIM_BREAK_DISABLE;
79 sBreakDeadTimeConfig.BreakPolarity = TIM_BREAKPOLARITY_HIGH;
80 sBreakDeadTimeConfig.BreakFilter = 0;
81 sBreakDeadTimeConfig.Break2State = TIM_BREAK2_DISABLE;
82 sBreakDeadTimeConfig.Break2Polarity = TIM_BREAK2POLARITY_HIGH;
83 sBreakDeadTimeConfig.Break2Filter = 0;
84 sBreakDeadTimeConfig.AutomaticOutput = TIM_AUTOMATICOUTPUT_DISABLE;
85 if (HAL_TIMEx_ConfigBreakDeadTime(&
htim1, &sBreakDeadTimeConfig) != HAL_OK)
114 GPIO_InitTypeDef GPIO_InitStruct = {0};
115 if(timHandle->Instance==TIM1)
121 __HAL_RCC_GPIOE_CLK_ENABLE();
125 GPIO_InitStruct.Pin = GPIO_PIN_10;
126 GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
127 GPIO_InitStruct.Pull = GPIO_NOPULL;
128 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
129 GPIO_InitStruct.Alternate = GPIO_AF1_TIM1;
130 HAL_GPIO_Init(GPIOE, &GPIO_InitStruct);