西门子PLCS7-200的程序高速计数器指令怎么用?

为什么我写的程序下直接读取的当前值(HC0),不能保持呢?(就是编码器动一下,当前值(HCO)有数字显示,但马上就恢复为0)怎么回事?

你进行了高数计数器清零就是你调用了清零程序
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-01
你可能对它复位操作了追问

哪,请问怎么样是复位操作? 高数计算器怎么样给它的当前值复位呢?

追答

高速计数器如何复位到0?

选用带外部复位模式的高速计数器,当外部复位输入点信号有效时,高速计数器复位为0
也可使用内部程序复位,即将高速计数器设定为可更新初始值,并将初始值设为0,执行HSC指令后,高数计数器即复位为0
高速计数器的值在复位后是复位到初始值还是“0”值?

外部复位会将当前值复位到0值而不是初始值;内部复位则将当前值复位到初始值。如果你设定了可更新初始值,但在中断中未给初始值特殊寄存器赋新值,则在执行HSC 指令后,它将按初始化时设定的初始值赋值。

为何给高速计数器赋初始值和预置值时后不起作用,或效果出乎意料?

高速计数器可以在初始化或者运行中更改设置,如初始值、预置值。其操作步骤应当是:

设置控制字节的更新选项。需要更新哪个设置数据,就把控制字节中相应的控制位置位(设置为“1”);不需要改变的设置,相应的控制位就不能设置
然后将所需 的值送入初始值和预置值控制寄存器
执行HSC指令

追问

现在的问题是,编码器动一下,计数器(HC0)有计数,但编码器停下,计数器复位为0 怎么回事呢?