gd32e503的shrtim配置
时间: 2023-09-13 14:12:24 浏览: 160
GD32E503实现串口中断收发功能
GD32E503芯片的时钟树结构与其他GD32系列芯片类似,但是具体的时钟分频系数和时钟源需要根据具体应用场景进行配置。以下是一个基本的时钟配置示例:
```
/* 使能RC时钟 */
rcu_periph_clock_enable(RCU_PMU);
/* 配置HXTAL时钟为8MHz */
rcu_hxtal_config(RCU_HXTAL_MUL6);
/* 使能HXTAL时钟 */
rcu_periph_clock_enable(RCU_HXTAL);
/* 配置PLL时钟为48MHz */
rcu_plls_config(RCU_PLLSRC_HXTAL, RCU_PLL_MUL6);
/* 使能PLL时钟 */
rcu_periph_clock_enable(RCU_PLL);
/* 配置SYSCLK时钟源为PLL */
rcu_system_clock_source_config(RCU_CKSYSSRC_PLLCLK);
/* 配置AHB时钟为SYSCLK/1 */
rcu_ahb_clock_config(RCU_SYSCLK_DIV1);
/* 配置APB1时钟为AHB时钟/2 */
rcu_apb1_clock_config(RCU_APB1_DIV2);
/* 配置APB2时钟为AHB时钟/1 */
rcu_apb2_clock_config(RCU_APB2_DIV1);
/* 配置定时器时钟为APB1时钟/1 */
rcu_periph_clock_enable(RCU_TIMER0);
timer_clock_freq_config(TIMER0, RCU_TIMER_PSC_MUL16);
```
在这个例子中,我们使用外部晶振作为系统时钟源,并将HXTAL时钟频率设置为8MHz。然后,我们使用PLL将系统时钟频率提高到48MHz,并将其作为系统时钟源。最后,我们将AHB时钟设置为SYSCLK/1,APB1时钟设置为AHB时钟的一半,APB2时钟设置为AHB时钟,定时器时钟设置为APB1时钟的1/16。这些分频系数可以根据具体应用场景进行调整。
阅读全文