主要内容

指定类型的Stateflow数据

这个词数据类型指计算机代表信息如何在内存中。的数据类型决定了分配给数据的存储,编码一个数据值的方法作为二进制数字的模式,可供操作的数据和操作。

指定数据类型使用数据类型的助理

您可以指定类型的数据对象属性检查器或Model Explorer。在类型场,从下拉列表中选择一个类型或输入一个表达式,计算数据类型。有关更多信息,请参见设置数据属性

另外,使用数据类型指定一个数据助理模式并选择数据类型基于这个模式:

  1. 在模型浏览器中,数据窗格中,单击显示数据类型的助理按钮

  2. 选择一个模式从下拉列表中。可用的列表模式取决于数据对象的范围。

    范围 模式
    当地的 继承(只有在使用MATLAB的图表®操作语言),建在,不动点,枚举,总线对象,表达式
    常数 建在,不动点,表达式
    参数 继承,建在,不动点,枚举,总线对象,表达式
    输入 继承,建在,不动点,枚举,总线对象,表达式
    输出 继承,建在,不动点,枚举,总线对象,表达式
    数据存储内存 继承

  3. 指定基于模式的额外信息。数据类型助理填充类型根据你的规格。

    模式 数据类型
    继承

    你不能指定一个数据类型。你继承根据您选择的范围的数据类型的数据对象:

    有关更多信息,请参见从仿真软件继承数据类型对象金宝app

    建在

    从下拉列表中指定数据类型支持的数据类型:金宝app

    • :64位双精度浮点数。

    • 32位单精度浮点数。

    • 一半:half-precision数据类型占用16位的内存,但其浮点表示使它能够处理更广泛的动态范围比相同大小的整数或定点数据类型。看到在仿真软件Half-Precision数据类型金宝app(定点设计师)

    • int64:64位带符号整数。

    • int32:32位带符号整数。

    • int16:16位带符号整数。

    • int8:8位带符号整数。

    • uint64:64位无符号整数。

    • uint32:32位无符号整数。

    • uint16:16位无符号整数。

    • uint8:8位无符号整数。

    • 布尔:布尔(1 =真正的;0 =)。

    • 毫升:与MATLAB数组类型的内部mxArray。金宝app只支持图表中使用C作为行动的语言。的毫升数据类型提供了Stateflow数据与MATLAB环境的好处,包括MATLAB Stateflow数据对象分配给一个变量或将它作为参数传递给一个MATLAB函数。毫升数据不能有一个范围外的Stateflow层次结构。也就是说,它不能有一个范围输入输出。有关更多信息,请参见毫升数据类型

    • 字符串:字符串。有关更多信息,请参见通过使用字符串管理文本信息

    不动点

    指定该信息定点数据:

    • Signedness:数据是否签署或无符号

    • 字长:有些词,量子化的整数的大小。大的字大小代表大值精度大于小字眼大小。默认值为16。

    • 扩展:定点数据缩放方法避免溢出条件和减小量化误差。默认的方法是二点

    信息,请参阅定点数据属性

    枚举

    为枚举数据类型指定类名。有关更多信息,请参见定义枚举数据类型

    总线对象

    指定的名称金宝appSimulink.Bus与Stateflow对象关联®总线对象结构。点击编辑创建或编辑一个总线对象类型的编辑器。你也可以从仿真软件继承总线对象属性的信号。金宝app

    表达式

    指定一个表达式,计算一个数据类型。使用这些表达式之一:

    有关更多信息,请参见通过使用MATLAB表达式指定数据的属性

  4. 保存的数据类型设置,点击应用

数据类型的助理却只能在Model Explorer。

继承的数据类型金宝app对象

当您选择继承:仿真软件一样金宝app类型下拉列表,数据对象的范围输入,输出,参数,数据存储内存从模型对象继承它们的数据类型。金宝app

范围 描述
输入 继承类型模型的输入信号连接到相应的输入端口图。金宝app
输出

继承类型模型的输出信号连接到相应的输出端口。金宝app

避免继承从输出信号数据类型。值,从仿真软件逆向传播块都是不可预知的。金宝app

参数 继承类型从相应的MATLAB基础工作空间变量或模型参数在一个蒙面的子系统。金宝app
数据存储内存 继承类型从相应的模型数据存储。金宝app

确定数据类型的对象继承:

  1. 构建仿真软件模型。金宝app

  2. 模型浏览器打开。

  3. 内容窗格中,检查CompiledType列。

从其他数据对象派生数据类型

您可以使用类型运营商从其他Stateflow派生数据类型的数据对象。例如,模型sf_bus_demo使用输入的数据类型结构inbus定义数据类型的局部结构counterbus_struct通过使用这个表达式:

类型(inbus)

模型浏览器显示counterbus_struct规范数据对象。

因为inbus派生的类型金宝appSimulink.Bus对象COUNTERBUS,counterbus_struct也源于它的数据类型COUNTERBUS。你编译模型后,CompiledType列Model Explorer显示编译仿真应用程序中使用的类型。

更多信息关于这个例子中,看到的整合自定义结构Stateflow图表

通过使用一个指定数据类型金宝app别名

您可以指定类型的Stateflow数据通过使用仿真软件数据类型的别名。金宝app有关更多信息,请参见金宝appSimulink.AliasType(金宝app模型)

例如,假设你想定义一个数据类型的别名MyFloat对应于内置的数据类型。在MATLAB命令提示符,输入:

MyFloat = 金宝appSimulink.AliasType;MyFloat。基类型=“单身”;

使用此别名指定类型的数据对象,选择的对象属性检查器或Model Explorer。在类型字段中,输入别名MyFloat

在你建立你的模型,CompiledType列Model Explorer显示编译仿真应用程序中使用的类型。

请注意

Stateflow块不支持代码生成,如果其中一个金宝app使用别名数据类型和变量的大小。这种限制并不适用于绘图水位输入、输出或本地数据。定义适应可变数据的更多信息,请参阅声明在Stateflow适应可变数据图表

另请参阅

(金宝app模型)|(金宝app模型)|(金宝app模型)

相关的话题