标签:
基于STM32在做产品,开发环境是KEIL5。
由于是一个人负责一个产品整个部分,所以必须把整个流程弄得十分的清楚,才能保证产品在所有情况下都能正常稳定地运行。
由于经验的缺少,产品刚上手的时候总是纠结与某一块的功能,这样一块一块的功能划分让之后我在对功能整合和功能衔接的时候非常头疼,也非常的乱,虽然基本能让产品稳定工作,但代码实在臃肿,并且之后如果升级版本,或者移植,也非常的不方便。
现在用全局变量和状态机来解决变得非常的清晰:
1.四个输入输出量的全局变量(如果有衔接的函数可以增加全局变量的定义,但是一定要保证输入输出的唯一性);
2.产品在不同状态下的工作内容;
全局变量看成是数据API接口,在工作内容中的函数调用全局变量,保证函数的输入输出全是全局变量。在main()中
整体架构就是
1 while(1) 2 { 3 switch(station) 4 { 5 case :station_1 6 ----- 7 break; 8 case :station_2 9 ----- 10 break; 11 12 ----- 13 ----- 14 } 15 }
就是这么简单。
我还是太菜了。。。
全局变量与状态机的结合,让STM32工程工作得更加有效率,稳定。
标签:
原文地址:http://www.cnblogs.com/yeanz/p/5230453.html