- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七讲 板级支持包技术 嵌入式软件设计开发
BSP和BIOS区别 BIOS主要是负责在电脑开启时检测、初始化系统设备(设置栈指针,中断分配,内存初始化..)、装入操作系统并调度操作系统向硬件发出的指令。 BSP是和操作系统绑在一起运行,尽管BSP的开始部分和BIOS所做的工作类似,但是 BSP还包含和系统有关的基本驱动 BIOS程序是用户不能更改,编译编程的,只能对参数进行修改设置,但是程序员还可以编程修改BSP,在BSP中任意添加一些和系统无关的驱动或程序,甚至可以把上层开发的统统放到BSP中 不同系统中的BSP 一个嵌入式操作系统针对不同的CPU,会有不同的BSP 即使同一种CPU,由于外设的一点差别BSP相应的部分也不一样 BSP的特点与功能 硬件相关性 因为嵌入式实时系统的硬件环境具有应用相关性,所以,作为高层软件与硬件之间的接口,BSP必须为操作系统提供操作和控制具体硬件的方法。 操作系统相关性 不同的操作系统具有各自的软件层次结构,?因此,不同的操作系统具有特定的硬件接口形式 设计一个完整的BSP需要完成两部分工作 设计初始化过程,完成嵌入式系统的初始化; 设计硬件相关的设备驱动,完成操作系统及应用程序对具体硬件的操作。 BSP开发的前提和步骤 开发的前提 熟悉硬件方面:使用CPU等 熟悉工具方面:电表,示波器,逻辑分析仪,硬件仿真器,仿真调试环境等 语言方面:汇编语言,C语言 BSP开发的一般步骤 硬件主板研制,测试 操作系统的选定,BSP编程 上层应用程序的开发 设计实现BSP的一般方法 BSP的开发需要具备一定的硬件知识 要求掌握操作系统所定义的BSP接口 两种快捷方法 以经典BSP为参考 使用操作系统提供的BSP模板 设计实现BSP两部分功能时应采用以下两种不同方法 “自底向上”地实现BSP中的初始化操作 “自顶向下”地设计硬件相关的驱动程序 编写BSP函数 BSP对板卡中每个芯片的操作都通过多个函数来完成 如果应用程序对板卡的操作都直接通过调用BSP中的函数来完成,那将很不利于源程序的调试 ,并降低了程序的可移植性 把能完成某个特定功能的函数封装在一个库文件中,并放在应用程序与BSP之间 对每个芯片来说,都应当有初始化函数和状态读取函数 初始化过程 片级初始化 主要完成CPU的初始化 设置CPU的核心寄存器和控制寄存器 CPU核心工作模式 CPU的局部总线模式等 片级初始化把CPU从上电时的缺省状态逐步设置成为系统所要求的工作状态 这是一个纯硬件的初始化过程 初始化过程 (续) 板级初始化 完成CPU以外的其他硬件设备的初始化 同时还要设置某些软件的数据结构和参数,为随后的系统级初始化和应用程序的运行建立硬件和软件环境 这是一个同时包含软硬件两部分在内的初始化过程 初始化过程 (续) 系统级初始化 这是一个以软件初始化为主的过程,主要进行操作系统初始化 BSP将控制转交给操作系统,由操作系统进行余下的初始化操作: 包括加载和初始化与硬件无关的设备驱动程序 建立系统内存区 加载并初始化其他系统软件模块(如网络系统、文件系统等) 最后,操作系统创建应用程序环境并将控制转交给应用程序的入口 系统级初始化不是BSP的工作。但是,系统级初始化成功与否的关键在于BSP的前两个初始化过程中所进行的软件和硬件的正确设置,而且系统级初始化也是由BSP发起的。因此,设计BSP中初始化功能的重点主要集中在前两个环节。 嵌入式系统的引导技术 几种bootloader的比较 sh-Boot sh-Boot是SourceForge上Linux SH计划的一部分。比较简单,不提供监控能力。可以从/库中获得sh-boot的源码。 嵌入式系统的引导技术 几种bootloader的比较 U-Boot Das U-Boot-universal bootloader被认为是功能最多、最具弹性以及开发最积极的开源bootloader。目前由DEX Software Engineering的Wolfgang Denk开发维护,并受到很多开发者的支持。U-boot具备通过TFTP、从IDE或者SCSI磁盘以及从DOC启动的能力,还提供JFFS2的只读支持。U-Boot套件可以在/projects/u-boot获得。相关文章/和/。 嵌入式系统的设备驱动程序 驱动程序的重要性 系统中的每一个设备的每一个功能都需要驱动程序。 驱动程序为上层提供各种接口,上层调用驱动程序,不用理会设备的内部操作。 驱动程序的编写方式,通常能使开发人员不必了解其内部构造而直接使用。 驱动程序除了实现设备的基本功能,还应该有完备的错误处理函数。 驱动程序会遵循通用接口。组织时可采用面向对象的方法,一个设备就是一个对象,而其内部有
您可能关注的文档
- 第七章_VBA 数据库技术与应用 ACESS教学课件.ppt
- 第七章__目标职业与专业能力.ppt
- 第七章 鲁棒控制与鲁棒控制器设计 《控制系统仿真与CAD》精品课课件.ppt
- 第七章_生产营运管理 企业管理教学课件.ppt
- 第七章_价格策略(公选).ppt
- 第七章_计算机在材料检测中的应用 计算机在材料科学中的应用 教学课件.ppt
- 第七章_公用工程设计 生产设施与规划课件.ppt
- 第七章 企业所得税会计 税务会计 教学课件.ppt
- 第七章 配送实务 物流管理.ppt
- 第七章. 水溶液的热力学 冶金物理化学课件.ppt
- 关于请求易地扶贫搬迁的申请大全.docx
- 国防安全演讲稿.docx
- 教科版二年级上册科学全册新质教学课件(配2025年秋改版教材).pptx
- 部编人教版二年级上册道德与法治全册新质教学课件(配2025年秋改版教材).pptx
- 2023年三亚市公务员考试行测真题及参考答案详解一套.docx
- 中关村实验室清华大学国防科大2025网络空间测绘技术白皮书139页.pdf
- 汽车电子行业系列报告之激光雷达篇激光雷达星辰大海国产供应链初长成-22011129页.pdf
- 非公路轮胎行业深度报告OTR轮胎需求盈利双高轮胎蓝海市场-23031718页.pdf
- 电子行业深度报告自动驾驶加速驶来车载激光雷达开启百亿蓝海市场-22011734页.pdf
- 电子行业佰维存储股份有限公司投资价值研究报告专注存储蓝海一体化解决方案龙头-22121292页.pdf
最近下载
- 阿托品试验课件.pdf VIP
- 中医医疗技术相关性感染预防与控制指南试行.pdf
- 海天注塑机天隆二代.pdf VIP
- 个人简历模板应届生求职通用简历WORD模板(内容完整).pdf VIP
- 区块链介绍课件.ppt VIP
- 风力发电叶片的主要原材料.docx VIP
- 《集成电路封装测试厂设计规范+GB+51122-2015》详细解读.pdf
- 体例格式12:工学一体化课程《小型网络安装与调试》任务2教学单元6教学单元活动方案.docx VIP
- 体例格式6:工学一体化课程《小型网络安装与调试》任务2学习任务分析表.docx VIP
- 体例格式9:工学一体化课程《小型网络安装与调试》任务2学习任务工作页.pdf VIP
文档评论(0)