Цитата Сообщение от Евгений Кислов Посмотреть сообщение
Daedal, вам надо сделать так: Проект - Опции - Генератор кода - поставить галочку Замена констант. И повторно выполнить компиляцию.
Спасибо, для случая подстановки константы в качестве номера бита - помогло.

А как сделать, чтобы :

(* Индивидуальные настройки, полученные с modbus tcp *)
FOR i:= 0 TO VDNUM DO
VDARRAY[i].CmdIn.Hact := ACTUATORS_CMDIN_H.j; (* ACTUATORS_CMDIN_H - VD1..VD3 | KDYVD1..KDYVD3 | OZK1..OZK5 *)
j:=j+1;
END_FOR
- ошибка 4027: требуется целое число или символьная константа
j - была переменной и было без ошибок, подскажите, пожалуйста.

Если инициализировать j в разделе:
VAR_GLOBAL
j : INT := 0;
END_VAR
, то ошибка остаётся.

Как вообще в цикле перебирать номер бита в регистре? Детский вопрос, я не понимаю, почему так неочевидно-то всё это в codesys?!