打印

继续请教:关于定时器和输入捕获。

[复制链接]
3028|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
mc9s08aw60|  楼主 | 2007-4-20 09:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1 如果设定了TPM2MOD=0x01FF,为定时器溢出时间,是不是输入捕获的周期大于0X01FF个数时,发生定时器中断,会导致捕获时发生中断,计数器清零?

2 如果我想定时1MS的话,如果捕获外部时间大于1MS,比如5MS,是不是捕获过程中会发生4~5次中断,计算捕获时间时,不能直接用第二次记数值减第一次?

3 现在需要一个短时间的定时和一个比较长周期的捕获。如果他们的模寄存器是两个就好了,一个模寄存器用起来不自由啊。

4 刚开始用,有不对的地方,请指教。
谢谢。

相关帖子

沙发
XUHUADONG| | 2007-4-23 14:52 | 只看该作者

使用2个TIME

1。捕获时,模数为最大的计数周期,用溢出中断时,就不能用捕获中断。
2。要分开计时。
3。要使用两个TIME 或者短的溢出计时查询捕获,会导致计数不是太准

具体应用可看资料,教科书都有介绍。

使用特权

评论回复
板凳
张明峰| | 2007-4-23 16:57 | 只看该作者

短时间的定时和一个比较长周期的捕获共存

可以变通一下,不要用改变模寄存器值来设定定时器的溢出率产生段时间中断。要我做:
1)设模寄存器值为0xffff,16位定时器自由计数;
2)短时间定时中断可以用输出比较功能实现(占用TIM一路)。进入输出比较中断后调整下次输出比较时间;
3)输入捕捉功能照旧。
4)若输入捕捉的信号间隔大于16位定时器的一次计数周期,则需要用软件对计数位数做扩充(增加高位字节)。在定时器溢出中断服务中对高位字节递增,软件必须处理所有有效数据位。

使用特权

评论回复
地板
mc9s08aw60|  楼主 | 2007-4-24 12:37 | 只看该作者

非常感谢两位。

使用特权

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

本版积分规则

12

主题

133

帖子

0

粉丝