嵌入式系统开发方法.ppt
《嵌入式系统开发方法.ppt》由会员分享,可在线阅读,更多相关《嵌入式系统开发方法.ppt(38页珍藏版)》请在冰豆网上搜索。
![嵌入式系统开发方法.ppt](https://file1.bdocx.com/fileroot1/2022-10/22/535385da-1f03-42d6-8185-38e6a3d63a83/535385da-1f03-42d6-8185-38e6a3d63a831.gif)
单片机与嵌入式系统单片机与嵌入式系统的开发与设计的开发与设计第一部份第一部份开发方法开发方法nn两种开发方法两种开发方法两种开发方法两种开发方法nn开发过程开发过程开发过程开发过程nn系统分析与调试系统分析与调试系统分析与调试系统分析与调试nn系统的建立系统的建立系统的建立系统的建立nn系统调试与总结系统调试与总结系统调试与总结系统调试与总结nn开发注意事项开发注意事项开发注意事项开发注意事项两种开发方法两种开发方法nn一、任务型开发一、任务型开发一、任务型开发一、任务型开发nn一切以完成任务为目的,成者王、败者寇!
功能实一切以完成任务为目的,成者王、败者寇!
功能实一切以完成任务为目的,成者王、败者寇!
功能实一切以完成任务为目的,成者王、败者寇!
功能实现,指标达到,交了仪器和软件就算完成任务。
现,指标达到,交了仪器和软件就算完成任务。
现,指标达到,交了仪器和软件就算完成任务。
现,指标达到,交了仪器和软件就算完成任务。
nn二、过程型开发二、过程型开发二、过程型开发二、过程型开发强调开发过程,强调开发过程,强调开发过程,强调开发过程,一切严格按照科研开发过程进行。
一切严格按照科研开发过程进行。
一切严格按照科研开发过程进行。
一切严格按照科研开发过程进行。
过程充份,文档齐全,证据确凿。
即使开发任务失败也过程充份,文档齐全,证据确凿。
即使开发任务失败也过程充份,文档齐全,证据确凿。
即使开发任务失败也过程充份,文档齐全,证据确凿。
即使开发任务失败也是完成任务!
是完成任务!
是完成任务!
是完成任务!
初期看起来是慢点,但为整个开发体系的建设,公初期看起来是慢点,但为整个开发体系的建设,公初期看起来是慢点,但为整个开发体系的建设,公初期看起来是慢点,但为整个开发体系的建设,公司和团队积淀了不少的内容。
即使开发任务失败,但模司和团队积淀了不少的内容。
即使开发任务失败,但模司和团队积淀了不少的内容。
即使开发任务失败,但模司和团队积淀了不少的内容。
即使开发任务失败,但模块的开发是成功的。
后期的开发会越来越快,模块的建块的开发是成功的。
后期的开发会越来越快,模块的建块的开发是成功的。
后期的开发会越来越快,模块的建块的开发是成功的。
后期的开发会越来越快,模块的建设越来越成熟。
设越来越成熟。
设越来越成熟。
设越来越成熟。
开发过程开发过程过程过程过程过程承担者承担者承担者承担者时间比重时间比重时间比重时间比重1111、系统分析与设计、系统分析与设计、系统分析与设计、系统分析与设计系统分析员系统分析员系统分析员系统分析员40%40%40%40%2222、系统的建立、系统的建立、系统的建立、系统的建立程序员程序员程序员程序员25%25%25%25%3333、调试与测试、调试与测试、调试与测试、调试与测试工程师工程师工程师工程师35%35%35%35%系统分析与设计系统分析与设计11、调研、调研了解任务、要求、当前项目、材料、技术、工了解任务、要求、当前项目、材料、技术、工艺水平!
艺水平!
收集相关资料,按客户要求提出项目建议书收集相关资料,按客户要求提出项目建议书22、系统分析、系统分析分析功能、技术指标等的可行度,设备开发难分析功能、技术指标等的可行度,设备开发难点、技术路线,制定建设任务书点、技术路线,制定建设任务书系统分析与设计系统分析与设计33、系统设计、系统设计撰写初步设计书,分解软硬件任务,撰写初步设计书,分解软硬件任务,分解模块,制定各模块建设任务书,分解模块,制定各模块建设任务书,硬件方框图、电路图、软件流程图、模块间的硬件方框图、电路图、软件流程图、模块间的接口、通信方式及协议!
接口、通信方式及协议!
44、难点研究、难点研究系统的建立系统的建立1111、硬件系统的建立、硬件系统的建立、硬件系统的建立、硬件系统的建立设计设计设计设计PCBPCBPCBPCB版图,进行不同人的交叉检查,提交制版图,进行不同人的交叉检查,提交制版图,进行不同人的交叉检查,提交制版图,进行不同人的交叉检查,提交制作(含检查)报告。
作(含检查)报告。
作(含检查)报告。
作(含检查)报告。
焊接、提交焊接报告。
焊接、提交焊接报告。
焊接、提交焊接报告。
焊接、提交焊接报告。
2222、软件系统的建立、软件系统的建立、软件系统的建立、软件系统的建立资源分配,资源分配,资源分配,资源分配,编写代码源程序、提交程序清单和软件说明。
编写代码源程序、提交程序清单和软件说明。
编写代码源程序、提交程序清单和软件说明。
编写代码源程序、提交程序清单和软件说明。
调试与测试调试与测试1111、硬件模块测试、硬件模块测试、硬件模块测试、硬件模块测试仪器测试、测试软件的生成及测试,提交测试报告仪器测试、测试软件的生成及测试,提交测试报告仪器测试、测试软件的生成及测试,提交测试报告仪器测试、测试软件的生成及测试,提交测试报告(测试结果,含测试环境、测试软件、改进建议)。
(测试结果,含测试环境、测试软件、改进建议)。
(测试结果,含测试环境、测试软件、改进建议)。
(测试结果,含测试环境、测试软件、改进建议)。
保证硬件系统是好的。
提交自检软件、维修手册。
保证硬件系统是好的。
提交自检软件、维修手册。
保证硬件系统是好的。
提交自检软件、维修手册。
保证硬件系统是好的。
提交自检软件、维修手册。
2222、软件模快调试、软件模快调试、软件模快调试、软件模快调试调试软件模快,给出软件模块调试报告(含改进建议)调试软件模快,给出软件模块调试报告(含改进建议)调试软件模快,给出软件模块调试报告(含改进建议)调试软件模快,给出软件模块调试报告(含改进建议)。
3333、系统总体调试、系统总体调试、系统总体调试、系统总体调试总体联调,所能达到的功能、技术指标、提交总体调总体联调,所能达到的功能、技术指标、提交总体调总体联调,所能达到的功能、技术指标、提交总体调总体联调,所能达到的功能、技术指标、提交总体调试报告,使用说明书。
试报告,使用说明书。
试报告,使用说明书。
试报告,使用说明书。
4444、总结、总结、总结、总结所有文件归档,写出系统研制报告。
所有文件归档,写出系统研制报告。
所有文件归档,写出系统研制报告。
所有文件归档,写出系统研制报告。
过程开发注意事项过程开发注意事项nn1111、设计过程是由粗到细的过程、设计过程是由粗到细的过程、设计过程是由粗到细的过程、设计过程是由粗到细的过程nn2222、调试过程是由细到粗的过程、调试过程是由细到粗的过程、调试过程是由细到粗的过程、调试过程是由细到粗的过程nn3333、测试要穷举,分别在典型、极限条件下测试。
、测试要穷举,分别在典型、极限条件下测试。
、测试要穷举,分别在典型、极限条件下测试。
、测试要穷举,分别在典型、极限条件下测试。
nn4444、模块开发是开发的核心,要优化(标准化、兼、模块开发是开发的核心,要优化(标准化、兼、模块开发是开发的核心,要优化(标准化、兼、模块开发是开发的核心,要优化(标准化、兼容性和可扩展性)。
容性和可扩展性)。
容性和可扩展性)。
容性和可扩展性)。
nn5555、文档是成果标志,质量监督的依据,要给文档、文档是成果标志,质量监督的依据,要给文档、文档是成果标志,质量监督的依据,要给文档、文档是成果标志,质量监督的依据,要给文档一定的法律地位。
一定的法律地位。
一定的法律地位。
一定的法律地位。
nn6666、文档是公司、团队的重要财富,是给别人看的,、文档是公司、团队的重要财富,是给别人看的,、文档是公司、团队的重要财富,是给别人看的,、文档是公司、团队的重要财富,是给别人看的,要尽量详细,别人拿去能生产、二次开发。
要尽量详细,别人拿去能生产、二次开发。
要尽量详细,别人拿去能生产、二次开发。
要尽量详细,别人拿去能生产、二次开发。
nn7777、项目复杂程度不一样,过程可合并或细化,过、项目复杂程度不一样,过程可合并或细化,过、项目复杂程度不一样,过程可合并或细化,过、项目复杂程度不一样,过程可合并或细化,过程不是单向进行,而可反复循环。
程不是单向进行,而可反复循环。
程不是单向进行,而可反复循环。
程不是单向进行,而可反复循环。
第二部份设计内容介绍n编程言语与编程环境编程言语与编程环境n功能设计:
结构分析与模块设计完成功能设计后系统功能设计:
结构分析与模块设计完成功能设计后系统即达到即达到“有用有用”的水平的水平n可靠性设计:
抗干扰设计和容错设计完成可靠性设计可靠性设计:
抗干扰设计和容错设计完成可靠性设计后系统即达到后系统即达到“能用能用”的水平的水平n算法设计:
数据结构的优化设计和算法的优化设计完算法设计:
数据结构的优化设计和算法的优化设计完成优化设计后系统即达到成优化设计后系统即达到“好用好用”的水平的水平编程言语与编程环境编程言语编程言语与编程环境编程言语汇编语言:
汇编语言:
n必须对单片机的内部结构和外围电路非常了解尤其必须对单片机的内部结构和外围电路非常了解尤其是对指令系统必须非常熟悉。
对程序开发者的要求是比是对指令系统必须非常熟悉。
对程序开发者的要求是比较高,开发软件是比较辛苦,程序量通常比较大,方方较高,开发软件是比较辛苦,程序量通常比较大,方方面面均需要考虑,一切问题都需要由程序设计者安排。
面面均需要考虑,一切问题都需要由程序设计者安排。
高级语言:
高级语言:
n采用高级语言主要是采用高级语言主要是CC语言编程。
只要对单片机的语言编程。
只要对单片机的内部结构和外围电路基本了解,对指令系统则不必非常内部结构和外围电路基本了解,对指令系统则不必非常熟悉。
其编程比汇编言语轻松很多,细节问题不需要考熟悉。
其编程比汇编言语轻松很多,细节问题不需要考虑,编译软件会替设计者安排好。
虑,编译软件会替设计者安排好。
应用越来越广,使用应用越来越广,使用者越来越多。
者越来越多。
编编程程环环境境基于操作系统的编程基于操作系统的编程n以以“实时多任务操作系统实时多任务操作系统”内核为基础,只需完成相内核为基础,只需完成相关任务的编程,其实时性和可靠性有保障,适用于功能关任务的编程,其实时性和可靠性有保障,适用于功能较复杂的应用系统。
较复杂的应用系统。
基于裸机的编程基于裸机的编程n以空白的单片机芯片为基础,完成全部软件设计,其以空白的单片机芯片为基础,完成全部软件设计,其实时性和可靠性与设计人员的水平密切相关,适用于功实时性和可靠性与设计人员的水平密切相关,适用于功能较简单的中小型应用系统,是电子工程师应该掌握的能较简单的中小型应用系统,是电子工程师应该掌握的基本编程技术。
基本编程技术。
一、功一、功能能设设计计(结构分析与模块设计)(结构分析与模块设计)软件系统结构分析软件系统结构分析程序模块的自主性程序模块的自主性n主程序和若干中断子程序是可以自主运行的程序模主程序和若干中断子程序是可以自主运行的程序模块,而普通子程序是不能自主运行的,可以将普通子程块,而普通子程序是不能自主运行的,可以将普通子程序看作主调程序模块的一部分,因此整个系统程序设计序看作主调程序模块的一部分,因此整个系统程序设计就是完成主程序设计和若干个中断子程序设计的过程。
就是完成主程序设计和若干个中断子程序设计的过程。
程序模块的功能性程序模块的功能性n系统软件通常包含以下模块:
自检模块,初始化模系统软件通常包含以下模块:
自检模块,初始化模块,监控模块,显示输出模块,信息采集模块,数据处块,监控模块,显示输出模块,信息采集模块,数据处理模块,控制决策模块,信号输出模块,通讯模块,时理模块,控制决策模块,信号输出模块,通讯模块,时钟模块等钟模块等系统资源的安排系统资源的安排芯片硬件资源的安排芯片硬件资源的安排n端口引脚,中断资源,定时器端口引脚,中断资源,定时器/计数器,其它功能计数器,其它功能部件如串行口部件如串行口A/DPWMA/DPWM比较器看门狗等。
比较器看门狗等。
RAMRAM资源的