OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3939|回复: 2

定时器外部时钟捕获不能进入中断

[复制链接]

4

主题

13

帖子

0

精华

新手上路

积分
49
金钱
49
注册时间
2014-11-26
在线时间
0 小时
发表于 2014-12-11 19:34:52 | 显示全部楼层 |阅读模式
5金钱
请大家帮我分析一下原因 :我是使用定时器3的ETR脚对外部进行计数,然后与TIM3的CCR1和CCR2中的值进行比较,当比较匹配的时候触发中断,现在已经证实ETR能够对外部进行计数,但却不能进入中断。程序如下
定时器3初始化:由于中文有乱码,就截图了


中断处理函数如下:
void TIM3_IRQHandler(void)
{
   if(TIM3->SR&0X0002)
 {  ........
       TIM3->SR&=~(1<<2);//清除中断标志
   }
  else if(TIM3->sr&0X0004)
  {
       ......
       TIM3->SR&=~(1<<3);
   }
}
.....是一些处理语句 ,但发现就是进不了中断,请大家帮忙分析一下看看是哪少设置了或有问题。

最佳答案

查看完整内容[请看2#楼]

各位,好像找到问题了,在中断中清除标志位的时候我多移了一位,应该是TIM3->SR&=~(1<<2)
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

4

主题

13

帖子

0

精华

新手上路

积分
49
金钱
49
注册时间
2014-11-26
在线时间
0 小时
 楼主| 发表于 2014-12-11 19:34:53 | 显示全部楼层
各位,好像找到问题了,在中断中清除标志位的时候我多移了一位,应该是TIM3->SR&=~(1<<2)
回复

使用道具 举报

4

主题

13

帖子

0

精华

新手上路

积分
49
金钱
49
注册时间
2014-11-26
在线时间
0 小时
 楼主| 发表于 2014-12-11 19:36:15 | 显示全部楼层
程序写的有点乱,可能后面的注释不是很对应,但应该能看懂是什么意图
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-27 23:18

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表