6.2 应用系统的软件设计

6.2 应用系统的软件设计

在系统硬件电路设计定型后,软件设计的任务也就明确了。软件设计在系统设计中占有重要位置。应用软件包括数据采集和处理程序、控制算法实现程序、人机交互程序、数据管理程序等。软件设计通常采用模块化程序设计、自上而下的程序设计。

根据设计要求将系统软件分成相应的模块。一般来讲,软件的功能可分为两大类。一类是执行软件,完成各种实质性的功能,如测量、计数、显示、打印和输出控制等;另一类是监控软件,专门用来协调各执行模块和操作者的关系,在系统软件中充当组织调度角色。进行软件设计时应从以下几个方面加以考虑。

(1)根据软件功能要求,将软件分成若干个相对独立的功能模块,设计出合理的软件总体结构,使其结构清晰、简洁、流程合理。

(2)各功能程序实行模块化、子程序化,既便于调试、链接,又便于修改和移植。

(3)确定好算法,绘制程序流程图。这是程序设计的一个重要组成部分,正确的算法、合理的程序结构是软件设计成功的关键。从某种意义上讲,多花一点时间来设计程序流程图,就可以节省源程序的编辑、调试时间。

(4)合理分配系统资源,包括ROM、RAM、定时器/计数器、中断等。其中最关键的是片内RAM和Flash的分配,在RAM资源规划好后,可列出一张内存资源分配表,以备编程时查用。

(5)对程序功能进行必要的注释,提高程序的可读性。

(6)注意软件的抗干扰设计,提高应用系统可靠性。

软件设计可以使用汇编语言和C51语言,编写程序时,应采用标准的符号和格式。