STM32的hal库 定时器刹车配置

最近小编在调试STM32的hal库,TIM1波形刹车控制在此做以下几点总结,如有问题在相互交流谢谢!

1、用cube配置TIM1定时配置PWM输出,使能定时器自动重载,刹车自动恢复:

 

 

 

 

2、程序:

uint16_t dutyCycle = 1;
uint16_t test_value[5];
uint16_t pwmStartUp =0;




 /* USER CODE BEGIN 2 */
	
	HAL_TIM_Base_Start(&htim1);									//使能TIM1
	HAL_TIM_PWM_Start(&htim1, TIM_CHANNEL_1);		//使能PWM通道1
	HAL_TIM_PWM_Start(&htim1, TIM_CHANNEL_2);		//使能PWM通道2

  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
		
		
		if(test_value[0] != dutyCycle)					//修改移相值
		{
			test_value[0] = dutyCycle;
			test_value[1] ++;
			__HAL_TIM_SET_COMPARE(&htim1, TIM_CHANNEL_1, dutyCycle);	//通道移相			
			__HAL_TIM_SET_COMPARE(&htim1, TIM_CHANNEL_2, dutyCycle);	//通道移相			
		}
		else if(pwmStartUp != 0)	   								    //启动PWM输出
		{
			pwmStartUp = 0;
			dutyCycle = 1;		  									    //设置最小值											
			__HAL_TIM_SET_COMPARE(&htim1, TIM_CHANNEL_1, dutyCycle);	//通道移相			
			__HAL_TIM_SET_COMPARE(&htim1, TIM_CHANNEL_2, dutyCycle);	//通道移相			
			HAL_TIM_Base_Start(&htim1);								    //使能TIM1
			HAL_TIM_PWM_Start(&htim1, TIM_CHANNEL_1);				    //使能PWM通道1
			HAL_TIM_PWM_Start(&htim1, TIM_CHANNEL_2);					//使能PWM通道2
		}
		
		
		test_value[4] ++;
		HAL_Delay(200);
		
		
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
  }

3、仿真波形

 

 

链接:https://pan.baidu.com/s/1c9okZYu2RS1zVWffGWlIiw 
提取码:oblt 
 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值