在定时器中央对齐模式下如何在中点进中断或者操作

2019-03-23 14:39发布

定时器比如说TIM1,设置成中央对齐模式,从0,1,2,3,4,5,4,3,2,1……怎么样可以在4或者5的时候,进入中断,或者直接开启ADC的dma中断,或者可以写代码,都可以。参考手册上写了一个计数器溢出,和更新事件(UEV),有法进行操作吗?或者给个思路,或者往哪个方面研究都可以,谢谢!比如说第二张图的中点附近进入中断,或者是可以操作都可以。两个定时器同步的话,也可以考虑,但是尝试了一下,总是在奇怪的地方进中断,希望各位大大帮个忙,给个思路或者方法,谢谢!
 

111.jpg222.jpg

12条回答
jplzl10000
1楼 · 2019-03-23 20:56.采纳回答
中央就是计数最大值吧,有没有匹配寄存器可以进行设置匹配进中断?
daolong1989
2楼-- · 2019-03-24 17:00


上溢和下溢都打开就可以了


请教一下,怎么操作可以只打开上溢?

Li_Lei
3楼-- · 2019-03-24 20:17


请教一下,怎么操作可以只打开上溢?


用软件判断

daolong1989
4楼-- · 2019-03-24 22:27
 精彩回答 2  元偷偷看……
lanmanck
5楼-- · 2019-03-24 23:13
你们这些叼毛啊,也不总结一下:
根据图,上溢和下溢都有更新标志,如果使能了更新中断,那么就进中断。
至于是上溢还是下溢,到中断里面判断CNT数据就知道当前是大的还是小的,大的就是上溢,小的就是下溢。
另外比较中断可以通过选择上比较中断或者下比较中断或者上下都中断。
这样爽了吧。
Li_Lei
6楼-- · 2019-03-25 03:57


你们这些叼毛啊,也不总结一下:
根据图,上溢和下溢都有更新标志,如果使能了更新中断,那么就进中断。
...


CNT也可以但是不是特别好,比如码盘计数时在任何位置都可能反转,这个时候cnt就无效了,
用这个标志位就行了if ((TIM1->CR1 &  TIM_CR1_DIR))

一周热门 更多>