APB2时钟为72M
prescaler为分频系数,72M/(71+1)=1MHz
Count Period为计数,PWM频率为1MHz/(999+1)=1KHz
PB15为互补输出
Pulse设置的是占空比:(pulse+1)/(Count Period+1)=D 即(499+1)/(999+1)=50%
主函数加入
/* USER CODE BEGIN 2 */
MX_TIM1_Init();
HAL_TIMEx_PWMN_Start(&htim1,TIM_CHANNEL_3); //互补通道输出开启
/* USER CODE END 2 */
生成的代码中将tim.c中的模式成pwm,因为cubemx不支持修改
加入以下代码,则PB15接LED可为呼吸灯
pwm_data=999;
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
pwm_data--;
HAL_Delay(1);
if(pwm_data==1)
pwm_data=999;
__HAL_TIM_SET_COMPARE(&htim1,TIM_CHANNEL_3,pwm_data);
/* USER CODE BEGIN 3 */
}