Методы подсистемы

Описание

Настройте сгенерированные имена функций для допускающих повторное использование подсистем.

Генерация кода Category:> Идентификаторы

Настройки

Значение по умолчанию: $R$N$M$F

Введите макрос, который задает, ли, и в том, какой порядок, определенный текст должен быть включен в сгенерированный идентификатор. Макрос может включать комбинацию следующих лексем формата.

ЛексемаОписание
$F

Вставьте имя метода (например, _Update для метода обновления).

$H

Вставьте тег, указывающий на уровень системной иерархии. Для блоков корневого уровня тег является текстом root_. Для блоков на уровне подсистемы тег имеет форму sN_, где N уникальный номер системы, присвоенный программным обеспечением Simulink®.

Пустой для функций Stateflow®.

$M

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

Необходимый.

$N

Вставьте имя объекта (блок, объект сигнала или сигнала, состояние, параметр или объект параметра), для которого генерируется идентификатор.

$R

Вставьте корневое имя модели в идентификатор, заменив неподдерживаемые символы на подчеркивание (_) символ.

Требуемый для ссылки модели.

$U

Вставьте текст, который вы задаете для $U лексема. Используйте параметр Custom token text, чтобы задать этот текст.

Советы

  • Избегайте столкновений имени в целом. Один путь состоит в том, чтобы избегать использования имен блока по умолчанию (например, Gain1, Gain2...), когда ваша модель имеет много блоков того же типа.

  • Где возможно, увеличивают Maximum identifier length, чтобы разместить длину идентификаторов, которые вы ожидаете генерировать. Зарезервируйте по крайней мере три символа для искажающего имя текста.

  • Чтобы управлять случаем (верхний регистр или нижний регистр) текста, который представляет каждая лексема, включайте декораторов, таких как [U_] в вашем макросе. Смотрите Случай Управления с Маркерными Декораторами (Embedded Coder).

  • Если вы задаете $R, значение, которое вы задаете для Maximum identifier length, должно быть достаточно большим, чтобы разместить полные расширения $R и $M лексемы.

  • Когда конфликт по совпадению имен происходит между идентификатором в рамках высокоуровневой модели и идентификатором в рамках модели, на которую ссылаются, генератор кода сохраняет идентификатор из модели, на которую ссылаются. Искажение имени выполняется на идентификаторе в высокоуровневой модели.

  • Соглашения искажения имени не применяются к именам типов (то есть, typedef операторы) сгенерированный для типов глобальных данных. Установка Maximum identifier length не применяется к определениям типа. Если вы задаете $R, генератор кода включает имя модели в typedef.

  • Эта опция не влияет на объекты (такие как сигналы и параметры), которые имеют класс памяти кроме Auto (такие как ImportedExtern или ExportedGlobal).

  • Для моделей, на которые ссылаются, если параметр Subsystem methods не содержит $R лексема (который представляет имя эталонной модели), генерация кода предварительно ожидает $R лексема к формату идентификатора.

    Можно использовать Model Advisor, чтобы идентифицировать модели в модели, ссылающейся на иерархию, для которой генерация кода изменяет настройки параметра конфигурации.

    1. В Редакторе Simulink выберите Analysis> Model Advisor.

    2. Выберите By Task.

    3. Осуществите проверку Check code generation identifier formats used for model reference.

Зависимость

Этот параметр:

  • Появляется только для основанных на ERT целей.

  • Требует Embedded Coder® при генерации кода.

Информация о командной строке

Параметр: CustomSymbolStrFcn
Ввод: символьный вектор
Значение: допустимая комбинация лексем
Значение по умолчанию: $R$N$M$F

Рекомендуемые настройки

ПриложениеУстановка
ОтладкаНикакой удар
ТрассируемостьИспользуйте значение по умолчанию
ЭффективностьНикакой удар
Меры безопасностиНикакая рекомендация

Похожие темы