WinCE BSP工程文件pbcxml分析 - ARM-WinCE的专栏 - CSDNBl...

来源:百度文库 编辑:神马文学网 时间:2024/04/30 13:23:22
作者:ARM-WinCE 
每一个wince6.0 BSP都有一个工程文件,比如MyBSP.pbcxml,里面描述了BSP的信息。下面就来介绍一下BSP的pbcxml文件。

 

文件的大致格式应该是这样的:

<CatalogFile …>

<FileInformation ….>

….

</FileInformation>

<BSP …>

</BSP>

<Item …>

</Item>

<Item …>

</Item>

<Item …>

</Item>

<Item …>

</Item>

</CatalogFile>

 

实际上相当于一个入口,在这里面包含的就是WinCE BSP的所有内容了,里面包含几个部分,下面分别介绍每个部分。

 

1. 项:这里面包含了BSP的基本信息,比如BSP的名字,描述,厂家等。下面是一个模板:

VENDOR:CATALOGFILENAME ">

    Title Name

    BSP Description

    Vendor Name

    WinCE Version

    File Version

 

这里不做过多介绍了,一看就应该明白,下面给个实际BSP中的用到该项描述的例子:

    EP94xx

    EP94xx BSP Catalog Items

    Cirrus Logic

    6.00

    1.0.0

 

2. 项:该项一般在项后面,用来描述当前的BSP中都有哪些组件,或者说有哪些Items。具体模板如下:

    BSP Title

    BSP Description

    Platform Directory

    Cpu:CPU ID

    Item: VENDOR: VARIABLE

    Item: VENDOR: VARIABLE

    …

 

这里需要做一下解释:

    VENDOR厂家名称,比如三星提供的BSP,那么就应该是SAMSUNG。

    BSPDIR指该BSP在”/Platform”文件夹下的路径。

    CPU指该BSP所支持的CPU,比如ARMV4I。

    MODULE指BSP中的各个模块被编译后所生成的dll或者exe的名字,比如audio.dll,那么这里就应该是audio。

    VARIABLE指BSP中和某个模块相关的环境变量。

 

    指BSP的标题

    指BSP的一些描述

    指该BSP在”/Platform”目录下的路径。

    指所支持的CPU,比如ARMV4I。

    指BSP中都包含了哪些模块。

 

 

这里要注意的是,有两种表示方法如下:

Method 1Item: VENDOR: VARIABLE

Method 2Item: VENDOR: MODULE: BSPDIR

 

可以看一下WinCE6.0中Platform目录下的一些微软提供的BSP的pbcxml文件,大多采用第二种方法,我个人更喜欢第一种方法,简单。

 

下面也给个例子:

    EP94xx: ARMV4I

    Cirrus EP94xx BSP for WinCE 6.0

    EP94xx

    Cpu:ARMV4I

    Item: Cirrus Logic: bsp_ep94xx_i2s_audio

    Item: Cirrus Logic: bsp_ep94xx_flash

    Item: Cirrus Logic: bsp_ep94xx_nandflash

    Item: Cirrus Logic: bsp_ep94xx_ethernet

    Item: Cirrus Logic: bsp_ep94xx_serial

    Item: Cirrus Logic: bsp_ep94xx_usb

    Item: Cirrus Logic: bsp_ep94xx_touch

    Item: Cirrus Logic: bsp_ep94xx_rtc

 

 

3. 项:它会在项后面,详细描述项中的每一个模块,也就是描述BSP中的每一个驱动的相关信息。模板如下:

    Driver Title

    Driver Description

    BspSpecific

    Variable

    Device Drivers

    

    Source Code Title

    Source Code Path

    

 

前面我们提到了项中的有两种表示方法,那么实际上和这里的每一个模块的项是对应的,上面的用哪种方法表示,这里也同样要用相同的方法如下:

Method 1 ……

Method 2  ……

 

这里再对一些定义作个解释:

    VENDOR厂家名称,比如三星提供的BSP,那么就应该是SAMSUNG。

    CPU指该BSP所支持的CPU,比如ARMV4I。

    VARIABLE指BSP中和该模块相关的环境变量。

 

    该驱动的标题。

    该驱动的描述。

    对于BSP中的Item来说,这里必须是”BSPSpecific”。

    该驱动用到的环境变量,可以不止一个。

    指在PB中的Catalog Items View中的位置。

    描述该驱动的源代码。

    指向该驱动的源代码的路径。

    描述一个帮助链接链接到帮助页。

 

下面举个例子:

    Audio I2S

    Audio Driver for I2S

    BspSpecific

    BSP_EP94XX_AUDIO

    BSP_EP94XX_I2S_AUDIO

    Device Drivers

    

        $(_WINCEROOT)\PLATFORM\EP94XX\SRC\DRIVERS\WAV

        $(_WINCEROOT)\PLATFORM\EP94XX\SRC\DRIVERS\WAV

    

 

 

上面对WinCE中的BSP的工程文件pbcxml做了个介绍,相信有点描述语言基础,了解一些WinCE知识的看懂绝对没有问题了。很多时候,在向BSP中添加驱动或者删除驱动的时候,我们就可以直接用记事本打开该文件,然后在里面编辑就可以了,这样很方便。