quote:以下是引用Automann在2012-11-15 16:27:37在《CPU循环的探讨》的发言:
CPU的循环时间由5个阶段组成,下面是循环处理的各个阶段的任务:
1) 操作系统启动循环时间监控定时器(看门狗)。
2) CPU将过程映像输出区的数据写到输出模块。
3) CPU读取输入模块的输入状态,并存入过程映像输入区。
4) CPU处理用户程序,执行用户程序中的指令。
5) 在循环结束时,操作系统执行其他任务,例如下载和删除块,接收和发送全局数据等。
此后CPU返回第一阶段,重新启动循环时间监控。
以上是以前帖子讨论的引用,由于本人是新手,现在有一个问题想请教一下大家,是关于本帖的第四点
cpu在处理用户程序时的生效也就是更新问题。在一个扫描周期内:
1)cpu扫描到上升沿程序段后,在下一程序段立刻生效,直到本周期结束;
2)扫描内部继电器m点后,本段程序此点以后m立刻生效;
我问的是如果是定时器t,在本周期时间到,触点变化是在下一程序段就生效了吗,还是下一扫描周期生效?还有计数器、传送指令等等。
因为今天看了一个程序,不过不是西门子的程序,是宋伯生欧姆龙的程序,只有t在下一周期生效才能运行正常。
许多书上关于plc原理方面都是和上面引用的差不多,但对于写每段程序时,我感觉再写细一点更好。不知道我写的正确与否,还请各位工程师帮忙解答。