打印
[应用相关]

关于stm32通用定时器TIMx的问题

[复制链接]
834|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lefeng|  楼主 | 2017-2-18 17:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
对stm32通用定时器,以TIM3为例,其对应着一个中断向量。而TIM3有4个独立的通道可以分别配置成不同的模式。有些模式是可以触发中断的,那如果我使用了TIM3的4个通道,都配置成了捕获模式并且使能中断。
        那四个通道产生中断都进入同一个中断程序啊,还要在中断里面判断是哪个通道引起的中断,对不咯?之前只使用普通的定时器功能还没察觉到这个。
另外,其实可不可以这样说:之所以4个通道能独立工作在不同模式,是因为四个通道都拥有一个比较/捕获寄存器,而各种功能的实现,就是计数器CNT跟这个比较/捕获寄存器联合工作的成果。
沙发
lwsn| | 2017-2-18 17:27 | 只看该作者
公用中断向量的时候就要靠软件来区分了,就好像串口收发,后面部分说的完全对,就是那么个东西,围绕着那几个关键的寄存器展开。

使用特权

评论回复
板凳
冰河w| | 2017-2-18 17:43 | 只看该作者
在stm32的通用定时器的CNT数据上溢或下溢的时候,如果使能了中断,是会触发中断的。在我们初始完timer并将其打开的时候,CNT是从0计数到ARR的(向上计数),那就是说定时器一打开,CNT装0,这个0刚好就会触发中断。是这样子的吗?

使用特权

评论回复
地板
可可球| | 2017-2-18 17:53 | 只看该作者
全装好以后清除标记再启动,溢出信号实际就是+-的进借位。不应该是=0,这不仅是多少一次中断的问题,要按你说的周期值得计算也差1个了。

使用特权

评论回复
5
无敌TD| | 2017-2-18 20:36 | 只看该作者
目前也在学

使用特权

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

本版积分规则

200

主题

1087

帖子

0

粉丝