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

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

Переменные пользовательского кода в графиках, которые используют MATLAB в качестве языка действия

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

Пользовательский тип кода СОписание
doubleПлавающая точка двойной точности
singleПлавающая точка с одинарной точностью
int88-битное целое число со знаком
uint88-битное целое число без знака
int1616-битное целое число со знаком
uint1616-битное целое число без знака
int3232-битное целое число со знаком
uint3232-битное целое число без знака

Путем щелчка правой кнопкой по объекту Stateflow, который использует пользовательский код, можно получить доступ переменной пользовательского кода. После щелчка правой кнопкой по объекту наведите на Explore. Ваша переменная пользовательского кода кажется, обозначенной (C variable). Нажатие на переменную C позволяет вам получать доступ к пользовательскому коду из MATLAB.

Функции пользовательского кода в графиках, которые используют MATLAB в качестве языка действия

Можно использовать следующие типы аргумента функции C непосредственно в графиках, которые используют MATLAB в качестве языка действия, не используя coder.ceval. Для получения информации о вызове внешнего кода из кода MATLAB при помощи coder.ceval, смотрите Вызов Код C/C++ из кода MATLAB (MATLAB Coder).

Пользовательский тип аргумента функции CОписание
doubleПлавающая точка двойной точности
singleПлавающая точка с одинарной точностью
int88-битное целое число со знаком
uint88-битное целое число без знака
int1616-битное целое число со знаком
uint1616-битное целое число без знака
int3232-битное целое число со знаком
uint3232-битное целое число без знака

Путем щелчка правой кнопкой по объекту Stateflow, который использует пользовательский код, можно получить доступ функции пользовательского кода. После щелчка правой кнопкой по объекту наведите на Explore. Ваша функция пользовательского кода кажется, обозначенной (C function). Нажатие на функцию C позволяет вам получать доступ к пользовательскому коду из MATLAB.

Доступ к перечислениям в пользовательском коде

В графиках, которые используют C в качестве языка действия, чтобы включать перечисления в ваш пользовательский код, выбирают Import custom code в панели Simulation Target Configuration Parameters. После того, как эта опция выбрана, задайте свои перечисления в заголовочном файле и включайте свой заголовочный файл в раздел Insert custom C code in generated панели Simulation Target.

Похожие темы