Questo blocco funzione permette di convertire due variabili WORD in una variabile DWORD. L'operando MSW è trasferito nei 16 bits alti, l'operando LSW è trasferito negli 16 bits bassi di Out.
Blocco funzione
CODESYS: Non disponibile
LogicLab: eLLabUtyLib
MSW (WORD) MSW del valore in uscita.
LSW (WORD) LSW del valore in uscita.
Out (DWORD) Valore in uscita.
Esempi
Come utilizzare gli esempi.
Nell'esempio due variabili WORD con valore 16#1234 e 16#5678 sono trasferite in una variabile DWORD il risultato sarà 16#12345678. Nell'esempio in linguaggio ST viene evidenziato come la stessa operazione sia molto più semplice scrivendola direttamente con gli operandi del linguaggio.
PROGRAM ST_WordToDouble VAR High : WORD := 16#1234; (* MSW word *) Low : WORD := 16#5678; (* LSW word *) Result : ARRAY[ 0..1 ] OF DWORD; (* Compress result *) WCom : WordToDouble; (* Word compress *) END_VAR // ***************************************************************************** // PROGRAM "ST_WordToDouble" // ***************************************************************************** // This program shows the use of WordToDouble function block. // ----------------------------------------------------------------------------- // ------------------------------------------------------------------------- // COMPRESS WORD // ------------------------------------------------------------------------- // Compress byte using the FB. WCom(MSW:=High, LSW:=Low); Result[0]:=WCom.Out; //Compress result // ------------------------------------------------------------------------- // COMPRESS WORD // ------------------------------------------------------------------------- // The same operation as above executed directly using ST statements. Result[1]:=(High*16#10000)+Low; //Compress result // [End of file]