嵌入式编程思想---状态机
文章平均质量分 77
状态机的用处:比如“功能菜单”的实现。程序逻辑:信息输入---运算处理---控制输出。但随着情景不同执行的”程序逻辑“不同。而随着情景的增加,程序逻辑复杂度成倍增长。直到引入“状态”的概念,通过”状态机“来解决问题
拳拳小布
拳拳,赤子之意。拳拳小布,寻找规则取胜,借众拳之力,赢得自己的胜利
展开
-
终于将状态机思想用到实处啦
本以为用到实处啦,结果真正付诸实践,并一番权衡后,发现空欢喜一场。至此,对于状态机思想 初步融会贯通啦原创 2021-07-01 00:24:06 · 254 阅读 · 4 评论 -
编译C代码环境搭建
C代码编译环境(电脑上编译运行)对于想提高C语言能力的人来说是必须的,比之在单片机上验证省去不少步骤和时间,比之用VS (visual studio)更小巧灵活。原创 2021-01-16 11:28:21 · 824 阅读 · 0 评论 -
三个月文章积累后的设计模式之状态机总结
状态机 和设计模式(状态模式)有关,设计模式和面向对象编程息息相关。面向对象编程和程序员有关。所以我要了解状态机。原创 2021-02-22 23:45:18 · 439 阅读 · 0 评论 -
指针数组
这是在写二级状态机相关的代码时遇到的问题,两种实现方式可选,最终我选择了使用指针数组的方式应用场景是 如何根据当前的状态和发生的事件 在对应的状态表(结构体数组)里查找对应的状态信息(结构体)原创 2021-02-25 13:40:25 · 2854 阅读 · 0 评论 -
表驱动的一级状态机实现
状态机的四个概念:当前状态,事件,下一个状态,动作。相比于什么switch...case 和 if...else 的语句结构,表驱动更容易展示这四个概念,也就更容易理解状态机的本质。原创 2021-02-25 08:36:56 · 1096 阅读 · 0 评论 -
表驱动的二级状态机实现
表驱动的优势在于数据与处理分离,一个合适的表结构,当工程师扩展功能仅仅只需要添加相应的表项即可,一般不需要再改动表处理部分原创 2021-02-27 18:49:49 · 646 阅读 · 0 评论 -
打印常量名/变量名
在编程实现状态机的过程中,遇到一个问题,状态机输出最重要的是状态,如何查看状态,直接打印?那么看到的只是状态所代表的数字,我们理解中的状态应该是一个字符串显示。于是问题变成了如何打印常量名或变量名。如果常量/变量不多的情况下,直接单独写一条关于这个常量或变量的打印语句就好了,变量名直接给定。但如果是多个常量/变量,那这种方式就太低效了,怎么办?根据# ,将常量名/变量名转换成字符串,然后输出就好了,如何具体做?制作一个结构体数组,结构体中有两个元素,变量和字符串指针。原创 2021-02-23 14:10:30 · 739 阅读 · 1 评论 -
图形化状态机框架搜集
图形化状态机框架,图形配置化完成后,自动生成有限状态机的框架代码原创 2021-03-25 21:45:54 · 338 阅读 · 0 评论