Зарегистрируйте тип данных с фиксированной точкой с масштабированием [Уклон], указанным в терминах дробного уклона, фиксированной степени и смещения, и верните идентификатор типа данных
extern DTypeId ssRegisterDataTypeFxpFSlopeFixExpBias
(SimStruct *S,
int isSigned,
int wordLength,
double fractionalSlope,
int fixedExponent,
double bias,
int obeyDataTypeOverride)
SSimStruct представляет S-функциональный блок.
isSignedTRUE если тип данных подписан.
FALSE если тип данных не подписан.
wordLengthОбщее количество битов в типе данных, включая любой бит знака.
fractionalSlopeДробный наклон типа данных.
fixedExponentЭкспонента наклона типа данных.
biasСмещение масштабирования типа данных.
obeyDataTypeOverrideTRUE указывает на необходимость соблюдения параметра «Переопределение типа данных» для подсистемы. В зависимости от значения параметра «Переопределение типа данных» результирующий тип данных может быть Double, Single, Scaled doubleили тип данных с фиксированной точкой, указанный другими аргументами функции.
FALSE указывает, что параметр «Переопределение типа данных» должен игнорироваться.
Эта функция полностью регистрирует тип данных с фиксированной точкой с помощью программного обеспечения Simulink ® и возвращает идентификатор типа данных. Обратите внимание, что в отличие от стандартной функции SimulinkssRegisterDataType, вам не нужно предпринимать никаких дополнительных шагов регистрации. Идентификатор типа данных может использоваться для указания типов данных портов ввода и вывода, параметров времени выполнения и состояний DWork. Он также может использоваться со всеми стандартными методами доступа к типу данных в simstruc.h, такие как ssGetDataTypeSize.
Эта функция используется для регистрации типа данных с фиксированной точкой путем указания длины слова, дробного наклона, фиксированной степени и смещения. Кроме того, можно использовать одну из других функций регистрации с фиксированной точкой:
Использовать ssRegisterDataTypeFxpBinaryPoint для регистрации типа данных с масштабированием только в двоичной точке.
Использовать ssRegisterDataTypeFxpScaledDouble для регистрации масштабированного двойника.
Использовать ssRegisterDataTypeFxpSlopeBias для регистрации типа данных с масштабированием [Уклон].
Если зарегистрированный тип данных не является одним из встроенных типов данных Simulink, лицензия на программное обеспечение Fixed-Point Designer™ извлекается. Чтобы предотвратить получение лицензии на программное обеспечение Fixed-Point Designer при открытии или просмотре модели, защитите вызовы регистрации с помощью
if (ssGetSimMode(S) != SS_SIMMODE_SIZES_CALL_ONLY ) ssRegisterDataType...
Примечание
Из-за характера назначения идентификаторов типов данных всегда следует использовать функции API для извлечения информации из идентификатора типа данных о типе данных в S-функции. Дополнительные сведения см. в разделе Идентификаторы типов данных.
Для использования этой функции необходимо включить fixedpoint.h и fixedpoint.c. Дополнительные сведения см. в разделе Структура S-функции.
C
Ничего. Типы данных должны быть зарегистрированы в программном обеспечении Simulink. Регистрация типов данных не поддерживается в TLC.
ssRegisterDataTypeFxpBinaryPoint, ssRegisterDataTypeFxpScaledDouble, ssRegisterDataTypeFxpSlopeBias, ssRegisterDataTypeHalfPrecision