嵌入式系统的一般开发可以参照图1.2所示的流程,但不同系统的开发应用并不一定完全一样,该图只表示出了嵌入式系统开发过程中可能包括的部分,对于复杂的系统,开发流程可能会更复杂一些。
图1.2 嵌入式系统开发流程
第一步就是对系统的需求进行分析:确定设计任务和设计目标,一般分为功能性需求和非功能性需求两个方面,功能需求主要包括输入/输出信号和系统的操作方式等;非功能需求主要包括系统的性能、成本、功耗、体积、重量等。
需求分析后很重要的一个步骤是设计选型,包括系统中用到所有元件的选型,而其中嵌入式处理器的选型尤为重要。据不完全统计,目前全世界嵌入式处理器的品种总量已经超过1000种,流行的体系结构有30多个系列。面对如此众多的处理器,设计者需要根据项目需要,综合考虑,选择出一款合适的处理器。在选择的过程中不仅应考虑处理器的运算速度、程序存储器容量、数据存储器容量、能够提供I/O口数量和功耗等问题,也应该考虑到开发工具的相关问题,比如开发工具是否容易获取,开发者对于开发工具的熟悉程度等。
选型结束后,可以进行硬件设计、制作及调试工作,当然这几步不一定一次成功,可能会有一些反复,直到硬件测试完成后,可以进入下一步软件设计工作。结合设计的软件,进行系统测试,系统测试完毕后,并不意味着嵌入式系统的开发过程全部结束。系统交付用户使用后,可能还会发现一些问题,所以之后根据用户的使用反馈,还需要对系统进一步完善。