Чтобы записать код TLC для вашей S-функции, необходимо понять процесс Компилятора Выходного языка для генерации кода. Как ранее описано, программное обеспечение Simulink® генерирует файл , который содержит частичное представление семантики выполнения блок-схемы. model.rtwФайлом является ASCII-файл, который содержит структуру данных в форме вложенного набора записей TLC. Записи включают имя свойства / пары значения свойства. Компилятор Выходного языка читает model.rtwфайл и преобразовывает его во внутреннее представление.model.rtw
Затем, выполнения Компилятора Выходного языка (интерпретируют) файлы TLC, запуская сначала с системного конечного файла, например, grt.tlc. Это - точка входа к системе TLC и файлы блока, то есть, другие файлы TLC, включенные в или сгенерированный из файла TLC, передали Компилятору Выходного языка на его командной строке (grt.tlc). Когда код TLC в системе и конечных файлах блока запущен, это использует, добавляет к и изменяет существующее имя свойства / пары значения свойства и записи, первоначально загруженные из файла . model.rtw
model .rtw структураСтруктура файла зеркально отражает структуру блок-схемы:model.rtw
Для каждой невиртуальной системы в модели в файле существует соответствующая системная записьmodel.rtw.
Для каждого невиртуального блока в невиртуальной системе существует запись блока в файле в соответствующей системе.model.rtw
Базовая структура model.rtw
CompiledModel {
System {
Block {
DataInputPort {
...
}
DataOutputPort{
...
}
ParamSettings {
...
}
Parameter {
...
}
}
}
}Для каждого вхождения данного блока в модели соответствующая запись блока существует в файле . Системный конечный файл циклы TLC кода через блок записывает и вызывает функции в соответствующем конечном файле блока для того типа блока. Для встроенных S-функций это вызывает встраивание файл TLC.model.rtw
Существует метод для того, чтобы получить специфичную для блока информацию (внутренняя информация о блоке, в противоположность входным параметрам, выходным параметрам, параметрам, и т.д.) в запись блока в файле для блока при помощи функции model.rtwmdlRTW в MEX-функции C блока.
Среди прочего функция mdlRTW позволяет вам выписывать установки параметров (ParamSettings), то есть, уникальная информация, имеющая отношение к этому блоку. Для установок параметров в файле блока TLC прямые доступы к этим полям сделаны из кода блока TLC и могут использоваться, чтобы изменить сгенерированный код, как желаемый.