Vai all indice del manuale di programmazione
Tipo:
Funzione
Libreria LogicLab:
eLLabCommonLib
Libreria Codesys:
Non disponibile
Questa funzione permette di copiare o spostare dati tra due variabili definendone indirizzo e tipo.
Descrizione
Destination (PVOID) Indirizzo variabile di destinazione.
Source (PVOID) Indirizzo variabile sorgente.
Type (VR_TYPE) Tipo variabile (Vedi definizione).
La funzione ritorna una variabile BOOL, FALSE: Errore esecuzione, TRUE: Esecuzione Ok.

Esempi
Come utilizzare gli esempi.
Alcuni esempi di utilizzo funzione.
LogicLab (Ptp201, ST_eVMove)
PROGRAM ST_eVMove
VAR
pAV : PVOID; (* Auxiliary void pointer *)
dwAV:DWORD; (* Auxiliary dword *)
BArray : ARRAY[0..1] OF BYTE := [16#00, 16#12]; (* Byte array *)
WArray : ARRAY[0..1] OF WORD := [16#0000, 16#1234]; (* Word array *)
DWArray : ARRAY[0..1] OF DWORD := [16#00000000, 16#12345678]; (* Double word array *)
RArray : ARRAY[0..1] OF REAL := [0.0, 1.2]; (* Real array *)
END_VAR
// *****************************************************************************
// PROGRAM "ST_eVMove"
// *****************************************************************************
// Some variables copy.
eTO_JUNK(eVMove(ADR(BArray[0]), ADR(BArray[1]), VR_TYPE#BYTE_TYPE)); //[16#12, 16#12]
eTO_JUNK(eVMove(ADR(WArray[0]), ADR(WArray[1]), VR_TYPE#WORD_TYPE)); //[16#1234, 16#1234]
eTO_JUNK(eVMove(ADR(RArray[0]), ADR(RArray[1]), VR_TYPE#REAL_TYPE)); //[1.2, 1.2]
// Use of void pointer on 32bits architecture.
dwAV:=TO_DWORD(ADR(DWArray[0]))+4;
eTO_JUNK(eVMove(ADR(pAV), ADR(dwAV), VR_TYPE#PVOID_TYPE));
eTO_JUNK(eVMove(ADR(DWArray[0]), dwAV, VR_TYPE#DWORD_TYPE)); //[16#12345678, 16#12345678]
// [End of file]