主要内容

建模一个CD播放器/无线电使用状态转换表

这个例子显示了一个简单的模型,一个CD播放器/广播使用状态转换表的逻辑Stateflow®。这个模型是一个重新实现sf_cdplayer使用状态转换表。

的核心逻辑控制CD播放器/收音机CdPlayerModeManager图,设计使用状态转换表。表以表格的形式用于表示模态逻辑。它允许我们定义各种状态及其层次结构与状态之间的转换。

状态的细胞

最左侧列表示表中的所有的州。请注意,各州可以嵌套层级结构。你可以选择一个状态为默认状态在任何给定的水平。这是由一个默认转换画左边的状态。您还可以添加一个默认的转换行如果有逻辑参与选择第一个进入状态。

你可以添加一个历史结一个给定的状态通过右击并选择添加历史结。这使国家能够记住过去的活动状态时重新输入而不是选择默认状态。例如,州ModeManager有历史连接。Stateflow图可以从这个表自动生成的视图。

过渡细胞

下一组列代表外转换从一个状态。每一行代表外转换从一个给定的状态。每一个过渡细胞分为三个子:

  1. 它指定条件单元格:指定一个布尔条件当过渡活跃

  2. 条件操作单元:指定要采取行动当过渡活跃

  3. 目标单元格:指定目标状态的转换。注意,您可以使用特殊的关键字等下一个美元,美元:相对于当前状态,以指定目的地。

这个图表接收用户输入,如磁盘是否已插入和广播模式的选择(FM,或CD)。然后决定了机械的图表命令输出。输入和输出数据的数据类型被定义为枚举数据类型的MATLAB®文件CdRequestMode.mRadioRequestMode.m

输出命令的CdPlayerModeManager图表处理图表CdPlayerBehaviorModel哪些模型CD播放器的行为机制。这个逻辑也使用状态转换表来实现。

MATLAB UI用于设置各种CD /收音机模式。

相关的话题