I’m onboard this.
Sory for delay...
It's a array on 16 bool to convert to an array of 2 USINT.
Also I need to copy of 1 INT to an array of 16 Bool.
I'm not able to do this with COP inctruction.
I modyfy a little bit the code... The code is now:
Code:
//Pour les sorties, permet de passer un tableau de binaire BoolArray[0..15] en 1
tableau de 2 variable USINT Datatologix
*/
Datatologix[1] := 0;
Datatologix[2] := 0;
FOR i := 0 to 7 DO
IF Output[i] THEN // Si le bit est vrai
Datatologix[1] := Datatologix[1] + ANY_TO_USINT(EXPT(2.0,i)); //Le I represente la valeur de exposant de 2
END_IF;
IF Output[i+8] THEN // On fait la même chose pour les bits de 8 a 15
Datatologix[2] := Datatologix[2] + ANY_TO_USINT(EXPT(2.0,i));
END_IF;
END_FOR;
/* Pour les entrées, la variable INT_InputLogix dans un tableau de binaire Input[0..15]
pour facilité le travail */
For i:=0 to 15 DO
Mem_INT_InputLogix:= SHR(ANY_TO_DINT(INT_InputLogix), i); // Décale les bits à droite
Mask:= AND_MASK(Mem_INT_InputLogix, 1); // Vérifie le bit de poids faible seulement
If Mask.0 THEN // Inscrit 0 ou 1 selon le niveau du bit
Input[i]:= TRUE;
ELSE
Input[i]:= FALSE;
END_IF;
END_FOR;
Thank you