恭喜,你发布的帖子
发布于 2024-01-22 13:28:19
1楼
以下你再赞我一次吧。
当高计(其实不只是高计,任何32位值都是)计数到达很大值,几乎过零的时候。再加一点点值就变正个位数了。这个情景就好像水表,到了99999再加2就变000001了。
此时你依旧用当前值减过去值。例如:1-99999。人计算,计算机计算,当然等于-99998。但是plc的减法指令计算1-99999(请把这个99999值看作是32位二进制中的很大值。)
(因为很大值书写和记忆比较困难,最大值:4294967295。所以我想用99999类比为最大值。方便说明。)
此时1-99999=2
说明99999加1等于00000。00000加1等于1。所以1-99999是等于2的。
所以,当前值-过去值,永远等于增量。反向旋转的话增量永远是负值,说明这是反转。
我只是把一些经验介绍给大家而已。
再说,你说那个当前值,只是编程者准备写入到高速计数器当中的当前值。这是一个期望值,不是高计正在计算的当前值。这个值要通过执行hsc指令才会实实在在地反映到高计的当前值。懂意思不?
HC0;这个地址才是高计的实时当前值。
请填写推广理由:
分享
只看
楼主