Skip to content

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

Notifications You must be signed in to change notification settings

feallee/FsmTiny

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

摘要

一种有限状态机(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、增加演示例程。

About

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

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Languages