Следующие ограничения Simulink® Coder™ применяются к ссылке модели. В дополнение к этим ограничениям должна удовлетворить иерархия модели, используемая в генерации кода:
Требования Simulink и ограничения, перечисленные в:
Требования Simulink Coder, применимые к цели генерации кода, как перечислено в Требованиях Параметра конфигурации.
Если у вас есть лицензия Embedded Coder®, некоторые ограничения существуют на сгруппированных классах памяти в моделях, на которые ссылаются. Для получения дополнительной информации смотрите Ограничения Класса памяти.
Блоки To Workspace и блоки Scope проигнорированы, когда программное обеспечение Simulink Coder генерирует код для модели, на которую ссылаются. Получившийся код эквивалентен, если построения не существовали.
Код, сгенерированный для моделей, на которые ссылаются, не может данные логов к MAT-файлам. Если регистрация данных включена для модели, на которую ссылаются, программное обеспечение Simulink Coder отключает опцию перед генерацией кода и повторно включает ее впоследствии.
Если вы регистрируете состояния для модели, которая содержит модели, на которые ссылаются, упорядоченное расположение состояний в выходе определяется блоком отсортированный порядок и не может совпадать между симуляцией с выходом и логгированием MAT-файла сгенерированного кода выход.
Когда топ-модель использует Data Import/Export> параметр Initial state в диалоговом окне Configuration Parameters, чтобы задать начальные условия, программное обеспечение Simulink Coder не инициализирует дискретные состояния моделей, на которые ссылаются, во время генерации кода.
Если модель, на которую ссылаются, используемая в генерации кода, имеет по крайней мере одну из следующих характеристик, модель должна задать Общее количество параметра конфигурации экземпляров, позволенных на топ-модель как One
. Другие экземпляры модели могут существовать в иерархии. Если вы не устанавливаете параметр на One
, или больше чем один экземпляр модели существует в иерархии, ошибка происходит. Характеристики:
Модели - ссылки другая модель, которая была установлена в один экземпляр.
Модель содержит внутренний сигнал или состояние с классом памяти, который не поддержан для моделей мультиэкземпляра. Внутренним сигналам и состояниям нужно было установить класс памяти на Auto
или Model default
. Класс памяти по умолчанию для внутренних данных должен быть классом памяти мультиэкземпляра.
Модель использует по крайней мере одно из этих построений Stateflow®:
Порожденные машиной данные
Порожденные машиной события
Графические функции Stateflow
Модель содержит S-функцию, которая является:
Встроенный, но не установил опцию SS_OPTION_WORKS_WITH_CODE_REUSE
Не встроенный
Модель содержит подсистему вызова функций что:
Механизм Simulink обеспечивает, чтобы быть функцией
Вызван широким сигналом
Модель, на которую ссылаются, не может использовать невстроенные S-функции, сгенерированные программным обеспечением Simulink Coder.
Цель S-функции Simulink Coder не делает ссылки модели поддержки.
Для получения дополнительной информации смотрите S-функции в Моделях, на которые Ссылаются (Simulink).
Если вы генерируете код для атомарной подсистемы как допускающая повторное использование функция, вводы или выводы, которые соединяют подсистему с силой модели, на которую ссылаются, предотвращают повторное использование кода, как описано в Генерируют Повторно используемый Код от Подсистем.
Цель S-функции Simulink Coder не делает ссылки модели поддержки.
Когда модель содержит триггер, или включите порт, вы не можете сгенерировать автономный код Simulink Coder.