打印

STM32F103中断嵌套进不去

[复制链接]
2668|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jeckboy|  楼主 | 2009-12-16 20:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我按照下面设置:
/* Configure the NVIC Preemption Priority Bits */
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
// Enable the TIM2 global Interrupt  
NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQChannel;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;  
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);

// Enable the TIM3 global Interrupt  
NVIC_InitStructure.NVIC_IRQChannel = TIM3_IRQChannel;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;  
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
其中TIM2为0.5ms中断,TIM3为10ms中断,但是我故意在TIM3中断服务程序中放了一个while(1);,然后在TIM2中断里设断点,看是否能正常进入,结果只进去一次就没了,停在TIM3的那个while上,中断嵌套不了??不应该啊
沙发
dfsa| | 2009-12-16 21:48 | 只看该作者
while(1)不是死循环吗,肯定就停在里面了呀?

使用特权

评论回复
板凳
511| | 2009-12-21 20:57 | 只看该作者
2楼没明白楼主的意思,
关注,

使用特权

评论回复
地板
ypt1980| | 2009-12-22 08:49 | 只看该作者
记得中断结束后必须返回主程序执行1条指令后才能再次进入中断!

使用特权

评论回复
5
jeckboy|  楼主 | 2009-12-22 16:10 | 只看该作者
不好意思,我自己设置错误,是TIM2没有设置好,把TIM2自动重装载功能打开就能够正常进入中断了,可以实现上述实验!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

30

帖子

0

粉丝