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