Здравствуйте,
Изучаю ТИА Портал v13, и стал вопрос.
Например, в CodeSys доступ к биту переменной (тип WORD)такой
описание:
test:word;
в самом коде
test.0:=true; (нулевому биту переменной test присваиваем лог единицу)
Как такое провернуть в ТИА Портале?????
Полчитал доки можно вроде использовать UDT, но в скаду мне всеравно нужно пихать WORD......
Вопрос по доступу к битам в WORD в SCL
-
- Posts: 202
- Joined: Wed Mar 19, 2008 1:12 pm
- Location: Ukraine
-
- Posts: 374
- Joined: Wed Oct 13, 2010 8:44 am
- Location: Russian Federation
-
- Posts: 202
- Joined: Wed Mar 19, 2008 1:12 pm
- Location: Ukraine
Re: Вопрос по доступу к битам в WORD в SCL
СПС, видел этот документ, но насколько я понял так нельзя как я хочу, без использования DB????
-
- Posts: 374
- Joined: Wed Oct 13, 2010 8:44 am
- Location: Russian Federation
Re: Вопрос по доступу к битам в WORD в SCL
Предлагают такой способ:
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
...
-
- Site Admin
- Posts: 1122
- Joined: Wed Sep 06, 2006 12:03 pm
- Location: CIS
Или маски + преобразования типов (на примере 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;
-
- Site Admin
- Posts: 1387
- Joined: Sat Aug 13, 2005 6:15 am
Re: Вопрос по доступу к битам в WORD в SCL
всё проще:
Code: Select all
#int_out.%X0 := #bool_in;
-
- Posts: 202
- Joined: Wed Mar 19, 2008 1:12 pm
- Location: Ukraine
Re: Вопрос по доступу к битам в WORD в SCL
Code: Select all
#test.%X0 := true;
-
- Site Admin
- Posts: 1387
- Joined: Sat Aug 13, 2005 6:15 am
Re: Вопрос по доступу к битам в WORD в SCL
ну так надо говорить что проц 3хх,4хх.
тогда как в топиках выше или по абсолютному адресу.
тогда как в топиках выше или по абсолютному адресу.
-
- Posts: 202
- Joined: Wed Mar 19, 2008 1:12 pm
- Location: Ukraine
Re: Вопрос по доступу к битам в WORD в SCL
СПС всем за ответы, буду пробовать UDT...
-
- Posts: 202
- Joined: Wed Mar 19, 2008 1:12 pm
- Location: Ukraine