1、定时器配置
2、配置时钟树
TIM4挂载在APB1下,不分频的情况下,实际PWM周期 = 设置的周期数值/定时器时钟;上图设置1000的实际周期为1000/240=4.1666(单位为us)。
3、配置freertos,生成代码
4、APP添加程序
/* USER CODE END Header_APP2 */
void APP2(void *argument)
{
/* USER CODE BEGIN APP2 */
/* Infinite loop */
HAL_TIM_PWM_Start(&htim4, TIM_CHANNEL_1); // 启动通道 1
HAL_TIM_PWM_Start(&htim4, TIM_CHANNEL_2); // 启动通道 2
HAL_TIM_PWM_Start(&htim4, TIM_CHANNEL_3); // 启动通道 3
HAL_TIM_PWM_Start(&htim4, TIM_CHANNEL_4); // 启动通道 4
__HAL_TIM_SET_COMPARE(&htim4, TIM_CHANNEL_1, 500); // 占空比为 50%
__HAL_TIM_SET_COMPARE(&htim4, TIM_CHANNEL_2, 500); // 占空比为 50%
__HAL_TIM_SET_COMPARE(&htim4, TIM_CHANNEL_3, 500); // 占空比为 50%
__HAL_TIM_SET_COMPARE(&htim4, TIM_CHANNEL_4, 500); // 占空比为 50%
for(;;)
{
osDelay(1);
}
/* USER CODE END APP2 */
}
5、逻辑分析仪测量输出
阅读全文
342