ReadDataFromFileRegisterBankLeggi i dati dal file banco di memoria 1 o 2
Questa istruzione legge il numero di word specificato da DataNumberOfWords dal file banco di memoria 1 o 2, come specificato da BankNumber a partire da BankOffset, e lo scrive in DataStartAddress.

Ingresso
Specifica il numero di banco
Specifica l'offset del numero di banco
Numero di unità word da leggere dal file banco di memoria
Uscita
Specifica l'indirizzo iniziale del dato che viene letto dal file banco di memoria
Con questa funzione non è possibile leggere i dati nell'area FL (file banco di memoria 0), il che significa che la variabile applicata in DataStartAddress non deve trovarsi nell'area FL.

Tutte le variabili di ingresso e uscita utilizzate per programmare questa funzione sono state dichiarate nell'intestazione del POU. La stessa intestazione del POU è utilizzata per tutti i linguaggi di programmazione.

_VAR
VAR_OUTPUT
p32ActualPosition: POINTER32;
(*shows the area, offset and size where the data of the IC card is stored*)
END_VAR
VAR
END_VAR
VAR_INPUT
p32Pointer: POINTER32;
(*area, offset and size of data values*)
diPosition: DINT:=0;
(*beginning position from which the data should be read from the IC card*)
END_VAR
VAR_OUTPUT
p32ActualPosition: POINTER32;
(*shows the area, offset and size where the data of the IC card is stored*)
END_VAR
VAR
END_VAR

BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 9 ;
NETWORK_BODY
B(B_VARIN,,2,20,3,22,5,);
B(B_VARIN,,1000,20,4,22,6,);
B(B_VARIN,,awProcessDataToGet[0],10,5,12,7,);
B(B_CONTACT,,bGetData,5,2,7,4,R);
B(B_F,Size_Of_Var!,Instance,12,5,19,7,,?D?C);
B(B_F,E_ReadFromIcCard!,Instance,22,1,37,7,,?DEN?DBankNumber?DBankOffset?DDataNumberOfWords?AENO?CDataStartAddress);
B(B_F,Adr_Of_Var_O!,Instance,37,3,45,5,,?D?C);
B(B_VAROUT,,awProcessDataToGet,45,3,47,5,);
L(1,3,5,3);
L(19,6,22,6);
L(1,0,1,9);
L(7,3,22,3);
END_NETWORK_BODY
END_NET_WORK
END_BODY
if (DF(bGetData)) then
ReadDataFromFileRegisterBank(BankNumber := 2,
BankOffset := 1000,
DataNumberOfWords := Size_Of_Var(awProcessDataToGet),
DataStartAddress => Adr_Of_Var(awProcessDataToGet));
end_if;