CALL "TIME_TCK"
RET_VAL:=#ACT_TIME
L #ACT_TIME
L #PREV_TIME
-D
T #CYC_TIME
L 0
>=D
JC J001
L #CYC_TIME
L DW#16#7FFFFFFF
+D
L 1
+D
T #CYC_TIME
J001: L #ACT_TIME
T #PREV_TIME
我写的一段程序,但是无法获取循环时间,#CYC_TIME一直等于0或者1个莫名奇妙的数值,搞不懂!老外好像也是这样编啊!Debug了一下,我的#PREV_TIME感觉有问题!请求高手指点!
刚刚又测试了下,在OB35等循环块下,完美运行,在OB1里面内有问题,貌似PREV_TIME不能刷新,OB1的工作方式和OB35不同?在OB35等循环块内PREV_TIME能不断刷新!
这段代码意义比较重大,可是做成通用块,实现很多功能,比如斜坡函数等!