嵌入式系统软件设计全解析
1. 代码文档化技术
在代码文档化方面,伪代码有着独特的优势。它并非图形化的,你可以使用编写代码的文本编辑器来撰写伪代码。而且,无论伪代码的详细程度如何,都能作为注释嵌入到最终的源代码中。这在图形化图表可能丢失,但源代码得以保留的情况下尤为重要。
当然,你也可以结合多种技术来记录代码。例如,使用高级状态图,像泳池计时器代码所展示的那样,清晰地呈现软件状态;在较低层次,切换到伪代码,这些伪代码最终会成为源代码注释的一部分。
在复杂系统中,多级文档是个不错的选择。整体框图展示系统内外的数据传输,另一个图展示子系统、电路板或主要固件功能之间的交互,伪代码或状态图则描述每个功能的具体实现方式。
2. 代码分区的考量
代码分区时,要考虑嵌入式系统的一些特殊因素:
- 资源访问仲裁 :在PC中,操作系统控制对磁盘驱动器、显示器和其他外设的访问。但大多数简单嵌入式设计没有操作系统,因此需要某种机制来仲裁对周边设备和内存的访问。例如,两个串行传输例程不能同时填充同一个缓冲区。最简单的方法是让每个资源(如串行I/O、接口缓冲区等)仅由一段代码控制。
- 自修改代码的限制 :由于代码存储在可编程只读存储器(PROM)中,自修改代码是不可行的,而且这在嵌入式系统中几乎是不可能的。不过,如果有非易失性存储,自适应代码是可行的。
- 代码编写目标 :不同的软件工程师编写代码的目标不同,有的追求最大可维护性,有的追求最高效率,有的追求最小空间。一些嵌入式系统必须以速度为首要目标,否则无法正常工作。
超级会员免费看
订阅专栏 解锁全文
1264

被折叠的 条评论
为什么被折叠?



