А поподробнее можно плиз?
Развёрнуто, а не намёками?
Вид для печати
Обращение к любому биту переменной в КДС оформлется как переменная.номер бита
Напишите хотя бы один примера, это нагляднее всяких объяснений будет...:cool:
Я пробовал всякие варианты обращений от AT %IХ9.1.0 до AT %IW9.1.0 но побитно не получилось, либо ошибка, либо всё слово, т.е. всегда 1 при активации любого входа, а не конкретно одного...
Вот для примера возьмём переменную из конфигуратора:
MDVV_Inp AT %IW9.1.0.0: WORD; (* *) [CHANNEL (I)]
Приведите плиз пример обращения к входу в КДС...:rolleyes:
var
bit : bool;
slovo : word;
end_var
bit:=slovo.'номер бита';
var_input или var_output - эти типы переменных используются при создании программных подмодулей... не основной программы. В PLC_PRG никаких input или output не должно быть.
Для проверки сделал простейшую похлопушку (ну типа релюшками похлопать). Всё чудненько работает.:D
Надо вводить лайки и благодарности на форуме... ;)
Хорошо, буду благодарственные письма начальству слать...:D
Ну, тогда в догонку вопросик, копаться не хотца в мануалах.
Можно ли сделать новое (другое) имя переменной без создания новой переменной?
Например, для наглядности я хочу обозвать переменную MDVV_INP.0 как Х1. Без определения новой переменной не обойтись? Это я к тому, что хочется наглядности, но не хочется лишнего программного кода, не люблю избыточность...:cool:
а цель этого мероприятия?
По поводу присвоения имён битовым входам?
Я же написал, для наглядности, например имя входа 1 МДВВ назвать не MDVV_INP.0, а Х1, и к нему коммент, например (Ручн.Режим), а MDVV_INP.1 назвать Х2 с комментом (Авт.Режим), и т.д., и т.п. В куче все дискретные входы обозвать Х1,2,3..., выходы Y1,2,3..., аналоговые входы/выходы по своему. Это конечно необязательная процедура, но если есть возможность и желание, почему бы не воспользоваться.
Это особенно удобно, если присваивать программным входам наименование входов принципиальной схемы проекта. Легче разобраться что, куда, и откуда растёт. Жизнь не замыкается на одном контроллере, есть ведь и внешние цепи..:D
А, понял.
Говорят можно через указатели.
Но я предпочитаю сделать это в явном виде, чтобы через год точно понимать ЗАЧЕМ я это делал...
А еще есть блок Unpack и Pack в библиотеке Standart или Util.
8 бит он разбирает, а потом так же разбирает слово\256.