Vai all indice del manuale di programmazione
Tipo:
Blocco funzione
Libreria LogicLab:
eLLabUtyLib
Libreria Codesys:
Non disponibile
Questo blocco funzione permette di convertire una variabile WORD in due variabili BYTE. Gli 8 bits alti di In verranno trasferiti nell’operando MSB, gli 8 bits bassi verranno trasferiti nell’operando LSB.
Descrizione
In (WORD) Variabile da convertire.
MSB (BYTE) MSB del valore in ingresso.
LSB (BYTE) LSB del valore in ingresso

Esempi
Come utilizzare gli esempi.
Nell’esempio una variabile WORD con valore 16#1234 è trasferita in due variabili BYTE che avranno valore 16#12 e 16#34.
LogicLab (Ptp114), IL_WordToByte
PROGRAM IL_WordToByte
VAR
High : BYTE; (* MSB byte *)
Low : BYTE; (* LSB byte *)
WData : WORD := 16#1234; (* Word data *)
WDec : WordToByte; (* Word decompress *)
END_VAR
(* ************************************************************************** *)
(* PROGRAM "IL_WordToByte" *)
(* ************************************************************************** *)
(* This program shows the use of WordToByte function block. *)
(* ------------------------------------------------------------------------- *)
LD WData
ST WDec.In (* Transfer the variable to input *)
CAL WDec (* Call the function block *)
LD WDec.MSB
ST High (* Transfer the MSB output to variable *)
LD WDec.LSB
ST Low (* Transfer the LSB output to variable *)
(* [End of file] *)
LogicLab (Ptp114), ST_WordToByte
PROGRAM ST_WordToByte
VAR
WData : WORD := 16#1234; (* Word data *)
High : ARRAY[0..1] OF BYTE; (* MSB byte *)
Low : ARRAY[0..1] OF BYTE; (* LSB byte *)
WDec : WordToByte; (* Word decompress *)
END_VAR
// *****************************************************************************
// PROGRAM "ST_WordToByte"
// *****************************************************************************
// This program shows the use of WordToByte function block.
// -----------------------------------------------------------------------------
// -------------------------------------------------------------------------
// DECOMPRESS WORD
// -------------------------------------------------------------------------
// Decompress word using the FB.
WDec(In:=WData);
High[0]:=WDec.MSB; //MSB byte
Low[0]:=WDec.LSB; //LSB byte
// -------------------------------------------------------------------------
// DECOMPRESS WORD
// -------------------------------------------------------------------------
// The same operation as above executed directly using ST statements.
High[1]:=TO_BYTE(WData/256); //MSB byte
Low[1]:=TO_BYTE(WData); //LSB byte
// [End of file]