WriteDataToFileRegisterBankScrivi i dati nel file banco di memoria 1 o 2
Questa istruzione legge il numero di word specificato da DataNumberOfWords a partire da DataStartAddresse lo scrive nel file banco di memoria 1 o 2 come specificato da BankNumber a partire da BankOffset.

Ingresso
Specifica il numero di banco
Specifica l'offset del numero di banco
Specifica l'indirizzo iniziale del dato da scrivere nel file banco di memoria
Specifica il numero di unità word da scrivere nel file banco di memoria
Con questa funzione non è possibile scrivere 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
awProcessDataToStore: ARRAY [0..10] OF INT:=[-111,111,222,333,444,555,666,777,888,999,1100];
awProcessDataToGet: ARRAY [0..10] OF INT:=[11(0)];
bStoreData: BOOL:=FALSE;
bGetData: BOOL:=FALSE;
END_VARSe bStoreData passa da FALSE a TRUE l'intera variabile unità dati awProcessDataToStore (una DUT contenente 11 elementi) viene riempita con i dati del file banco di memoria 2 BankOffset 1000.


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_F,WriteDataToFileRegisterBank!,Instance,22,1,36,7,,?DBankNumber?DBankOffset?DDataStartAddress?DDataNumberOfWords);
B(B_VARIN,,2,20,3,22,5,);
B(B_VARIN,,1000,20,4,22,6,);
B(B_VARIN,,awProcessDataToStore[0],10,5,12,7,);
B(B_CONTACT,,bStoreData,5,2,7,4,R);
B(B_F,Adr_Of_Var_I!,Instance,12,5,19,7,,?D?C);
B(B_F,Size_Of_Var!,Instance,12,7,19,9,,?D?C);
L(1,3,5,3);
L(7,3,22,3);
L(19,6,19,8);
L(12,6,12,8);
L(1,0,1,9);
L(19,6,22,6);
END_NETWORK_BODY
END_NET_WORK
END_BODY
if (DF(bStoreData)) then
WriteDataToFileRegisterBank(BankNumber := 2,
BankOffset := 1000,
DataStartAddress := Adr_Of_Var(awProcessDataToStore),
DataNumberOfWords := Size_Of_Var(awProcessDataToStore));
end_if;