圖片:
IF ldp (1,Int6_重置) THEN
亮點起始位[Temp_Counts]:=0; Temp_Counts:=0; 當前點亮編號:=0; T_ON:=0;
END_IF;
IF (Int0_功能塊使能) AND (Temp_Dtb) THEN
Int2_開始:=TRUE; Temp_Dtb:=FALSE;
END_IF;
Temp_LDP:=(T_ON) AND(NOT Temp_LDPS);
Temp_LDPS:=T_ON;
IF Temp_LDP THEN
Int2_開始:=FALSE; T_ON:=FALSE; Temp_Dtb:=TRUE;
END_IF;
IF (Int0_功能塊使能)AND(NOT Int3_停止)THEN
Timer_T (IN:=Int2_開始,PT:=Int7_間隔時間,Q:=T_ON,ET:=Out_當前點亮時間) ;
END_IF;
IF( 當前點亮編號=0)OR(當前點亮編號=Int1_燈數長度) THEN
Temp_Counts:=0;
END_IF;
IF (Int0_功能塊使能)AND(當前點亮編號=Int1_燈數長度) AND (LDP(1,T_ON)) THEN
亮點起始位[當前點亮編號-1]:=0; 當前點亮編號:=0;
END_IF;
IF (Int0_功能塊使能)AND (LDP(1,Int5_更改確認))AND(Int4_隨機點燈號>0 AND Int4_隨機點燈號<=Int1_燈數長度) THEN
Temp_Data:=Int4_隨機點燈號;
END_IF;
(*//////////////////////////////////////////////////點亮開始 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*)
IF (Int0_功能塊使能)AND(Int1_燈數長度>0) AND(NOT Int3_停止)AND (LDP(1,T_ON))AND(當前點亮編號<Int1_燈數長度) AND(NOT Int6_重置) THEN
IF (Temp_Counts=0) AND( 當前點亮編號=0) AND (Temp_data=0)THEN
亮點起始位[Temp_Counts]:=1; 當前點亮編號:=Temp_Counts+1;
ELSE
IF( Temp_Data=0) THEN
Temp_Counts:=Temp_Counts+1; 亮點起始位[Temp_Counts]:=1; 亮點起始位[Temp_Counts-1]:=0; 當前點亮編號:=Temp_Counts+1;
ELSE
亮點起始位[Temp_Counts]:=0; Temp_Counts:=Temp_Data-1; 亮點起始位[Temp_Counts]:=1; 當前點亮編號:=Temp_Counts+1;
Temp_Data:=0;
END_IF;
END_IF;
END_IF;