概述
问题1:什么是流程图?
问题2:如何创建一个流程图?
问题3:流程图有哪些语法?
1#概念:流程图是用来描述一系列决策流的逻辑图(一般要放在Simulink模型文件中),如下图所示:

如下图是一个流程图的例子:

2#流程图中用到的有哪些概念:转移、节点、条件、动作、事件等,具体例子如下:


3#流程图有哪些需要注意的地方
除非需要持久性变量(persistent data ),流程图中的变量一般不需要存储
流程图的执行从默认转移开始
从每个节点开始的转移需要经过测试,以确定流程图的下一个节点在符合条件的路径之下
一旦有效的转移被发现,则从该节点沿着搜索路径传递到下一个节点
一旦满足转移条件,则立即执行相关转移的动作
在终止节点停止。指某个节点上没有一条向外传递的 转移
4#什么时候我们需要创建流程图?
实现条件动作
决策结构,例如 if-else 和 switch-case结构
迭代结构,例如 for循环和 while循环
嵌套的决策和迭代结构
流程图特别适合于用在
决策结果与先前的值无关
决策结果无需存储,因为将来的运算不需要
5#创建流程图的步骤?
新建模型文件,打开模块库
添加Chart等
打开图框编辑器,添加节点、默认转移、转移、标签等等
6#转移标签语法
通用的转移标签由以下三个部件组成:
备注语句
将 []中输入条件
在 {}中输入条件动作
所有的部件是可选的

6#条件语句语法
条件语句一定是布尔表达式,估计结果要么为真,要么为假
布尔表达式中可以包含 使用布尔操作符进行逻辑比较 (>, =, <=, == , !=, ~=) 或调用的函数应该返回一个布尔值
可以由多重条件组合成逻辑操作符,例如&& (与操作符)或 者 || (或操作符).
7#使用 Stateflow Pattern Wizard 创建通用的条件语句模板

8#流程图的回溯

9#创建流程图的技巧
使用以下规范提高流程图的清晰度以及可读性:
仅仅使用一个默认转移作为输入.
提供一个终止节点作为输出.
使所有的搜索路径覆盖终止节点
除终止节点外,其它每个节点提供一个无条件转移路径
遵循以下指南:
输入点仅仅执行一次.
终止节点仅仅执行一次
最终必须到达终止节点
流程图永远不回溯.
设置显式转移优先级

设置隐式转移优先级

Chart中的数据来自Simulink
使用Model Explorer 来定义I/O变量.

最后
以上就是直率小土豆为你收集整理的Stateflow#1:创建流程图的全部内容,希望文章能够帮你解决Stateflow#1:创建流程图所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复