单片机开发者应该怎么样考虑自己的单片机程序

单片机控制大部分是面向硬件的,关于这些物理硬件的控制,最重要的就是调节速度和精度,表现在单片机内部算法上,我认为就是时间和空间的合理运用,而这些对算法的要求是什么呢,或者说作为单片机开发者来说,应该怎么样考虑自己的单片机程序呢?

单片机开发者应该怎么样考虑自己的单片机程序

第一,程序结构

我知道你肯定不会想去仔细研究数据结构,那太抽象了。在这里我直接告诉你,基于“状态机”的程序结构更加适合单片机,确切的说是有限状态机。状态机编程技术将直接促使你解决程序的时间问题,并且程序结构可大可小,普通状态机和层次式状态机能让你对绝大多数项目手到擒来。当然状态机编程技术也是需要学习的,但这比你直接去学数据结构要轻松的多。

第二,使用适合的算法

我们编程时要明白一个道理,再多复杂的算法也不能证明你的程序是一个好程序,那什么才是呢?是简洁明了和可靠稳定。大道至简放在编程上不是一句空话,同样一个冒泡排序算法,有的人写出来死板的很,有的人却能独具效率,这是对算法的理解高度不同。我认为与其学习更为复杂的控制算法,不如加深自己对现有算法的理解。通样的PID算法程序,有的人能加上积分分离,有的人能用上环境自适应,这里面差别不可谓不大啊。

最后希望你能早日从自己的工作中形成自己独到的理解,精益求精。