- Beiträge
- 5.686
- Reaktionspunkte
- 1.615
-> Hier kostenlos registrieren
ich lese hier ein Gerät ein das die Bits in den Bytes vertauscht hat. Ich hab jetzt schnell n Baustein zur Lösung geschrieben. Der funktioniert natürlich einwandfrei, aber ist halt sehr Vorschlagshammermässig programmiert.
Gibts für dieses Vorgehen auf der S7-1500 eigentlich einen Befehl oder schon einen Baustein den ich nicht gefunden habe?
Gibts für dieses Vorgehen auf der S7-1500 eigentlich einen Befehl oder schon einen Baustein den ich nicht gefunden habe?
Code:
FUNCTION "Bit_swap" : Byte
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
VAR_INPUT
src : Byte;
END_VAR
BEGIN
#Bit_swap.%X0 := #src.%X7;
#Bit_swap.%X1 := #src.%X6;
#Bit_swap.%X2 := #src.%X5;
#Bit_swap.%X3 := #src.%X4;
#Bit_swap.%X4 := #src.%X3;
#Bit_swap.%X5 := #src.%X2;
#Bit_swap.%X6 := #src.%X1;
#Bit_swap.%X7 := #src.%X0;
END_FUNCTION