回复:定时器复位的测试

winter938

  • 帖子

    1551
  • 精华

    33
  • 被关注

    41

论坛等级:至圣

注册时间:2005-06-09

黄金 黄金 如何晋级?

发布于 2011-05-18 11:18:36

9楼

我试着这样描述100毫秒的定时机制:
时间如流水绵延不绝,流入只能装0.1秒的桶内,而CPU每个扫描周期都到取水处看看装够了多少桶,然后取走并据此决定已经启动的计时器当前计时增加多少桶,那个没装够1桶水的桶让它在那儿接着装,如果扫描周期很长可能就有几个桶在那儿装水反正一滴水也不能漏,然而定时器定时条件产生上沿的当前周期CPU是将当前计时值清0的,要下一个扫描周期执行定时指令时才会累计当前的那几桶水.也许某个定时器很幸运当它被启动后的第二个扫描周期CPU就取到了一桶水这样它只跑两个扫描周期就计时1,虽然它成功偷懒少跑了将近0.1秒却给我们带来了麻烦,0.1秒的误差有时显得太长了!为了保证足够的定时延迟咱只好给这个偷懒的定时器预置值多加1了.
再回过头来看看通过自身常闭触头做定时条件的定时器会发生什么情况:第N个扫描周期计时到CV值>=预置值,N+1周期定时器条件OFF不计时,N+2周期定时器条件ON产生上沿但不计时,N+3周期开始正常计时,如此循环.在时间流逝的过程中我们原本期望的时钟脉冲需要连续不断计时,这里却有两个扫描周期处于不计时的状态,这正是我第二张图片现象的原因.

现在觉得文字工夫不行真是痛苦,不打字了
工控爱好者
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33274条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。