请问这几段程序如何理解
//1#LGJ
L PIW 756
T #temp
A L 1.0
= "EMS_DBX".LGJ_RunState_1
A L 1.1
= "EMS_DBX".LGJ_ErrState_1
A L 1.2
= "EMS_DBX".LGJ_SysState_1
A L 0.3
= "EMS_DBX".LGJ_RuningState_1
A L 0.4
= "EMS_DBX".LGJ_StopingState_1
//2#LGJ
L PIW 772
T #temp
A L 1.0
= "EMS_DBX".LGJ_RunState_2
A L 1.1
= "EMS_DBX".LGJ_ErrState_2
A L 1.2
= "EMS_DBX".LGJ_SysState_2
A L 0.3
= "EMS_DBX".LGJ_RuningState_2
A L 0.4
= "EMS_DBX".LGJ_StopingState_2
//3#LGJ
L PIW 788
T #temp
A L 1.0
= "EMS_DBX".LGJ_RunState_3
A L 1.1
= "EMS_DBX".LGJ_ErrState_3
A L 1.2
= "EMS_DBX".LGJ_SysState_3
A L 0.3
= "EMS_DBX".LGJ_RuningState_3
A L 0.4
= "EMS_DBX".LGJ_StopingState_3
2.还有这段程序如何理解
L P#0.0
LAR1
L 6
A: T LB 0
L PIW [AR1,P#306.0]
T MW [AR1,P#200.0]
L 16
+AR1
L LB 0
LOOP A
谢谢,希望高人能指点
问题补充:
在请问一下,
L0.3、L 1.0、L1.1,L1.2这些具体是什么意思呢?这个不理解啊,能详细说说吗
最佳答案
1、//1#LGJ
L PIW 756
T #temp//存入过程通道的 756单元中。
A L 1.0
= "EMS_DBX".LGJ_RunState_1//如果临时变量 L1.0置位,则运行状态置1
A L 1.1
= "EMS_DBX".LGJ_ErrState_1//如果临时变量 L1.1置位,则错误状态置1
A L 1.2
= "EMS_DBX".LGJ_SysState_1//如果临时变量 L1.2置位,则系统状态置1
A L 0.3
= "EMS_DBX".LGJ_RuningState_1//如果临时变量 L0.3置位,则已运行状态置1
A L 0.4
= "EMS_DBX".LGJ_StopingState_1//如果临时变量 L0.4置位,则已停止状态置1
//2#LGJ
.........//注释与1#LGJ相同
//3#LGJ
.........//注释与1#LGJ相同
2.还有这段程序如何理解:
这是一段典型的应用循环语句的程序,即利用地址指针循环变化,将PIW306,322,338,......共6个字分别存入MB200,216,232.......中。
L P#0.0
LAR1 //初始地址指针
L 6// 6个字的循环计数为初值
A: T LB 0//计数值 送入LB 0
L PIW [AR1,P#306.0] //按读指针指示的地址读数据
T MW [AR1,P#200.0]//按读指针指示的地址写数据
L 16//取常数16
+AR1 //寻找地址指针,即将当前地址指针内容加上16,
L LB 0 //取循环计数值
LOOP A //循环计数值如为0则结束循环;如不为0减1后则转向标号为A的语句,继续循环。
提问者对于答案的评价:
谢谢
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc249196.html