回复:关于200smart 定时中断的几个测试

已锁定

shine

  • 帖子

    8803
  • 精华

    39
  • 被关注

    158

论坛等级:至圣

注册时间:2003-06-06

普通 普通 如何晋级?

发布于 2020-05-12 10:04:45

42楼

展开查看
以下是引用WWCWWC在2020-05-12 09:34:06的发言 >39楼

我意思是这个T32定时中断定时器,放在自己指定的定时中断子程序中还能够运行?

把它放在如OB1上,当定时器当前值等于预设值时,产生一个中断进入到定时中断子程序这个理解。

把定时器本身的线圈放在自己的定时中断中,如何运行定时器?

以下是引用shine在2020-05-12 09:16:18的发言 >37楼:在中断中使用 TON...

引用37楼详细内容:

在中断中使用 TON T32,也是可以正常运行的,只要你不要在其他地方再使用TON T32。

T32是随时刷新的,即使你用SM0.1调用一个子程序,里面用SM0.0 调用TON T32,到了设定时间之后,T32的触点一样会闭合。


以下是引用WWCWWC在2020-05-12 08:44:41的发言 >35楼:季侠:你可能忘了对...

引用35楼详细内容:

季侠:

你可能忘了对中断子程序执行的概念了?中断执行只能是一个周期的,在一个周期中如何运行需要几个或者更多周期的指令?也有可能我没有理解你的意思。


以下是引用芳季在2020-05-11 22:25:26的发言 >:中断程序就是我上...

引用详细内容:

中断程序就是我上面截图的啊。初始化的我没有写出来。

没什么了。

如果R指令不能让T32彻底复位重新计时的话就用off能流的T32,然后下一行写on能流的T32。这样计时器肯定可以停止又重新计时。

你可以做一下我上面说的实验,就是SM0.1调用子程序,在子程序中启动TON T32,看看到了设定时间后T32会不会有输出。

其实道理是一样的,1ms定时器,是随时刷新的,只要没有执行到下一条 与该定时器相关的指令,其计时一直在更新。


比如这么一个程序,OB1扫描周期5ms,在开始的是启动T32,定时3ms,在2ms的时候发生了中断0,4ms的时候发生了中断1,分别在调用INT0和INT1,那么INT0和INT1中T32的状态是什么?

假设扫描周期不是5ms,而是更长,非常长,那么,就和TON T32只被调用一次没有区别了,但1ms定时器还是会刷新的。

10ms和100ms时基的就不一样了

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200 SMART

共有9457条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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