QT-状态机

LS自主研发项目上位机自检
状态机,父状态,子状态,子子状态
空白状态stIdle,主状态stMain,debug主状态sfDisplayOn,debug主状态sfDisplayOff,自子状态机stLoad有些功能检测起来比较复杂,要用三四个状态组合来检查。
步骤:1,定义状态机
头文件中包含状态机类,定义并新建一个状态机(一般为指针类型变量)machine = new StateMachine(this);
2,定义并新建状态,这些状态是级别最高状态,主要是空闲stIdle,检测状态stMain,并将这些状态加入到状态机当中。并且指定当前状态书的初始状态。 machine->setInitialState(stIdle);
为主状态stMain指定初始状态。
3.用addTransition为每一个状态写好状态跳转。
4.除了要靠路状态正确跳转,还要考虑如果此状态处理不及时的情况,所以还要设置超时的跳转。
5.顺序跳转和超时跳转都设置好了,可以添加跳转时的一些汉字提示。

		代码:
QStateMachine *machine;   //state machine
QState *stIdle, *stMain;
QState *stUpBumperPress;
QState   *stUpBumperRelease;
 QState *stUpBumperCheck;
 QState  *stUpBumper;
 QFinalState *stUpBumperDone;
QTimer *upBumperPressTimer, *upBumperReleaseTimer;

mach
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值