为什么我调用FC1中TEMP的0.0位置1时,FC2中的0.0也会同时置位?
按道理FC1和FC2中的临时变量都属于各自的局部变量,互不影响的,为什么FC1里的0.0接通FC2里的0.0呢?
求大神帮忙解释下
最后修改:2020/1/10 8:36:01
点击:1681 回复:9
引用 byf394127375 在 2020/1/10 8:31:40 发言【内容省略】
TEMP使用的是PLC的临时区域,这个区域的特点是系统只管分配,不管回收的。引用 cvlsam 在 2020/1/10 10:37:10 发言【内容省略】
那我FC1内的temp的0.0没有复位情况下,同时又调用FC2,这时候FC2内的0.0也是接通的,按照先赋值,后执行原则,FC2中的点就无法复位,这样就没法用了引用 byf394127375 在 2020/1/10 10:56:02 发言【内容省略】
FC1执行完毕后,不存在FC里面执行不退出的情况(发生这一情况的话看门狗错误),临时区就空出来分配给FC2,如果FC2不执行先赋值后使用的原则,那么它拿到的临时区地址里可能存在数据,因此,为了避免数据的混乱,就务必先赋值后使用。