stm8L151 外部中断问题

[复制链接]
7528|3
 楼主| sioca 发表于 2012-1-2 00:12 | 显示全部楼层 |阅读模式
GPIO_Init(GPIOB, 3, GPIO_Mode_In_PU_IT);
    EXTI_DeInit();
EXTI_SetPinSensitivity((EXTI_Pin_TypeDef)EXTI_Pin_3, EXTI_Trigger_Rising);
enableInterrupts();
while(1);

这段程序初始化下来,意图是将GPIOB初始化成外部中断,下降沿触发到EXTI3_IRQHandler中(根据DATASHEET,PORT几就映射到EXTI几)
但是运行时却发现一直进EXTI1中断,执行了清中断指令还是反复进来。GPIO口初始化时, 只有B3这一个口是带IT的,不知到为什么还会进EXTI1? 而且如果我将SetPinSensitivity注释掉的话,就不会反复进中断了。这是怎么回事呢??
BY THE WAY, STM8L外部中断看着还真晕乎乎

INTERRUPT_HANDLER(EXTI1_IRQHandler, 9){
    EXTI_ClearITPendingBit(EXTI_IT_Pin1);
}
 楼主| sioca 发表于 2012-1-2 00:13 | 显示全部楼层
而且我在硬件上明显的触发GPIO B3,SR寄存器中也一直是0X02,同时反复进EXTI1中断
lost1421 发表于 2012-1-2 16:02 | 显示全部楼层
看看你的**vector.c里面是否正确,上一次我就是将EXTI1_IRQHandler拷贝来拷贝去,忘了修改那个数字,忙活了一个小时才发现那个傻问题的根源。
shcdz 发表于 2014-5-17 17:55 | 显示全部楼层
STM8L151C6T6 现货35K 低价出货,深航春电子,137-143-27748  QQ7927-65998
您需要登录后才可以回帖 登录 | 注册

本版积分规则

122

主题

419

帖子

1

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