Показано с 1 по 4 из 4

Тема: pack_mode struct

  1. #1

    По умолчанию pack_mode struct

    Имеется СПК110 [М01], CDS V3.5 SP17 Patch 3.
    В проекте определена структура

    Код:
    {attribute 'pack_mode' := 2}
    TYPE TEST :
    STRUCT
    	reg0: WORD;
    	reg1: WORD;
    	reg2: WORD;
    	value: REAL;
    END_STRUCT
    END_TYPE
    Я ожидаю, что размер структуры будет равен 10 байт. Однако SIZEOF(TEST)=12.
    Аналогичный результат получаю при других значениях pack_mode (0 и 1).
    Подскажите, в чем может быть дело?
    Пример простейшего проекта, где воспроизводится проблема, прикреплен к сообщению.
    Вложения Вложения

  2. #2

    По умолчанию

    Да, странно. Как будто результат кратен размеру самого большого элемента

    Код:
    {attribute 'pack_mode' := 0 }
    TYPE TEST :
    STRUCT
    	value: LREAL;
    	reg0: WORD;
    	reg1: WORD;
    	reg2: WORD;
    END_STRUCT
    END_TYPE
    Размер 16

  3. #3

    По умолчанию

    Нужно писать

    {attribute 'pack_mode' := '0' }

    (в одиночных кавычках), тогда нет выравниванмия

  4. #4

    По умолчанию

    Цитата Сообщение от 1exan Посмотреть сообщение
    Нужно писать

    {attribute 'pack_mode' := '0' }

    (в одиночных кавычках), тогда нет выравниванмия
    Спасибо за подсказку. Действительно, дело в отсутствии кавычек. Странно только, что codesys не выдал ни одного предупреждения...

Похожие темы

  1. MasterSCADA 4D и OPC UA проблема с переменными типа STRUCT
    от VanoKing в разделе ПЛК (среда MasterSCADA 4D)
    Ответов: 4
    Последнее сообщение: 08.08.2022, 14:47
  2. Ответов: 0
    Последнее сообщение: 29.07.2022, 15:45
  3. struct alignment в макросах
    от andemeno в разделе Панели оператора (HMI)
    Ответов: 21
    Последнее сообщение: 02.11.2021, 23:18
  4. Ответов: 9
    Последнее сообщение: 22.10.2018, 16:18
  5. структуированные данные. Struct.
    от Юрий Поляков в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 11.06.2010, 01:57

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •