工程文件说明

  (1) (1)REG文件 Windows CE .NET编译过程中使用的REG文件和其他Windows系统上的几乎一样。主要的区别在于REG version marker 从文件头上被删除了,这样做的理由是防止将默认的REG 文件直接整合到定制的平台中。因为如果REG version marker,保留的话,双击REG 文件的图标将直接把默认的REG 文件直接整合到定制的平台中,而不是编辑这个文件。 下面是注册表文件的内容样例,键被用括弧括起来,其下有子键并且已经被赋值,还有数据类型和默认值。 下面是注册表文件的内容样例,键被用括弧括起来,其下有子键并且已经被赋值,还有数据类型和默认值。 ; StrataFlash block driver. [HKEY_LOCAL_MACHINE/Drivers/BuiltIn/StrataFMD] "MemBase"=dword:b8380000 "MemLen"=dword:01f80000 ; PCMCIA Driver [HKEY_LOCAL_MACHINE/Drivers/BuiltIn/PCMCIA] "Dll"="PCMCIA.dll" "Order"=dword:0 "IClass"=multi_sz:"{6BEAB08A-8914-42fd-B33F-61968B9AAB32}=PCMCIA Card Services" 以上是节选自平台的注册表文件内容。在这段代码中定义了两种设备的驱动信息:Flash和PCMCIA设备驱动。 在Flash的键下是MemBase 和MemLen 子键。MemBas e代表Flash 的物理起始地址b8380000,MemLen 定义了Flash 的容量,01f80000 也就是32MB。PCMCIA 驱动中,驱动程 序位于PCMCIA.dll的动态链接库中,并且定义了代表该设备的ICLASS 和GUID。 (2) BIB文件 定义OS运行时映像包含哪些模块和文件。Makefile文件使用BIB文件决定如何将这些模块加载至目标设备的存储器中。 ROMIMAGE 使用Binary Image Builder(BIB)文件来配置ROM 文件系统。BIB文件是文本格式的文件,其中使用了不同的关键词来定义不同的section。 以关键词MODULES 开头的是模块section,其中列出了XIP 的可执行文件。 以关键词FILE开头的是其他需要被加入镜像的文件section。这些文件包括bitmaps、datafile和HTML pages。同时也可以描述非XIP 的可执行模块。在FILE 中罗列的文件,默认是被压缩的,以减少空间占用。 下面是对BIB 文件结构的描述: 是将在ROM 文件系统也就是/Windows 下将出现的文件名。 指在开发环境中这些文件的路径。 一般为“NK”。 可以使用表格1中所列的值。 表格 1 flag的值及其说明 flags 功能 C Compressed 加密的(文件section 默认加密节省空间) U Uncompressed未加密(modules section 默认) R 只加密资源 H 把文件隐藏 S 系统文件 BIB 文件中还有两个section,它们一般出现在Config.bib 文件中。它们都是: memory section,它定义了目标系统的内存分布。它使用如下的格式标记: 可以使用表格2中的值: 表格 2 memory section的TYPE描述 值 功能 RAM 此项描述可用的RAM区,RAM区用来运行进程和文件系统。这个RAM区必 须是连续的。 RAMIMAGE 此项描述的区域将被视作ROM。 RESERVED 此项范围内的内存区域是被保留的。这个区域的内存可能被用来当作video frame buffer 或者direct memory access(DMA) buffer。 (3) DIRS文件 举个例子吧(如下:) DIRS=puppet / “/”表示增加此项,提示编译pupet目录 又如:keybd键盘驱动中的dirs DIRS= / kbdcommon / matrix_0409 / pddlist / kbds3c2410jpn1 / kbds3c2410jpn2 / kbds3c2410kor / kbds3c2410us / (4) SOURCE文件 如背光驱动source文件 !if "$(BSP_NOBACKLIGHT)" == "1" SKIPBUILD=1 !endif SYNCHRONIZE_DRAIN=1 RELEASETYPE=PLATFORM TARGETNAME=backlight DEFFILE=backlight.def TARGETTYPE=DYNLINK DLLENTRY=BackLight_DllEntry TARGETLIBS= / $(_COMMONSDKROOT)/lib/$(_CPUINDPATH)/coredll.lib / SOURCELIBS= SOURCES= backLight.c 说明: Targetname是要生成的动态库的名字。 Targettype表明要生成的驱动是的动态库(dynlink)还是lib Dllentry=BackLight_DllEntry表示Dll的入口函数是BackLight_DllEntry Defile指定def文件时backlight.def SOURCES =(请在这写上你所有源文件的名字,它们将会被编译) Targetlibs和sourcelibs表示定需要与哪些动态库链接。Targetlibs下包含的静态库是为当前目录下源文件提供服务的,即.cpp文件代码会调用此库,sourcelibs中的库是当前.cpp文件实现的调用者。 WinCEOEM=1,用在当前目录的工程需要使用public,目录下的头文件后从public目录下导入动态链接库文件。 (5) DEF文件 导出流接口驱动的文件名。(如背光驱动的def) LIBRARY backlight EXPORTS BAK_Init BAK_Deinit BAK_Open BAK_Close BAK_PowerDown BAK_PowerUp BAK_IOControl (6) MAKEFILE文件 makefile关系到了整个工程的编译规则。一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令。 其描述了多个文件中的依赖关系,以及生成最终可执行文件或库文件所需的信息。如下例为背光驱动makefile文件(不用修改) !INCLUDE $(_MAKEENVROOT)/makefile.def (7) .bat文件 被称为批处理文件。下面是s3c2440中的bat文件(不全) @REM @REM Copyright (c) Microsoft Corporation. All rights reserved. @REM Use of this source code is subject to the terms of the Microsoft end-user @REM If you did not accept the terms of the EULA, you are not authorized to use set WINCEREL=1 set BSP_NOPCIBUS=1 @REM keyboard is confilct with gpio buttons driver set BSP_NOKEYBD= set BSP_NOMOUSE=BSP_NOKEYBD set BSP_NOCS8900=1 set BSP_NODM9000= @REM default disabled set BSP_NOI2C= set BSP_KITL=NONE rem set BSP_KITL=SERIAL_UART0 rem set BSP_KITL=SERIAL_UART1 rem set BSP_KITL=USBSERIAL rem set BSP_KITL=ETHERNET @REM - To support SD card set SYSGEN_SDBUS=1 说明: rem表示此命令后的字符为解释行(注释),不执行,只是给自己今后参考用的(相当于程序中的注释)。 @ 不是一个命令, 而是DOS 批处理的一个特殊标记符, 仅用于屏蔽命令行回显.。 其他在网上搜bat文件的写法即可
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值