23 lines
409 B
Plaintext
23 lines
409 B
Plaintext
|
|
(* @PATH := '\/Functions_Collection' *)
|
|
(* @SYMFILEFLAGS := '0' *)
|
|
FUNCTION _BoolArray_To_DWord : DWORD
|
|
VAR_INPUT
|
|
i_Array : ARRAY [0..31] OF BOOL ;
|
|
END_VAR
|
|
VAR
|
|
i : INT ;
|
|
mTemp : DWORD ;
|
|
END_VAR
|
|
|
|
|
|
|
|
(* @END_DECLARATION := '0' *)
|
|
FOR i:=0 TO 31 DO
|
|
IF i_Array[i] THEN
|
|
mTemp := REAL_TO_DWORD(EXPT(2, i)) ; (* 2^i *)
|
|
_BoolArray_To_DWord := _BoolArray_To_DWord + mTemp ;
|
|
END_IF
|
|
END_FOR
|
|
END_FUNCTION
|