GD32E230C8T6 PC13一直进入外部中断

[复制链接]
1027|8
 楼主| yyrliwen 发表于 2022-4-7 10:30 | 显示全部楼层 |阅读模式
PC13脚电压为3.3V,但是会一直进中断,不知道啥原因。

具体代码如下
RCU_AHBEN   |=   RCU_AHBEN_PCEN;    //GPIO时钟
gpio_mode_set(GPIOC ,GPIO_MODE_INPUT , GPIO_PUPD_PULLUP, GPIO_PIN_13);    //GPIO输入模式
syscfg_exti_line_config(EXTI_SOURCE_GPIOC, EXTI_SOURCE_PIN13);    //外部中断信号源配置
exti_init(EXTI_13, EXTI_INTERRUPT, EXTI_TRIG_FALLING);    //中断源下降沿触发
exti_interrupt_flag_clear(EXTI_13);    //清除中断
nvic_irq_enable(EXTI4_15_IRQn, 0);    //打开中断


//中断程序
void EXTI4_15_IRQHandler(void)
{
        exti_interrupt_flag_clear(EXTI_13);
}
tpgf 发表于 2022-5-1 11:37 | 显示全部楼层
中断方式是什么啊
heimaojingzhang 发表于 2022-5-1 11:44 | 显示全部楼层
外边一直有中断信号产生吗
keaibukelian 发表于 2022-5-1 11:53 | 显示全部楼层
中断方式有问题吧
labasi 发表于 2022-5-1 12:02 | 显示全部楼层
初始化代码看一下
paotangsan 发表于 2022-5-1 12:12 | 显示全部楼层
估计初始化有问题
renzheshengui 发表于 2022-5-1 12:52 | 显示全部楼层
进入之后应该自动清除标志位了
h_x_zhong 发表于 2022-5-1 16:01 | 显示全部楼层
初始化添加
gpio_output_options_set(GPIOC, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_13);
这句看看
h_x_zhong 发表于 2022-5-1 16:11 | 显示全部楼层
本帖最后由 h_x_zhong 于 2022-5-1 16:13 编辑

main(void)
{
    systick_config();

    /* enable the Tamper key GPIO clock */
    rcu_periph_clock_enable(RCU_GPIOC);
    rcu_periph_clock_enable(RCU_CFGCMP);

    gpio_mode_set(GPIOC, GPIO_MODE_INPUT, GPIO_PUPD_NONE, GPIO_PIN_13);
    gpio_output_options_set(GPIOC, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_13);

    /* enable and set key EXTI interrupt priority */
    nvic_irq_enable(EXTI4_15_IRQn,1U);
    /* connect key EXTI line to key GPIO pin */
    syscfg_exti_line_config(EXTI_SOURCE_GPIOC, EXTI_SOURCE_PIN13);
    /* configure key EXTI line */
    exti_init(EXTI_13, EXTI_INTERRUPT, EXTI_TRIG_RISING);
    exti_interrupt_flag_clear(EXTI_13);   
    while(1)
    {

    }
}
void EXTI4_15_IRQHandler(void)
{
    if(RESET != exti_interrupt_flag_get(EXTI_13)){
        
        exti_interrupt_flag_clear(EXTI_13);
    }
}


您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

34

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部