Questa funzione trasferisce il valore di una variabile il cui indirizzo è indicato in Source in base al tipo Type definito, in un array Destination utilizzando il formato little endian (MSB-LSB).
Funzione
CODESYS: Non disponibile
LogicLab: eLLabUtyLib
Type (VR_TYPE) Tipo di variabile destinazione.
Destination (@BYTE) Indirizzo array di destinazione.
Source (@BYTE) Indirizzo variabile sorgente.
La funzione ritorna una variabile BOOL con lo stato della conversione, FALSE: Errore tipo dati, TRUE: Conversione eseguita.
Esempi
Come utilizzare gli esempi.
Nell'esempio due variabili WORD con valore 16#1234, 16#5678, ed una variabile DWORD con valore 16#12345678 sono convertite in array little endian ed il valore di ogni conversione accodato in un array. Al termine l'array avrà il valore 16#12, 16#34, 16#56, 16#78, 16#12, 16#34, 16#56, 16#78.
PROGRAM ST_VarToLEArray VAR AValue : ARRAY[ 0..7 ] OF BYTE; (* Array value *) WValue : ARRAY[ 0..1 ] OF WORD := [16#1234,16#5678]; (* Word value *) DValue : DWORD := 16#12345678; (* Double value *) CSts : ARRAY[ 0..2 ] OF BOOL; * Conversion status *) END_VAR // ***************************************************************************** // PROGRAM "ST_VarToLEArray" // ***************************************************************************** // This program shows the use of VarToLEArray function. // ----------------------------------------------------------------------------- // ------------------------------------------------------------------------- // ARRAY CONVERSION // ------------------------------------------------------------------------- CSts[0]:=VarToLEArray(VR_TYPE#WORD_TYPE, ADR(AValue), ADR(WValue[0])); CSts[1]:=VarToLEArray(VR_TYPE#WORD_TYPE, ADR(AValue)+2, ADR(WValue[1])); CSts[2]:=VarToLEArray(VR_TYPE#DWORD_TYPE, ADR(AValue)+4, ADR(DValue)); // [End of file]
Ultimo aggiornamento: 9 Agosto 2019