第1章 概述 1
1.1 MATLAB产品简介 1
1.2 基于模型的设计思想 8
1.2.1 系统设计的基本过程 8
1.2.2 传统设计手段的缺陷 9
1.2.3 基于模型的设计优势 11
1.3 Simulink回顾 13
1.3.1 创建Simulink模型 13
1.3.2 参数设置与Model Explorer 15
1.3.3 创建子系统 18
1.4 Stateflow概述 24
1.5 安装配置Stateflow 27
1.6 本章小结 29
第2章 创建状态图 30
2.1 Stateflow编辑器 30
2.1.1 创建Simulink模型 30
2.1.2 Stateflow编辑器概览 32
2.2 创建和编辑状态图 34
2.2.1 插入图形对象 34
2.2.2 编辑图形对象外观 50
2.3 本章小结 54
第3章 状态图的仿真 56
3.1 状态图的基本概念 56
3.2 事件 57
3.2.1 添加事件 57
3.2.2 使用多个输入事件 61
3.2.3 默认转移的注意事项 63
3.3 数据对象 65
3.3.1 添加数据对象 65
3.3.2 数据对象的属性 67
3.3.3 使用非标量的数据对象 72
3.3.4 设置数据对象的数据类型 75
3.4 状态图的更新模式 79
3.5 Stateflow模型查看器 84
3.5.1 启动Stateflow模型查看器 84
3.5.2 查看并修改对象属性 85
3.5.3 增加新的非图形对象 87
3.6 本章小结 89
第4章 流程图 91
4.1 转移冲突 91
4.1.1 转移冲突的产生与默认处理 91
4.1.2 用户自定义检测次序 93
4.2 流程图的创建 96
4.2.1 常用逻辑结构模型 97
4.2.2 流程图的回溯现象 101
4.2.3 流程图应用实例 103
4.3 图形函数 110
4.3.1 状态中的流程图 110
4.3.2 创建图形函数 111
4.3.3 应用实例 115
4.4 Stateflow调试器 120
4.4.1 启动调试器 120
4.4.2 设置断点 122
4.4.3 调试过程 124
4.5 本章小结 127
第5章 有限状态系统——层次化建模 128
5.1 状态图回顾 128
5.2 状态动作深入 129
5.2.1 状态动作的分类 129
5.2.2 动作的执行次序 132
5.2.3 在动作中使用事件 133
5.3 层次化建模 143
5.3.1 层次化模型的构成 143
5.3.2 层次化状态图的转移 146
5.3.3 历史节点 149
5.3.4 内部转移 150
5.3.5 层次化模型的转移检测优先权 155
5.3.6 本地数据对象 158
5.4 子状态图 162
5.4.1 使用组合的状态 162
5.4.2 创建子状态图 164
5.4.3 子状态图的超转移 166
5.5 Stateflow查询工具 168
5.6 本章小结 171
第6章 有限状态系统——并行机制 172
6.1 并行机制 172
6.1.1 概述 172
6.1.2 状态的解析关系 173
6.1.3 并行状态的执行次序 176
6.1.4 图形盒的应用 177
6.2 本地事件广播 181
6.2.1 定义本地事件 181
6.2.2 广播本地事件 183
6.2.3 直接事件广播 184
6.2.4 受限事件广播 184
6.2.5 事件广播的执行次序 185
6.3 简化并行状态图的设计 193
6.3.1 隐含事件 194
6.3.2 时间逻辑 195
6.4 Stateflow搜索替换工具 198
6.5 应用实例 201
6.6 本章小结 210
第7章 Stateflow Coder目标编译 211
7.1 Stateflow的编译目标 211
7.2 仿真目标 212
7.2.1 仿真目标属性对话框 212
7.2.2 仿真目标编译属性 214
7.2.3 代码生成选项和自定义集成代码选项 215
7.2.4 编译目标 217
7.3 Real-Time Workshop目标 218
7.3.1 RTW目标配置 218
7.3.2 生成的代码 226
7.4 自定义目标 233
7.4.1 创建目标 233
7.4.2 配置选项 234
7.4.3 生成的代码 237
7.5 集成自定义代码 243
7.6 本章小结 253
第8章 可复用图形结构 254
8.1 真值表 254
8.1.1 真值表概述 254
8.1.2 创建并应用真值表 255
8.1.3 内部结构 260
8.2Embedded MATLAB Function 263
8.2.1 调用M函数 263
8.2.2 创建并应用Embedded MATLAB Function 265
8.2.3 代码生成 269
8.3 本章小结 270
第9章 Stateflow API 272
9.1 概述 272
9.2 对象的属性和方法 274
9.2.1 获取句柄 274
9.2.2 查看属性和方法 275
9.3 创建Stateflow模型 279
9.3.1 创建新模型 279
9.3.2 创建状态 280
9.3.3 增加节点 282
9.3.4 创建转移 284
9.3.5 创建数据对象和事件 288
9.3.6 层次化模型 292
9.4 本章小结 294
附录A MATLAB可用的LaTex字符集 295
附录B Stateflow对象层次 296
附录C Stateflow语法小结 297
附录D Stateflow动作语言 300
附录E Embedded MATLAB语言 302
附录F SimEvents简介 313
参考文献 317