而标准库只需要在TIM2_IRQHandle里写中断需要的代码即可? 在STM32 HAL库中,中断服务函数(ISR)的设计思路与标准外设库(SPL)有所不同。这种差异主要体现在对硬件抽象层(HAL)的封装和易用性上。下面详细解释为什么HAL库中TIM2_IRQHandler(void)会调用HAL_TIM_IRQHandler(&timer_handle);而不是直接在ISR中编写中断...
同时确保 timer.c 中有正确的 tim2_irqhandler 定义: c // timer.c #include <stdio.h> void tim2_irqhandler(void) { // 中断处理代码 printf("TIM2 interrupt handler in timer.c "); } 完成这些修改后,重新编译你的项目,链接错误应该就会被解决。