你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

关于STM32F407的中断嵌套 【悬赏问答】

[复制链接]
baonng 提问时间:2012-10-16 17:04 /
这两天写程序,发现我的程序的中断嵌套有问题,优先级的顺序不对啊。中断初始化程序如下:
void ADC1_INT_Config(void)
{

        NVIC_InitTypeDef      NVIC_InitStructure;

        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4);

        NVIC_InitStructure.NVIC_IRQChannel = ADC_IRQn;
        NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x01;
        NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x00;
        NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
        NVIC_Init(&NVIC_InitStructure);
        ADC_ITConfig(ADC1, ADC_IT_EOC, ENABLE);

}
void TIM3_INT_Config(void)
{
        NVIC_InitTypeDef NVIC_InitStructure;

        /* Enable the TIM3 gloabal Interrupt */
        NVIC_InitStructure.NVIC_IRQChannel = TIM3_IRQn;
        NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x03;
        NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
        NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
        NVIC_Init(&NVIC_InitStructure);
       
        TIM_ITConfig(TIM3, TIM_IT_Update, ENABLE);

}
现在的问题是,TIM3的中断总是能够抢占ADC的中断。跟NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority 值设置大小没有关系啊!!!!
请知道的指教啊,谢谢!
收藏 评论4 发布时间:2012-10-16 17:04

举报

4个回答
xiaodc88 回答时间:2012-10-31 18:21:24

RE:关于STM32F407的中断嵌套 【悬赏问答】

你把ADC设置成主优先级,把TIM设置成副优先级应该就可以了
火木 回答时间:2012-11-1 17:14:55

RE:关于STM32F407的中断嵌套 【悬赏问答】

选择NVIC_PriorityGroup_1)试试,高的设置成0, 0 低的设置成1, 0
zykzyk-93033 回答时间:2012-11-2 22:19:36

RE:关于STM32F407的中断嵌套 【悬赏问答】

在TIM3配置函数里面增加 NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0)函数进行优先级组配置。这样即可。
xieyuanfu 回答时间:2012-11-9 14:13:06

RE:关于STM32F407的中断嵌套 【悬赏问答】

楼主  要先把你的优先级分组的代码贴出来  中断里面的优先级是对的了  应该是分组没有分对
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版