打印
[STM32F1]

定时器中断服务函数

[复制链接]
1701|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
铜牌之路|  楼主 | 2015-9-7 15:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
       想请教一下,我用TIM8的编码器模式计数,主程序又要做其他的,可以把编码器计数放到一个定时器如TIM3的中断服务函数中一直计数吗?我是想程序一开始执行就在编码器模式下计数,然后需要的时候就去查看这个计数值!
        多谢回答!!!
沙发
皈依| | 2015-9-7 15:17 | 只看该作者
1 搞不明白什么叫编码器模式。。。
2 另外放在TIM里面是每一个时钟计数一次,一直计数,和你计数的条件一致么?
3 要注意TIM计数有上限值,超过上限值就溢出

使用特权

评论回复
板凳
铜牌之路|  楼主 | 2015-9-7 15:35 | 只看该作者
皈依 发表于 2015-9-7 15:17
1 搞不明白什么叫编码器模式。。。
2 另外放在TIM里面是每一个时钟计数一次,一直计数,和你计数的条件一致 ...

定时器里面有一个编码器模式,特别用着对编码器计数  

使用特权

评论回复
地板
皈依| | 2015-9-7 15:36 | 只看该作者
铜牌之路 发表于 2015-9-7 15:35
定时器里面有一个编码器模式,特别用着对编码器计数

你说的是计数模式吧。。

使用特权

评论回复
5
铜牌之路|  楼主 | 2015-9-7 15:38 | 只看该作者
14.3.12 编码器接口模式
选择编码器接口模式的方法是:如果计数器只在TI2的边沿计数,则置TIMx_SMCR寄存器中的
SMS=001 ;如果只在TI1 边沿计数,则置SMS=010;如果计数器同时在TI1 和TI2边沿计数,则
置SMS=011 。
通过设置TIMx_CCER寄存器中的CC1P和CC2P位,可以选择TI1 和TI2极性;如果需要,还可以
对输入滤波器编程。
两个输入TI1 和TI2被用来作为增量编码器的接口。参看表77,假定计数器已经启动(TIMx_CR1
寄存器中的CEN=’1’),计数器由每次在TI1FP1 或TI2FP2上的有效跳变驱动。 TI1FP1 和TI2FP2
是TI1 和TI2在通过输入滤波器和极性控制后的信号;如果没有滤波和变相,则TI1FP1=TI1 ,
TI2FP2=TI2。根据两个输入信号的跳变顺序,产生了计数脉冲和方向信号。依据两个输入信号
的跳变顺序,计数器向上或向下计数,同时硬件对TIMx_CR1 寄存器的DIR位进行相应的设置。
不管计数器是依靠TI1 计数、依靠TI2计数或者同时依靠TI1 和TI2计数。在任一输入端(TI1 或者
TI2)的跳变都会重新计算DIR位。
编码器接口模式基本上相当于使用了一个带有方向选择的外部时钟。这意味着计数器只在0到
TIMx_ARR寄存器的自动装载值之间连续计数(根据方向,或是0到ARR计数,或是ARR到0计
数)。所以在开始计数之前必须配置TIMx_ARR;同样,捕获器、比较器、预分频器、触发输出
特性等仍工作如常。

使用特权

评论回复
6
皈依| | 2015-9-7 16:03 | 只看该作者
铜牌之路 发表于 2015-9-7 15:38
14.3.12 编码器接口模式
选择编码器接口模式的方法是:如果计数器只在TI2的边沿计数,则置TIMx_SMCR寄存器 ...

。。。明白了。就是我说的计数模式。。。
可以计数啊,但是要注意我讲的 你放在TIM里面,每次跳变就计数一次,和你的计数条件一致么?
第二,计数有上限,要注意清零。

使用特权

评论回复
7
可可球| | 2015-9-8 21:52 | 只看该作者
可以设个标志位的

使用特权

评论回复
8
拉克丝| | 2015-9-9 22:11 | 只看该作者
要注意TIM计数有上限值,超过上限值就溢出

使用特权

评论回复
9
冰河w| | 2015-9-9 22:18 | 只看该作者
在TIM里面是每一个时钟计数一次的

使用特权

评论回复
10
FireRiver9| | 2015-9-9 22:26 | 只看该作者
用不同的定时器

使用特权

评论回复
11
铜牌之路|  楼主 | 2015-9-10 17:11 | 只看该作者

问题解决了 谢谢

使用特权

评论回复
12
铜牌之路|  楼主 | 2015-9-10 17:12 | 只看该作者
冰河w 发表于 2015-9-9 22:18
在TIM里面是每一个时钟计数一次的

TIM一直在计数,问题解决了 谢谢

使用特权

评论回复
13
铜牌之路|  楼主 | 2015-9-10 17:12 | 只看该作者
拉克丝 发表于 2015-9-9 22:11
要注意TIM计数有上限值,超过上限值就溢出

使用特权

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

本版积分规则

9

主题

85

帖子

0

粉丝