预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共16页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

. 精选范本 VxworksBSP开发 板级支持包的介绍 VxWorks映象及启动顺序 VxWorks预内核初始化 BSP的配置 BSP的开发 VxWorks下设备驱动程序概述 板级支持包的介绍 板级支持包简述 在VxWorks系统中,对BSP的简单描述为:介于底层硬件环境和VxWorks之间的一个软件接口,它的主要功能是在系统加电后初始化目标机硬件、初始化操作系统、提供部分硬件的驱动程序。具体功能包括: 初始化。所谓初始化就是指从系统上电复位开始,到VxWorks开始初始化用户应用(即系统执行到usrAppInit函数处)的一段时间内系统所执行的过程。这个过程主要包括三个部分的工作: ·CPU初始化。初始化CPU的内部寄存器。 ·目标机初始化。初始化控制芯片的寄存器,I/O设备的寄存器,为整个软件系统提供底层硬件环境的支持。 ·系统资源初始化。为操作系统及系统的正常运行做准备,进行资源初始化,如空间分配等等。 使VxWorks能够访问硬件驱动程序。这主要是指VxWorks包含必要的设备驱动程序和相关设备的初始化。 在VxWorks系统中,集成了与硬件相关的软件和部分与硬件无关的软件。 板级支持包与VxWorks 从上面的图中,我们可以看到,BSP不是设备驱动程序,因为设备驱动程序可以访问硬件设备,同时,相同设备的驱动程序可以不作修改的从一个环境移植到另外一个环境当中去,而BSP只能在特定的环境下面运行。 简单地说,BSP开发人员要完成两个方面的工作: 完全支持BSP管理设备 通用设备驱动程序的集成工作 BSP的组成 BSP包含的程序是提供VxWorks访问目标机硬件环境的主要接口。BSP主要由下面几类文件组成。 源文件 主要是由C语言编写的代码所组成的文件,也有一小部分由汇编语言编写而成。 头文件 包含针对CPU板的硬件定义以及内存定位定义的文件。 Makefile文件 控制构造所有类型映象的文件 派生文件 由其他文件衍生而成的文件。 BSP的组成文件主要包含在以下四个目录里面: ..\Tornado\target\config\all ..\Tornado\target\config\comps\vxWorks ..\Tornado\target\config\comps\src ..\Tornado\target\config\bspname ..\target\config\all目录下的文件 这个目录下的文件作为VxWorks体系结构产品的一部分交给用户.如果不是特殊需要的话,没有必要修改这些文件。简单的说,config\all下的文件并不是特定BSP的一部分,而是所有BSP的公共部分。该目录下主要包含如下几个文件: bootConfig.c 引导ROM映象的主要初始化和控制文件. bootInit.C bootInit.c包含引导ROM映象第二阶段初始化的代码。该文件定义了romStart()函数,romInit.s中的romInit()函数执行完毕后会跳转到romStart()函数。该函数执行必要的代码压缩和ROM型映象的重定位。 dataSegPad.c 它保证了代码段和数据段不会共享一个MMU. usrCongif.c 包含了VxWorks映象的主要初始化代码。不同于bootInit.c文件,它是非常完整的。 version.c 提供了VxWorks的版本号、构造映象的日期和时间等信息。 configAll.h 设置了所有VxWorks映象的默认设置。在这个文件里定义的变量是一些通用的设置,如果需要的VxWorks映象不同于默认的设置,使用config\bspname目录下的config.h文件中定义的宏来替换这里定义的默认宏。 ..\target\config\bspname目录下的文件 这个子目录包含系统或者硬件相关的BSP文件,主要由下面的一些文件组成。 Readme文件 Readme文件包含了这个BSP的发布记录。它记录了每次发布版本、修订版本和新版本上面所做的工作。 Makefile和depend.bspname文件 Makefile文件控制使用命令行方式构造映象。从VxWorks5.2开始,标准的make工具是GNUmake。BSPmake系统包含了位于target\h\make目录下的make子文件。如果某个相关性文件不存在,make将自动产生一个depend.bspname文件,它可以用来追踪所有模块的相关性。 Config.h文件 Config.h文件包含了所有头文件和CPU板相关的特殊定义。标准的config.h包含下面的内容: BSP版本号和修订版本号 包含configAll.h文件 高速缓冲存