TYPE PD_UNION_BOOL_WORD :
UNION
sto_word:PD_STO_WORD;
sto_bit:PD_STO_BIT;
END_UNION
END_TYPE
Jetzt trägt mir Codesys im WORD3 den Wert 1 ein (habe mittlerweile gelesen, dass Codesys für ein BOOL ein BYTE adressiert). Gibt es einen anderen Weg, um die beiden genau übereinander zu legen? Von S7 kenne ich hier die Sichten auf den Bereich.
Danke
Michael
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Servus,
habe in einem DUT ein UNION bestehend aus 4x WORD und einem Bitfeld (BOOLs + Array).
TYPE PD_STO_BIT :
STRUCT
sto_mld_vo_wa: BOOL;
sto_nata: BOOL;
sto_bhta: BOOL;
sto_ext: BOOL;
sto_bit : ARRAY [4..63] OF BOOL;
END_STRUCT
END_TYPE
TYPE PD_STO_WORD :
STRUCT
word_1: WORD:=0;
word_2: WORD:=0;
word_3: WORD:=0;
word_4: WORD:=0;
END_STRUCT
END_TYPE
TYPE PD_UNION_BOOL_WORD :
UNION
sto_word:PD_STO_WORD;
sto_bit:PD_STO_BIT;
END_UNION
END_TYPE
Jetzt trägt mir Codesys im WORD3 den Wert 1 ein (habe mittlerweile gelesen, dass Codesys für ein BOOL ein BYTE adressiert). Gibt es einen anderen Weg, um die beiden genau übereinander zu legen? Von S7 kenne ich hier die Sichten auf den Bereich.
Danke
Michael
servus machs guat.
schau mal hier :
l viewtopic.php?f=10&t=4948&p=16067&hilit=pragma#p16067 l
wollvieh.
Servus,
so habs ichs derweil auch erstmal gelöst.
Da es bei mir um 64bits geht, ein bißchen Unübersichtlich. Array mit bits geht leider auch nicht....
Gruß
Michael