/FsmTiny

一种有限状态机(Mealy)的精简实现,编码遵循 ANSI C,易于扩展和学习,非常适用于资源有限的场景。 其工作过程如下: 1、使用指定起始状态和最终状态初始化状态机,并设置状态机的当前状态为起始状态。状态机开始工作。 2、在相关事件发生时,把事件关联的变量值传递给状态机并执行状态转换活动。 3、如果状态机进入最终状态(使用当前状态是否等于最终状态来判断),则状态机停机;否则继续工作。

Primary LanguageC

摘要

一种有限状态机(Mealy)的超精简实现,编码遵循 ANSI C,易于扩展和学习,非常适用于资源有限的场景。 其工作过程如下: 1、使用指定起始状态和最终状态初始化状态机,并设置状态机的当前状态为起始状态。状态机开始工作。 2、在相关事件发生时,把事件关联的变量值传递给状态机并执行状态转换活动。 3、如果状态机进入最终状态(使用当前状态是否等于最终状态来判断),则状态机停机;否则继续工作。

更新日志

Version 1.0 2022/06/18 feallee@hotmail.com 1、增加支持多状态机同时工作功能。 2、修改演示例程。

Version 1.0 2022/06/17 feallee@hotmail.com 1、创建项目,实现核心功能,取名为 FsmTny,定版本为 1.0。 2、增加演示例程。