Уровень S-функции 2 MATLAB® не поддерживает пользовательские типы данных определения в S-функции. Однако порты ввода и вывода могут наследовать свои типы данных от объекта Simulink.NumericType
или Simulink.AliasType
. Например, S-функция в следующей модели наследовала свой тип входных данных от блока Constant:
Поле типа Выходных данных блока Constant содержит значение MyDouble
, который является Simulink.AliasType
, заданным в MATLAB workspace со следующей строкой кода:
MyDouble = Simulink.AliasType('double');
Порты ввода и вывода Уровня 2 S-функция MATLAB msfcn_inheritdt.m
наследовали свои типы данных. Когда механизм Simulink® выполняет распространение типа данных, он присваивает тип данных MyDouble
этим портам.
Можно задать тип данных фиксированной точки в Уровне 2 S-функция MATLAB, с помощью одного из следующих трех методов:
RegisterDataTypeFxpBinaryPoint
указывает тип данных фиксированной точки с бинарным масштабированием только для точки
RegisterDataTypeFxpFSlopeFixExpBias
указывает тип данных фиксированной точки с [Наклонное Смещение] масштабирование заданного с точки зрения дробного наклона, зафиксированной экспоненты и смещения
RegisterDataTypeFxpSlopeBias
указывает тип данных с [Наклонное Смещение] масштабирование
Если зарегистрированный тип данных не является одним из Simulink встроенные типы данных, у вас должна быть Фиксированная точка лицензия Designer™.
Если вы имеете Fixed-Point Designer, осматриваете модели в качестве примера и S-функции, которым предоставляют программное обеспечение для примеров с помощью макросов для определения типов данных фиксированной точки.
Уровень 2 S-функция MATLAB | Функция MATLAB | S-функция | Разработчик S-функции