Timer interrupt - GD32

Timer-GD32

insert image description here
insert image description here

#include "pwm_pulse.h"

//功能:初始化timer2的pwm输出参数
//psr: 预分频
//arr: 自动重装载
//pulse: 捕获/比较
void timer2_pwm_init(uint16_t psr, uint16_t arr, uint16_t pulse){
	timer_parameter_struct timer_init_struct;
	timer_oc_parameter_struct timer_oc_init_struct;
	
	// 时钟源和io口pb0的初始化
	rcu_periph_clock_enable(RCU_TIMER2); //开启定时器的时钟
	rcu_periph_clock_enable(RCU_GPIOB);
	rcu_periph_clock_enable(RCU_AF);
	
	gpio_init(GPIOB, GPIO_MODE_AF_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_0);
	
	// 初始化timer2
	timer_deinit(TIMER2);
	timer_init_struct.prescaler = psr;
	timer_init_struct.period = arr;  //自动装载值
	timer_init_struct.alignedmode = TIMER_COUNTER_EDGE;  //边沿对齐
	timer_init_struct.counterdirection = TIMER_COUNTER_UP; //计数方向
	timer_init(TIMER2, &

Guess you like

Origin blog.csdn.net/qq_45159887/article/details/131186511