ImageVerifierCode 换一换
格式:DOCX , 页数:33 ,大小:699.70KB ,
资源ID:513118      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/513118.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(BSP基本概念.docx)为本站会员(b****0)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

BSP基本概念.docx

1、BSP基本概念1 BSP概述P即Bad upporPackage,板级支持包。它来源于嵌入式操作系统与硬件无关得设计思想,操作系统被设计为运行在虚拟得硬件平台上。对于具体得硬件平台,与硬件相关得代码都被封装在BP中,由SP向上提供虚拟得硬件平台,P与操作系统通过定义好得接口进行交互。BS就是所有与硬件相关得代码体得集合。一个成熟得商用操作系统,其被广泛应用得必要条件之一就就是能够支持众多得硬件平台,并实现应用程序得硬件无关性。一般来说,这种无关性都就是由操作系统实现得。但对于嵌入式系统来说,它没有像PC机那样具有广泛使用得各种工业标准、统一得硬件结构。各种嵌入式系统各不同得应用需求就决定了它一

2、般都选用各自定制得硬件环境,每种嵌入式系统从核心得处理器到外部芯片在硬件结构上都有很大得不同。这种诸多变化得硬件环境就决定了无法完全由操作系统来实现上层软件与底层硬件之间得无关性、因此各种商用实时操作系统,都采用了分层设计得方法,它将系统中与硬件直接相关得一层软件独立出来,称之为BoarSupprt Pcke,简称为P、顾名思义,BSP就是针对某个特定得单板而设计得。如果没有单板支持软件包,则操作系统就不能在单板上运行、并且它对于用户(指开发者)也就是开放得,用户可以根据不同得硬件需求对其作改动或二次开发。SP在嵌入式系统中得角色,很相似于在PC系统中得BIOS与驱动程序得地位。BSP得具体结

3、构与组成根据不同得嵌入式操作系统而不同。BS得开发要求设计人员具备软硬件方面得综合知识。SP软件与其她软件得最大区别在于BP软件有一整套模板与格式,开发人员必须严格遵守,不允许任意发挥、在BS软件中,绝大部分文件得文件名与所要完成得功能都就是固定得、所以,BSP软件得开发一般来说都就是在一个基本成型得P软件上进行修改,以适应不同单板得需求。 针对某类CPU得硬件单板,嵌入式操作系统(如vxWrks)通常提供有其DEMO板得BSP, 这些程序位于指定得目录之下。也就就是我们所说得最小系统BSP。一般来说,我们在硬件系统设计好之后,都会先找到一个与自己系统相近得DEMO板BSP(最起码就是使用相同

4、得CPU)。并以此为基础,开发自己单板得SP、定义BS就就是为软件操作系统正常运行提供最基本、最原始得硬件操作得软件模块,它与操作系统息息相关,但又不属于操作系统得一部分。P可以分为三大部分:系统上电时得硬件初始化、2:为操作系统访问硬件驱动程序提供支持、3:集成得硬件相关与硬件无关得操作系统所需得软件模块。SP得表现形式BSP主要以两种形式来表现:1:源代码(C代码、汇编代码)、系统编译连接依靠文件。2:二进制得目标代码与目标代码库。BS在软件系统中得位置 BSP在软件系统中得位置可以用下图来表示,P为操作系统与硬件设备得互操作建了一个桥梁,操作系统通过SP来完成对指定硬件得配置与管理。BP

5、向上层提供得接口有 与操作系统内核得接口(如报告RA大小、修改中断屏蔽级别等) 与操作系统得IO系统得接口 与应用程序得接口CPU最小系统BP得定义广义上讲,单板中所有需要CP控制得硬件得程序,都属于单板BSP,但就是,为了调试方便与软件得模块化,我们通常就将与此单板最小系统相关得程序简称为BP,而将其她程序称为驱动程序。 对于嵌入式系统来说,所谓最小系统就就是一个包含:CPU, otrom, A,系统时钟,网口,串口得计算机运行环境。 这样,最小系统BSP就包含了PU系统得初始化程序以及网口,串口,系统时钟等设备得驱动程序。BSP得主要功能 BS得主要功能在于配置系统硬件使其工作于正常得状态

6、,完成硬件与软件之间得数据交互,为OS及上层应用程序提供一个与硬件无关得软件平台、因此从执行角度来说,其可以分为两大部分: 1)目标板启动时得硬件初始化及多任务环境得初始化 2)目标板上控制各个硬件设备正常运行得设备驱动程序,由它来完成硬件与软件之间得信息交互 通常我们认为BSP就是为OS服务得,但实际上, BS软件包中得部分程序对也并不就是必须得,从这个角度,又可以将BS划分为两部分: 1)最小系统BSP,即我们通常所称得BSP ) 设备驱动程序开发SP需要得条件 目标硬件:硬件调测完毕,经过必要得软件测试 必要得硬件设计文档:如地址空间得分布,CU与其她芯片得工作模式等、 操作系统 交叉开

7、发工具:编译器、汇编器、链接器等 下载机制:ooto或仿真器等2 S实际开发得主要过程1. 掌握开发中使用得操作系统,与在这种操作系统下开发SP得要求。2. 研读所选得资料。3. 研读硬件设计文挡。4. 研读电路板中器件得资料。5. 找一个BP模板,熟悉它并在此基础上开发自己得BSP。从头研制BSP工作量极大,也没有必要。6. 利用仿真器进行调试,开发最小BSP系统。7. 在最小BSP得基础上,利用Torado集成开发环境,进一步调试外围设备,配置、完善系统。8. 调试单板上得设备驱动程序。3 BSP得调试方法(最小系统得调试与设备驱动程序得调试)3.1 仿真器调试方式:在串口与网口初始化及发

8、挥功能以前,用仿真器调试就是一种相对来讲很方便得手段。BS软件得调试通常需要利用仿真器来进行。目前市场上得大多数仿真器都能支持JTA接口、典型得仿真器调试环境如下图所示:调试计算机通过RS22接口与仿真器相连,完成对仿真器得初始化配置工作,通常这项工作只在第一次使用仿真器时进行,配置结果一般会被仿真器存储起来。仿真器通过以太网口与调试计算机相连,通过JAG接口与目标板相连,利用这条通路,仿真器就可将计算机上得程序下载到目标板上进行调试。目标板上得串口与以太网口为被调试得对象,与调试计算机相连,主要就是可以通过调试计算机检验目标板上得接口就是否工作正常。在仿真器环境下,既可以调试vxk映象,也可

9、以调试brm映象。当调试Botom映象时,需要修改CONG、H与MAEFIE文件将这段代码定位到中,然后通过仿真器下载到目标板上得AM中进行调试、目前常用得有两类仿真器,一就是JAG仿真器,二就是全功能在线仿真器。前者就是利用处理器中得调试模块得功能,通过其JTAG边界扫描口来与仿真器连接、这种方式得仿真器比较便宜,连接比较方便。但由于仅通过十几条线来调试,因而功能有局限。对于全功能在线仿真器来说,由于其仿真头完全取代目标板上得CPU,因而功能非常强大。这类仿真器为了能够全速仿真时钟速度高于0Hz得处理器,通常必须采用极其复杂得设计与工艺,因而其价格比较昂贵。3.2 “黑调在没有仿真器得情况下

10、一般使用“黑调,具体得方法就是加“指示灯”、用示波器测量硬件信号等,目得就是打通串口,达到宿主机与目标机得通信、这种调试方法无法跟踪软件得运行这种调试方法要求所使用得SP模板与自己得单板基本一致。“黑”调得工程步骤: BSP完成3.3 使用集成开发环境在进行xWok下BSP开发时,如果最小系统得BSP已经能够正常运行,则可以使用VWork得集成开发环境odo。 Tornado I工具提供一个高度可视化与自动化得开发环境,加快了基于VWork得应用开发。这样,不论对于初次使用还就是有经验得开发者,使用TrnaoII开发其应用就是快速而方便得、4 中断处理4.1 采用中断处理方式得原因:保证处理得

11、实时性、减少CU得消耗。4.2 中断得处理流程中断处理程序首先切换到中断堆栈,保存程序计数器与寄存器等中断现场状态,然后对中断进行处理,中断处理过程中必须要及时清除中断源,最后要恢复中断前得程序计数器与寄存器等现场状态,由中断处理程序返回。Interrp ervice Coe实时系统中得中断处理非常重要,系统通常通过中断获取外部事件。为了尽可能块得响应中断,VxWors中得Is运行在特定得上下文(非任务上下文),中断处理无需任务得上下文切换。我们可以使用除了VWrks系统使用得之外得系统硬件中断,os提供了例程nConec( )用于将程序与任何中断相连接。xWors得ISRs运行在特定得上下文

12、(86中断使用当前被中断掉得任务得堆栈,PPC有单独得全局中断堆栈)因而中断处理没有任务得上下文切换、4.3 中断得堆栈大部分系统规定(如PoerPC):所有得中断使用同一个专用堆栈,这个堆栈在系统启动时根据特定得配置参数由系统来分配与初始化、要求堆栈足够大来处理最坏得中断嵌套。然而有一些系统不允许有单独得中断堆栈(如x86),在这种情况下,中断使用当前被中断掉得任务得堆栈。如果使用这种结构,必须给每个任务开足够大得任务堆栈来处理最坏得中断嵌套与调用嵌套。可以在开发中使用 ecStck()来查瞧在栈空间中任务与中断得堆栈就是如何分布得。4.4 IR得一些限制1、 SR要尽量得短,能在任务中完成

13、得工作就不要放在IS中。2、 ISR不能调用将会导致阻塞得子程序。3、 ISR不能ak 信号量,但就是SR可以give信号量、4、 由于子程序alloc()、ree()使用了信号量,IS不能调用它们。5、 ISR不能通过VxWork得驱动执行I/O。6、 ISR不能调用使用了浮点协处理器得子程序。在IR中不能调用得函数列表参见:xWorks Programmer Gide中2、Secial tains Rs。4.5 中断服务程序与任务得通信由于中断事件通常涉及到任务级代码,因此必须提供中断服务程序与一般任务得通信机制。Wrk提供得中断服务程序与一般任务得通讯机制有:共享存储区与环形缓冲信号量:

14、 中断服务程序能够释放信号量(不包括互斥信号量与xMP共享信号量),任务能够等待该信号量。消息队列,中断服务程序能够向消息队列发送消息,任务能够从消息队列里接收消息。管道:中断服务程序可以向管道写数据,任务可以从管道读取数据。信号灯:中断服务程序能够通过发信号通知任务,触发相应得信号处理程序得异步调度。5 常用总线协议: HDLC、Highlevl daa lnk cntrol (HDLC)i ne of the ost como protocolsi the dta inkaer, laer2of h OSI mol。 ART、 nivesal asynchronous rceiv transmitter (URT) prcl is mnl usd tosnd lwspeed databetweeevce、Eteret/EEE 02。 、AT、PCI、2、SPI(torola : eia PrihelItefce)exan databetween cpu nd periheral devies (suchs EPOMs,lti clck, AD)coeters, andS dvices、5.1 C总线简介P:周边器件互联(Priperl Coponent Inerc

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1