exponenta event banner

Интеграция сгенерированного кода с пользовательским кодом

Для подсистемы верхнего уровня, имеющей внутреннее состояние, генерируется FUNCTION_BLOCK код имеет ssMethodType. ssMethodType является специальным входным аргументом, который кодер добавляет в раздел входных переменных FUNCTION_BLOCK во время формирования кода. ssMethodType позволяет выполнять код для блочных методов Simulink ® Subsystem, таких как этапы инициализации и вычисления. Созданный код выполняет связанную инструкцию CASE на основе значения, переданного для этого аргумента.

Использовать ssMethodType с FUNCTION_BLOCK для модели в сгенерированном коде прототип функционального блока подсистемы верхнего уровня имеет один из следующих форматов:

Имеет внутреннее состояниеssMethodType содержит...
Да

Сгенерированный функциональный блок для блока имеет дополнительный первый параметр ssMethodType целого типа. Этот дополнительный параметр является дополнением к параметрам ввода-вывода функционального блока, отображаемым из портов ввода-вывода блока Simulink. Чтобы использовать функциональный блок, сначала инициализируйте блок путем вызова функционального блока с помощью ssMethodType задать целочисленную константу SS_INITIALIZE. Если среда IDE не поддерживает символьные константы, установите ssMethodType целочисленное значение 0. Для каждого последующего вызова вызовите функциональный блок с помощью ssMethodType установить в константу SS_STEP. Если среда IDE не поддерживает символьные константы, установите ssMethodType целочисленное значение 1. Эти настройки заставляют функциональный блок инициализировать или вычислять и возвращать выходные данные для каждого временного шага. При выборе Keep top level ssMethod name same as non-top level, ssMethodType SS_STEP будет сгенерировано как SS_OUTPUT с целым значением 3.

Нет

Интерфейс функционального блока имеет только параметры, сопоставленные с портами ввода/вывода блока Simulink. Здесь нет ssMethodType параметр. Для использования функционального блока в этом случае вызовите функциональный блок с аргументами ввода-вывода.

Для подсистем, не являющихся подсистемами верхнего уровня, в сгенерированном коде прототип функционального блока подсистемы имеет один из следующих форматов:

Имеет внутреннее состояниеssMethodType содержит...
Да

Интерфейс функционального блока имеет ssMethodType параметр. Созданный код может иметь SS_INITIALIZE, SS_OUTPUT, или другое ssMethodType константы для реализации семантики Simulink.

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

Нет

Интерфейс функционального блока имеет только параметры, сопоставленные с портами ввода/вывода блока Simulink. Здесь нет ssMethodType параметр.