STM32 ADC无法进入中断的怪问题

[复制链接]
 楼主| XLDZZ 发表于 2015-12-11 19:33 | 显示全部楼层 |阅读模式
废话不说 直接上图和源码
如下图 EOC 和EOCIE全部置位

说明我前面的初始化ADC的各种设置没问题 ADC工作了
的确也是如此 我能直接读出里面的数据也是准确的
我也知道读ADC DR的值会清楚EOC标记 故在后面我放在中断里面读(也就是不进中断  EOC是不会清零的)
接下来 上NVIC的设置代码
    NVIC_InitStructure.NVIC_IRQChannel = ADC1_2_IRQn;         
    NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
    NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
    NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
    NVIC_Init(&NVIC_InitStructure);

我想应该没问题  可是就是进入不了中断
程序还照样跑的很欢 一点问题多没有

所以 请各位大侠 帮我看看 哪有问题


file:///

file:///

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
JY-DX-JY 发表于 2015-12-11 19:42 | 显示全部楼层
中断程序呢?
 楼主| XLDZZ 发表于 2015-12-11 19:46 | 显示全部楼层
中断函数比较简单  目的是为了测试是否进入中断 如果进入中断 我就点亮灯
下面的中断函数名 是我从boot段的汇编里面复制过来的
本来的名字在汇编里面找不到  

void ADC1_2_IRQHandler(void)   
{
  LED_ON;
// LED_OFF;
}
JY-DX-JY 发表于 2015-12-11 19:49 | 显示全部楼层
XLDZZ 发表于 2015-12-11 19:46
中断函数比较简单  目的是为了测试是否进入中断 如果进入中断 我就点亮灯
下面的中断函数名 是我从boot段的 ...

你中断触发的条件是什么?
 楼主| XLDZZ 发表于 2015-12-11 20:03 | 显示全部楼层
没理解你什么意思  我的理解是
第一 中断标志置位 也就是EOC(表示规则组AD采样完成)
第二 中断允许位置位也就是EOCIE(表示规则组AD采样完成允许中断)
第三就是设置NVIC的中断总允许和优先级

完成这三个就应该可以中断了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

64

主题

182

帖子

0

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