Page 1 of 1

Вопрос по доступу к битам в WORD в SCL

Posted: Mon May 01, 2017 7:02 pm
by a_gricaj
Здравствуйте,
Изучаю ТИА Портал v13, и стал вопрос.
Например, в CodeSys доступ к биту переменной (тип WORD)такой

описание:

test:word;

в самом коде

test.0:=true; (нулевому биту переменной test присваиваем лог единицу)

Как такое провернуть в ТИА Портале?????

Полчитал доки можно вроде использовать UDT, но в скаду мне всеравно нужно пихать WORD......

Re: Вопрос по доступу к битам в WORD в SCL

Posted: Mon May 01, 2017 9:13 pm
by Rex2701

Re: Вопрос по доступу к битам в WORD в SCL

Posted: Tue May 02, 2017 5:38 am
by a_gricaj
СПС, видел этот документ, но насколько я понял так нельзя как я хочу, без использования DB????

Re: Вопрос по доступу к битам в WORD в SCL

Posted: Tue May 02, 2017 7:49 am
by Rex2701
Предлагают такой способ:

Code: Select all

VAR_TEMP
tiINT : INT; //Integer value
tINT AT tiINT : STRUCT //For individual bit access
b08: BOOL ;
b09 : BOOL ;
b10 : BOOL ;
b11 : BOOL ;
b12 : BOOL ;
b13 : BOOL ;
b14 : BOOL ;
b15 : BOOL ;
b00 : BOOL ;
b01 : BOOL ;
b02 : BOOL ;
b03 : BOOL ;
b04 : BOOL ;
b05 : BOOL ;
b06 : BOOL ;
b07 : BOOL ;
END_STRUCT;
END_VAR

BEGIN
tiINT := <whatever integer your are looking at>;
tbXX := tINT.b04; //Fetch bit 04 in the integer
...

Posted: Tue May 02, 2017 7:47 pm
by Schtiel
Или маски + преобразования типов (на примере 13-го бита):

Code: Select all

VAR
Value:INT;
B13:BOOL;
END_VAR
BEGIN
IF B13=TRUE THEN
Value:= WORD_TO_INT(INT_TO_WORD(Value)OR W#2#0010_0000_0000_0000);
ELSE
Value:= WORD_TO_INT(INT_TO_WORD(Value)AND W#2#1101_1111_1111_1111);
END_IF;

Re: Вопрос по доступу к битам в WORD в SCL

Posted: Wed May 03, 2017 8:49 am
by sania
всё проще:

Code: Select all

#int_out.%X0 := #bool_in;

Re: Вопрос по доступу к битам в WORD в SCL

Posted: Thu May 04, 2017 12:07 pm
by a_gricaj

Code: Select all

#test.%X0 := true;
так ошибка...3,Invalid access %X0 for #test.

Re: Вопрос по доступу к битам в WORD в SCL

Posted: Thu May 04, 2017 12:36 pm
by sania
ну так надо говорить что проц 3хх,4хх.
тогда как в топиках выше или по абсолютному адресу.

Re: Вопрос по доступу к битам в WORD в SCL

Posted: Thu May 04, 2017 12:45 pm
by a_gricaj
СПС всем за ответы, буду пробовать UDT...

Re: Вопрос по доступу к битам в WORD в SCL

Posted: Sun May 28, 2017 7:57 pm
by a_gricaj
Дабы не плодить темы, подскажите пожалуйста почему при мониторинге FB на SCL у меня такая фигня:
Image
эта переменная является входом FB и инициализирована.
СПС