使用firstcycle变量,程序在第一个扫描周期提供高电平信号的功能。
FirstCycle:During the first PLC task cycle, this variable has the value TRUE.
如果是TwinCAT 3,可以直接使用系统变量,类型为PlcTaskSystemInfo,然后可以调用firstcycle,infosys说明:
https://infosys.beckhoff.com/content/1033/globaldatatypes/714821259.html?id=1449094368155551069
VAR
nTaskIdx : DINT;FirstCycle : BOOL;
END_VARnTaskIdx := GETCURTASKINDEXEX();
IF nTaskIdx > 0 THEN
FirstCycle := _TaskInfo[nTaskIdx].FirstCycle;
END_IF
如果是TwinCAT 2,需要加载TcSystem.lib,如果是默认Task中的话1用写入中括号内 systemtaskinfoarr[1].firstcycle
infosys说明:
https://infosys.beckhoff.com/content/1033/tcplclibsystem/11827949067.html?id=1136927604961304784
如果TwinCAT 2添加TcSystem.lib的时候,出现如下报错: