Вы можете интегрировать пользовательский код, написанный на C или C++ с Stateflow® графики в Simulink® модели. Путем обмена данными и функциями между вашим пользовательским кодом и диаграммой Stateflow, можно расширить возможности Stateflow и использовать программное обеспечение, чтобы использовать преимущества вашего ранее существующего кода. Для получения дополнительной информации смотрите Повторно использовать Пользовательский код в Диаграммах Stateflow.
Вы можете читать и записать следующие переменные кода С непосредственно в ваших графиках, которые используют MATLAB® как язык действий.
Пользовательский тип кода С | Описание |
---|---|
double | Плавающая точка двойной точности |
single | Плавающая точка с одной точностью |
int8 | Подписанное 8-битное целое число |
uint8 | Беззнаковое 8-битное целое число |
int16 | Подписанное 16-битное целое число |
uint16 | Беззнаковое 16-битное целое число |
int32 | Подписанное 32-битное целое число |
uint32 | Беззнаковое 32-битное целое число |
Нажав правой кнопкой мыши на объект Stateflow, который использует ваш пользовательский код, вы можете получить доступ к вашей пользовательской переменной кода. После щелчка правой кнопкой мыши по объекту наведите указатель мыши на Explore. Появляется ваша пользовательская переменная кода, обозначаемая (C variable)
. Нажатие на переменную C позволяет вам получить доступ к пользовательскому коду из MATLAB.
Можно использовать следующие типы аргументов функции C непосредственно в графиках, которые используют MATLAB в качестве языка действий, не используя coder.ceval
. Для получения информации о вызове внешнего кода из кода MATLAB при помощи coder.ceval
, см. Call C/C + + Code из кода MATLAB (MATLAB Coder).
Пользовательский тип аргумента функции C | Описание |
---|---|
double | Плавающая точка двойной точности |
single | Плавающая точка с одной точностью |
int8 | Подписанное 8-битное целое число |
uint8 | Беззнаковое 8-битное целое число |
int16 | Подписанное 16-битное целое число |
uint16 | Беззнаковое 16-битное целое число |
int32 | Подписанное 32-битное целое число |
uint32 | Беззнаковое 32-битное целое число |
Щелкнув правой кнопкой мыши на объекте Stateflow, который использует ваш пользовательский код, можно получить доступ к функции пользовательского кода. После щелчка правой кнопкой мыши по объекту наведите указатель мыши на Explore. Появляется ваша функция пользовательского кода, обозначаемая (C function)
. Нажатие на функцию C позволяет вам получить доступ к пользовательскому коду из MATLAB.
В графиках, которые используют C в качестве языка действий, чтобы включить перечисления в пользовательский код, выберите Import custom code в панели Simulation Target Configuration Parameters. После выбора этой опции задайте перечисления в файле заголовка и включите файл заголовка в раздел Insert custom C code in generated на панели Simulation Target.