Почему использование компилятор выходного языка?

Если просто необходимо произвести код C or C++ ANSI® из моделей Simulink®, вы не должны знать, как подготовить файлы к Компилятору Выходного языка. Если необходимо настроить выход, необходимо запустить Компилятор Выходного языка. С Компилятором Выходного языка вы можете:

  • Настройте набор опций, заданных вашим системным конечным файлом.

  • Встройте код для Блоков s-function.

  • Сгенерируйте дополнительные или различные типы файлов.

Блок MATLAB Function и продукт Embedded Coder® упрощают индивидуальную настройку кода во множестве путей. Вы можете смочь выполнить то, в чем вы нуждаетесь с ними без потребности записать файлы TLC. Однако действительно необходимо подготовить файлы TLC, если вы намереваетесь встроить S-функции.

Смотрите следующие разделы.

Настройка Выхода

Чтобы произвести настроенный выход с помощью Компилятора Выходного языка, помогает, изучаете ли вы, как блоки выполняют свои функции, какими типами данных управляют, структура model.rtw файл, и как изменить конечные файлы, чтобы произвести желаемый выход. Директивы и темы Встроенных функций на Компиляторе Выходного языка, опишите директивы выходного языка и их связанные построения. Вы будете использовать Директивы компилятора Выходного языка и построения, чтобы изменить существующие конечные файлы или создать новые единицы, в зависимости от ваших потребностей. См. Файлы TLC для получения дополнительной информации о конечных файлах.

Примечание

Вы не должны настраивать файлы TLC в папке matlabroot/rtw/c/tlc даже при том, что возможность существует, чтобы сделать так. Такие индивидуальные настройки TLC не могут быть применены во время процесса генерации кода и могут привести к непредсказуемым результатам.

Встраивание S-функций

Компилятор Выходного языка обеспечивает большую свободу для изменения, оптимизации и улучшения сгенерированного кода. Одна из самых важных функций TLC - то, что это позволяет вам встроить S-функции, которые вы пишете, чтобы добавить ваши собственные алгоритмы, драйверы устройств и пользовательские блоки к модели Simulink.

Чтобы создать S-функцию, вы пишете код после четко определенного прикладного программного интерфейса (API). По умолчанию Компилятор Выходного языка сгенерирует невстроенный код для S-функций, который вызывает их использующий этот тот же API. Этот обобщенный интерфейс подвергается изрядному количеству издержек из-за присутствия большой структуры данных, названной SimStruct для каждого экземпляра каждого Блока s-function в вашей модели. Кроме того, дополнительное время выполнения наверху включено каждый раз, когда методы (функции) в вашей S-функции называются. Можно устранить эти издержки при помощи Компилятора Выходного языка, чтобы встроить S-функцию путем создания файла с именем TLC sfunction_name.tlc это генерирует исходный код для S-функции, как будто это был встроенный блок. Встраивание S-функции повышает эффективность сгенерированного кода и уменьшает использование памяти.

Определение усовершенствованных классов памяти

Определенные форматы данных, такие как вложенные структуры, не могут быть сгенерированы с помощью стандартного Unstructured и FlatStructure типы класса памяти. Можно задать усовершенствованный класс памяти, если вы хотите сгенерировать другие типы данных. При создании усовершенствованного устройства хранения данных Classe требует понимания TLC программирование и использование специального усовершенствованного режима Custom Storage Class Designer. Для получения дополнительной информации смотрите Точно Представление данных Управления путем Записи Кода TLC для Класса памяти. Обратите внимание на то, что эта поддержка требует лицензии Embedded Coder.

Похожие темы