【11.PWM捕获】蓝桥杯嵌入式一周拿奖速成系列

系列文章目录

蓝桥杯嵌入式系列文章目录(更多此系列文章可见)


PWM捕获

  • 系列文章目录
  • 一、STM32CUBEMX配置
  • 二、项目代码
    • 1.mian.c --> HAL_TIM_IC_CatureCallback
  • 总结


一、STM32CUBEMX配置

  • STM32CUBEMX PA15 ->TIM2_CH1; PB4-> TIM3_CH1 预分频设置为79,自动重装载设置最大,开启中断
  • PWM捕获: HAL_TIM_IC_CatureCallback,
  • PWM捕获: 对了别忘了初始化
    HAL_TIM_IC_Start_IT(&htim2,TIM_CHANNEL_1);
    HAL_TIM_IC_Start_IT(&htim3,TIM_CHANNEL_1);

【11.PWM捕获】蓝桥杯嵌入式一周拿奖速成系列_第1张图片

二、项目代码

1.mian.c --> HAL_TIM_IC_CatureCallback

【11.PWM捕获】蓝桥杯嵌入式一周拿奖速成系列_第2张图片

//PWM捕获
u32 num2 = 0, num3 = 0; 
u32 f40 = 0, f39 = 0;  
void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim)
{
	if(htim == &htim2)
	{
		num2 = __HAL_TIM_GetCounter(&htim2);
		__HAL_TIM_SetCounter(&htim2,0);				
		f40 = 1000000/num2;			
		HAL_TIM_IC_Start_IT(&htim2,TIM_CHANNEL_1);
	}
	
	if(htim == &htim3)
	{
		num3 = __HAL_TIM_GetCounter(&htim3);
		__HAL_TIM_SetCounter(&htim3,0);		
		f39 = 1000000/num3;
		HAL_TIM_IC_Start_IT(&htim3,TIM_CHANNEL_1);
	}
}


总结

至此,就是PWM捕获相关的内容,唐怡佳继续加油!,如果有什么问题,大家也可以给我评论留言哦~同时希望大佬批评指正!

你可能感兴趣的:(蓝桥杯,stm32,嵌入式,蓝桥杯,职场和发展,嵌入式硬件)