外设时钟配置如代码清单EXTI例程时钟配置代码所示,在该历程中使用PA0作为EXTI输入检测引脚,因而,在GD32全系列MCU中均需打开GPIOA的时钟,另外,在GD32F1X0、GD32F3X0和GD32E23X中需要打开CFGCMP时钟,以及在GD32F4XX中需要打开SYSCFG时钟,主要由于 EXTI源选择控制位在系统配置寄存器中。void rcu_config(void){...
rcu_periph_clock_enable(RCU_CFGCMP);#elif defined GD32F4XX rcu_periph_clock_enable(RCU_SYSCFG)...
外设时钟配置如代码清单EXTI例程时钟配置代码所示,在该历程中使用PA0作为EXTI输入检测引脚,因而,在GD32全系列MCU中均需打开GPIOA的时钟,另外,在GD32F1X0、GD32F3X0和GD32E23X中需要打开CFGCMP时钟,以及在GD32F4XX中需要打开SYSCFG时钟,主要由于 EXTI源选择控制位在系统配置寄存器中。 void rcu_config(void) { ...
rcu_periph_clock_enable(RCU_CFGCMP); /* configure button pin as input */ gpio_mode_set(GPIOA, GPIO_MODE_INPUT, GPIO_PUPD_NONE,GPIO_PIN_0); /* enable and set key EXTI interrupt to the lowest priority */ nvic_irq_enable(EXTI0_1_IRQn, 2U); #elif defined GD32F4XX rcu_periph_cloc...
代码意思为,前两个if所判断的单片机只需要配置相应引脚所在的组的时钟就可以了,第三个if意思为开启RCU_CFGCMP时钟,第四个意思为开启系统时钟。 2. GPIO引脚的配置 对需要配置外部中断的引脚进行初始化 void gpio_config(void) { #if defined GD32F10X_HD || GD32F30X_HD || GD32F20X_CL || GD32E10...
rcu_periph_clock_enable(RCU_CFGCMP); /* configure button pin as input */ gpio_mode_set(GPIOA, GPIO_MODE_INPUT, GPIO_PUPD_NONE, GPIO_PIN_0); /* enable and set key wakeup EXTI interrupt to the higher priority */ nvic_irq_enable(EXTI0_1_IRQn, 2U, 0U); ...
(RCU_GPIOA); #elif defined GD32F1X0 || GD32F4XX || GD32F3X0 || GD32E23X rcu_periph_clock_enable(RCU_GPIOA); #if defined GD32F1X0 || GD32F3X0 || GD32E23X rcu_periph_clock_enable(RCU_CFGCMP); #elif defined GD32F4XX rcu_periph_clock_enable(RCU_SYSCFG); #endif #endif...
rcu_periph_clock_enable(RCU_CFGCMP); /* configure button pin as input */ gpio_mode_set(GPIOA, GPIO_MODE_INPUT, GPIO_PUPD_NONE, GPIO_PIN_0); /* enable and set key wakeup EXTI interrupt to the higher priority */ nvic_irq_enable(EXTI0_1_IRQn, 2U, 0U); ...
rcu_periph_clock_enable(RCU_CFGCMP); /* configure button pin as input */ gpio_mode_set(GPIOA, GPIO_MODE_INPUT, GPIO_PUPD_NONE, GPIO_PIN_0); /* enable and set key wakeup EXTI interrupt to the higher priority */ nvic_irq_enable(EXTI0_1_IRQn, 2U, 0U); ...
(GPIOA, GPIO_MODE_INPUT, GPIO_PUPD_PULLUP, GPIO_PIN_0); rcu_periph_clock_enable(RCU_CFGCMP); nvic_irq_enable(EXTI0_1_IRQn, 2U, 0U); syscfg_exti_line_config(EXTI_SOURCE_GPIOA, EXTI_SOURCE_PIN0); exti_init(EXTI_0, EXTI_INTERRUPT, EXTI_TRIG_RISING); exti_interrupt_flag_clear(...