选择 Navigator , 打开导航。
导航界面:
选择 File – New。
选择 Workspace wizard ,然后选OK。
一般应用 1 个system , 点击 System1 修改 system 名字。选 Next。
选取 Topstates 的个数, Topstates 指的是模块。然后修改Topstate1为对应用模块名。
选择 Finish 。
完成工程模板的建立。
二、 设计状态机
1. 工具介绍
放置2个状态,如图所示。
双击state1,出现如图所示对话框,在state1 中,可以修改状态的名字。
先选择 Entry , 再选择 Action Function 。
将定义好的函数放到右边的Action Expression。
定义好的state1 状态如图:
用同样的方法可以定义state2 。
定义转移事件,双击状态转移连线的‘? ’号码,后出现如图对话框
选择事件,定义事件名。
将定义好的事件放到左边的Trigger。
如果有必要,所以选 Action Expression ,定义事件发出后要调用的函数。
定义好的状态机如图
3、条件转移
先打开转移对话框,
选择 Guard Experssion
Constant ,可以定义需要的常量,External Variable 可以定义外部变量先分别定义所要的常量和外部变量,如下图
写转移条件
如图,当前状态为state1 时,发出keyPress 事件同时 keyState == RELEASE 时,转移到State2。
http://hi.baidu.com/andy84 牧笛Andy
2010-4-22 3、返回上一次的状态
下图中,A 状态有 B 、C 两个子状态。 A 中放有 history 历史状态, 这个历史状态会记录,A 的所以子状态(B ,C )当中最后一个活动的状态。
例如,当现在的状态为C 状态时,发现Event3后,会转移动D 状态。 在D 状态,发出Event4后,
会回到C 状态。