欢迎来到天天文库
浏览记录
ID:34410260
大小:1.11 MB
页数:131页
时间:2019-03-05
《第2章嵌入式系统开发过程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第2章嵌入式系统开发过程2.1嵌入式实时软件开发的特点2.2嵌入式应用软件的开发流程2.3嵌入式实时开发的软硬件资源2.4板级支持包2.5嵌入式开发的可移植性和可重用性2.1嵌入式实时软件开发的特点嵌入式实时软件的开发与传统的软件开发有许多共同点它继承了许多传统软件开发的开发习惯但由于嵌入式实时软件运行于特定的目标应用环境该目标环境针对特定的应用领域所以功能比较专一嵌入式应用软件只完成预期要完成的功能而且出于对系统成本方面的考虑应用系统的CPU存储器通信资源都恰到好处不像通用PC给用户预留许多资源如选择安装扩展功能的软件等这些差异注定了嵌入式应用软件的开发
2、具有其自身的特点1需要集成软硬件开发环境嵌入式应用软件开发要使用交叉开发环境交叉开发环境是指实现编译链接和调试应用程序代码的环境与运行应用程序的环境不同它分散在有通信连接的宿主机与目标机环境之中交叉开发硬件环境包括宿主机和目标机如图2-1所示宿主机(Host)是一台通用计算机可以是PC或工作站它通过串口或网络连接与目标机通信宿主机的软硬件资源比较丰富不但包括功能强大的操作系统如Windows和Linux还有各种各样的开发工具如WindRiver的Tornado集成开发环境微软的VisualC++嵌入式Toolkit开发环境以及GNU的嵌入式开发工具套件等这
3、些辅助开发工具能大大提高软件开发的效率和进度目标机(Target)这个术语常常在嵌入式软件开发期间使用用来区别与嵌入式系统通信的宿主机目标机可以是嵌入式应用软件的实际运行环境也可以是能替代实际环境的仿真系统目标机体积较小集成度高且软硬件资源配置都恰到好处目标机的外围设备丰富多样输入设备有键盘鼠标串口红外口触摸屏等输出设备有显示器串口液晶屏等目标机的硬件资源有限故在目标机上运行的软件可以裁剪也可以配置目标机应用软件需要绑定操作系统一起运行随着宿主机配置的增强可以在宿主机上仿真目标机从而缩短开发的费用和开发周期支持嵌入式交叉开发需要交叉软件开发工具它包括交叉编
4、译器交叉调试器和一些仿真软件等交叉编译器允许应用程序开发者在宿主机上生成能在目标机上运行的代码交叉调试器和软仿真软件用于完成宿主机与目标机应用程序代码的调试2引入了新的任务设计方法嵌入式应用系统以任务为基本的执行单元在系统设计阶段用多个并发的任务代替通用软件的多个模块并定义了应用软件任务间的接口嵌入式系统的设计通常采用DARTS(DesignandAnalysisofReal-TimeSystems)设计方法进行任务的设计DARTS给出了系统任务划分的方法和定义任务间接口的机制3开发完成后需要进行固化和固化测试嵌入式应用程序开发环境可以是PC和工作站但运行
5、的目标环境却千差万别而且应用软件在目标环境下必须储存在非易失性存储器中保证用户用完关机后确保下次的使用所以应用软件在开发完成以后应生成固化版本烧写到目标环境的ROM中运行由于开发调试用的应用软件运行环境包含监控器等调试附加程序而固化的二进制可执行代码不包含这些额外的代码所以为保证固化程序的安全及正确的运行在固化完成后要进行运行测试4软件要求更高开发难度加大绝大多数的嵌入式应用有实时性能的要求要求设计者在软件的需求分析中充分考虑系统的实时性能这些实时性能的体现一部分来源于实时操作系统的实时性能另一部分依赖于应用软件的本身的设计和代码的质量同时嵌入式应用软件对
6、稳定性可靠性抗干扰性等性能的要求都比通用软件的要求更为严格和苛刻与通用计算机的差别1.人机交互界面嵌入式系统和通用计算机之间的最大区别就在于用户交互界面嵌入式系统可能根本就不存在键盘显示器等设备它所完成的事情也可能只是监视网络情况或者传感器的变化情况并按照事先规定好的过程及时完成相应的处理任务2.有限的功能嵌入式系统的功能在设计时已经定制好在开发完成投入使用之后就不再变化系统将反复执行这些预定好的任务而不像通用计算机那样随时可以运行新任务当然使用嵌入式操作系统的嵌入式系统可以添加新的任务删除旧的任务但这样的变化对嵌入式系统而言是关键性变化有可能会对整个系统
7、行为产生影响因而在任务变更后再投入使用之前需要做仔细的验证和测试工作3.时间关键性和稳定性可能要求实时响应具有严格的时序性同时嵌入式系统还要求有非常可靠的稳定性其工作环境可能非常恶劣如高温高压低温潮湿等这就要求在设计时考虑目标系统的工作环境合理选择硬件和保护措施软件稳定也是一个重要特征软件系统需要经过无数次反复的测试达到预先规定的要求才能真正投入使用从组成来看嵌入式系统包括硬件和软件两个部分是两者的紧密结合整个系统可以看成由微处理器内存软件系统输入和输出四个部分组成2.2嵌入式应用软件的开发流程嵌入式应用软件的开发必须将硬件软件人力资源等元素集成起来并进行
8、适当的组合以实现目标应用对功能和性能的需求在嵌入式软件的开发过程中
此文档下载收益归作者所有