高度嵌入式(有限的代码和 RAM 大小)项目给代码组织带来了独特的挑战。
我见过很多完全没有组织的项目。 (主要是由硬件工程师完成的,根据我的经验,他们通常不关心代码的非功能方面。)
但是,我一直在尝试相应地组织我的代码:
- 硬件特定(驱动程序、初始化)
- 特定于应用程序(不太可能被重用)
- 可重复使用,独立于硬件
对于每个模块,我尝试将其目的保留为这三种类型之一。
由于嵌入式项目规模有限且注重性能,因此常常保留这种组织方式。
对于某些情况,我当前的项目是具有 8k 闪存和 256 字节 RAM 的 MSP430 上的有限 DSP 应用程序。
我在各种目标微控制器(包括 MSP430)上编写和维护了多个嵌入式产品(30 多个并且还在增加)。我最成功的“经验法则”是:
- 尝试尽可能模块化通用概念(例如,将驱动程序代码与应用程序代码分开)。 -- 它使得将来更容易维护和重用/将项目移植到另一个目标微。
- 不要从一开始就担心优化代码。首先尝试解决领域的问题,然后再优化。 -- 您的目标微控制器可以处理比您想象的更多的“东西”。
- 努力确保可读性。尽管大多数嵌入式项目的开发周期似乎很短,但这些项目的生命周期通常比您预期的要长,并且毫无疑问,另一个开发人员必须使用您的代码。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)