Stateflow®使用图表中的转换从一种OR状态移动到另一种OR状态。对于图表执行的输入和执行工作流,Stateflow评估转换以确定它们是否有效。有效转换是条件标签为true且路径以状态结束的转换。如果转换有效,则Stateflow将从源状态退出并进入目标状态。
评估Transitions的工作流
Transition评估顺序
当多个转换源自单个源(如状态或连接)时,Stateflow使用评估顺序来确定何时测试每个转换。根据图表使用的动作语言,可以显式或隐式创建转换顺序。无论是显式还是隐式排序,转换都会在指定转换顺序的转换源附近显示一个数字。
在编辑图表时,使用显式排序可以避免转换顺序发生变化。
显式排序
打开新的状态流程图时,源的所有传出转换都会按照创建它们的顺序自动编号。顺序从1开始,一直到源的下一个可用编号。
要更改转换的执行顺序,请右键单击转换,将光标放在“执行顺序”上,然后选择要执行转换的顺序。更改转换编号时,状态流程图会通过保留其相对顺序,自动对源的其他传出转换进行重新编号。
隐式排序
对于隐式排序模式下的C图,状态流图根据以下内容评估来自单个源的一组传出转换:
层次
图表根据每个转换的父级的层次级别按顺序评估一组传出转换。
标签
图表根据标签按以下优先级顺序评估一组具有相同层次优先级的outgoing转换:
带有事件和条件的标签
带有事件的标签
带有条件的标签