使用定时器实现精准闪烁(替代CyDelay)
硬件配置:
拖放 TCPWM 组件(定时器),配置为周期触发(如1Hz)。
启用中断,连接至isr_timer。
- #include "project.h"
- volatile uint8_t led_toggle = 0;
- CY_ISR(isr_timer_Handler)
- {
- led_toggle ^= 1; // 翻转状态
- LED_Write(led_toggle); // 更新LED
- Timer_ClearInterrupt(); // 清除中断标志
- }
- int main(void)
- {
- CyGlobalIntEnable;
- isr_timer_StartEx(isr_timer_Handler); // 启动中断
- Timer_Start(); // 启动定时器
- for(;;) { /* 空循环,由中断处理LED */ }
- }
|