欢迎来到天天文库
浏览记录
ID:34579875
大小:208.50 KB
页数:7页
时间:2019-03-08
《基于嵌入式硬件构件模型的底层软件开发方法的研究》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基于嵌入式硬件构件模型的底层软件构件开发方法研究112蒋银珍王宜怀王加俊摘要为了提高嵌入式系统的硬件和底层软件的可移植性,本文对基于嵌入式硬件构件模型的底层硬件驱动程序(即底层构件)的开发方法进行了研究,给出了硬件构件与软件构件的层次关系图以及底层构件的封装原则,通过实例分别阐述了GPIO构件、功能构件和外设构件的程序编制方法以及移植性问题.关键字构件,驱动程序,软件构件,底层构件,移植性图分类号TP311,18DevelopmentMethodResearchforBottomDriverBasedonEHC112JIANGYin
2、-ZhenWANGYi-HuaiWANGJia-JunAbstractInordertoincreasethetransplantableabilityofthehardwareandbottomsoftware,thispaperstudiesthedevelopmentmethodofthedriver(bottomcomponent)basedonhardwarecomponent,presentsthehierarchybetweenhardwarecomponentandsoftwarecomponent.Thethesi
3、salsointroducesthepackageruleforbottomcomponent,expatiatesonhowtoprogramandtransplantGPIOcomponent、inner-functioncomponentandouter-functioncomponentviaexample.KeywordsComponent,Driver,Softwarecomponent,Bottomcomponent,Transplantableability1前言嵌入式软件复杂度的增长对嵌入式软件开发技术的提高提出了
4、迫切的要求。虽然软件工程在嵌入式领域的发展远远落后于其他领域,但近几年不少学者试图将软件工程中的基于构件的开发思想引入到嵌入式领域,为嵌入式软件开发提供理论支撑。但是,这方面的研究还刚刚起步,有关嵌入式软件设计建模及规范的理论与应用研究将成为嵌入式软件工程的研究热点。嵌入式软件工程的研究目标是建立起一套规则,规范程序的编写,减少工作的重复,提高软件的可移植性和可维护性,减少系统开发时间。目前,人们研究的嵌入式软件开发方法大多建立在嵌入式操作系统基础上,而对于很多专用领域的嵌入式系统而言,由于Flash容量较小,结构和功能相对比较单一
5、,无需操作系统的支持,因此与硬件打交道的底层驱动程序往往需要设计人员自己编写。目前有关底层驱动程序编写规范的研究很少。对于嵌入式系统工程师而言,开发出稳定、完备的驱动程序不仅需要有丰富的开发经验和熟练的开发技能,更需要一个具有指导作用的驱动程序开发模型。为了解决这个问题,本文在基于嵌入式硬件和软件协同设计思想的基础上,将与硬件密切相关的底层驱动程序抽象并封装起来,定义为底层构件,努力做到:对于以单MCU为核心的嵌入式系统而言,当MCU的型号发生改变或系统外围设备(如键盘、LCD等)接口发生改变时,相应的驱动程序要改动很小甚至无需修改
6、,而上层调用程序不必作任何改动,从而提高了系统软件的可重用性和可移植性。2嵌入式系统硬件设备驱动程序的特点和要求众所周知,嵌入式系统是软件和硬件的综合体,是以应用为中心,以计算机技术为基础,软件、硬件可裁剪,并能适应应用系统对功能、可靠性、成本、体积和功耗等方面的严格要国家自然科学基金(60871086)资助SupportedbyNationalNaturalScienceFoundationofChina(60871086)1.苏州大学计算机科学与技术学院,苏州2150062.苏州大学电子信息学院,苏州2150211.Comput
7、erScienceandTechnologySchoolofSoochowUniversity,Suzhou2150062.ElectronicsandInformationSchoolofSoochowUniversity,Suzhou215021求的专用计算机系统。嵌入式系统与硬件紧密相关,是软件与硬件的综合体,硬件设计和软件设计相辅相成。嵌入式系统中的驱动程序是直接工作在各种硬件设备上的软件,是硬件和高层软件之间的桥梁。正是通过驱动程序,各种硬件设备才能正常运行,达到既定的工作效果。驱动程序的开发在嵌入式系统的开发中具有举足轻
8、重的地位。驱动程序的好坏直接关系着整个嵌入式系统的稳定性和可靠性。然而,开发出完备、稳定的驱动程序并非易事。长期以来,开发人员在编写驱动程序时缺少软件工程思想的支撑,软、硬件设计过程孤立,造成与硬件密切相关的底层软件缺乏通用性,导致可
此文档下载收益归作者所有