本帖最后由 单片小菜 于 2024-7-27 06:59 编辑
看着系统的架构图,进行定时器的配置。
在这里看见PWM输出时钟为96M
我们打开软件,进行设置
进入到主函数中进行设置
cyhal_timer_t timer_obj;
uint16_t timer_count = 1000;
static void isr_timer(void* callback_arg, cyhal_timer_event_t event)
{
(void)callback_arg;
(void)event;
if(timer_count > 0)
timer_count -= 1;
if(timer_count == 0)
{
timer_count = 1000;
cyhal_gpio_toggle(CYBSP_USER_LED1);
cyhal_gpio_toggle(CYBSP_USER_LED2);
}
}
void app_timer_init(void)
{
cyhal_timer_init_cfg(&timer_obj, &tcpwm_0_group_1_cnt_0_hal_config);
cyhal_timer_register_callback(&timer_obj, isr_timer, NULL);
cyhal_timer_enable_event(&timer_obj, CYHAL_TIMER_IRQ_TERMINAL_COUNT,3, true);
cyhal_timer_start(&timer_obj);
}
下载烧录之后,查看现象。
|