感觉PWM中断用HAL_TIM_PWM_Start_IT(&htimx, TIM_CHANNEL_y);启动就可以了, 但事实上这个中断仅仅对应:void HAL_TIM_PWM_PulseFinishedCallback (TIM_HandleTypeDef *htim); 如果启用:void HAL_TIM_PeriodElapsedCallback (TIM_HandleTypeDef *htim)中断, 必须使用HAL_TIM_Base_Start_IT(&htimx );才能完成。 经3天反复试验,如果需要这两个中断,就必须同时启用: HAL_TIM_Base_Start_IT(&htimx ); HAL_TIM_PWM_Start_IT(&htimx, TIM_CHANNEL_y); 这样下面的函数才能都有响应。 void HAL_TIM_PWM_PulseFinishedCallback (TIM_HandleTypeDef *htim) void HAL_TIM_PeriodElapsedCallback (TIM_HandleTypeDef *htim) 也就是说,这两个中断需要两个对应的启用函数。 |
能在一个程序中同时使用TIM的callback和uart的callback函数吗?
Cubemax 生成的文件夹选项包含Core文件夹
多路ADC使用DMA模式有没有教程呀,芯片STM32L151
cubemx升级6.11后,左侧congfiguration选项出不来,鼠标转圈
STM32CubeMX有没有汉化版啊,该怎么搞?
STM32L051K8U6没有供电时,io是不是高阻态?
USBH CDC通讯,如何修改通讯波特率?
NUCLEO-H7A3ZI-Q配置RCC出问题
STM32L151定时器上升沿触发ADC采样:低电平期间多出现一次采样动作
mcu iic问题:mcu作为i2c-slave, main函数内循环打印,收到 i2c get 时,循环打印停止了是什么原因?
HAL_TIM_Base_Start_IT(&htimx );==》这个 函数启动的是基于更新事件的中断;
HAL_TIM_PWM_Start_IT(&htimx, TIM_CHANNEL_y);==》这个函数启动的是基于比较事件的中断;
当然,库函数里给我们预备的回调函数也不一样。