📄 readme.txt
字号:
状态转换事件分发构件
使用说明
1、 这个构件包括两个文件:
FsmSmall.c
FsmSmall.H
2、 把FsmSmall.c加上你的工程文件中。
3、在你的源文件中包含FsmSmall.H文件。
4、仅适用于非层次式状态机。
一、状态函数格式要求
void FSM_Stat1(QFsm *me) {
switch (Q_SIG(me)) {
case Q_ENTRY_SIG: {
Stat1EntryAct();//进入动作
break;
}
case Q_ENTRY_SIG: {
Stat1ExitAct();//退出动作
break;
}
case A_SIG: {
Q_TRAN(&FSM_STAT2);//转换到状态2
break;
}
case A_SIG: {
Q_TRAN(&FSM_STAT3);//转换到状态3
break;
}
}
}
二、void main(void)框架
static QFsm Exp;
void main(void)
{
EXP_ctor(); //构造函数
Q_SIG((QFsm *)&Qexp) = Q_TOP_INIT_SIG;
EXP_initial(&Qexp); //初始伪状态
while(1){
Q_SIG((QFsm *)&Qexp) = ((QSignal)USER1_SIG);
//给一个事件,用于测试
//接收事件
QFsm_dispatch(&Qexp); //分发事件
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -