嵌入式系统试验之Windows CE 平台的构建与配置.docx
《嵌入式系统试验之Windows CE 平台的构建与配置.docx》由会员分享,可在线阅读,更多相关《嵌入式系统试验之Windows CE 平台的构建与配置.docx(13页珍藏版)》请在冰点文库上搜索。
![嵌入式系统试验之Windows CE 平台的构建与配置.docx](https://file1.bingdoc.com/fileroot1/2023-4/29/e4b4a49a-60e3-472d-8360-b3d8b391eeb3/e4b4a49a-60e3-472d-8360-b3d8b391eeb31.gif)
嵌入式系统试验之WindowsCE平台的构建与配置
学院:
计算机与软件学院专业:
计算机科学与技术
课程:
嵌入式系统姓名:
XXX学号:
实验一WindowsCE平台的构建与配置
[实验目的]
1、掌握WindowsCE内核的配置、编译方法;
2、掌握构建一个适合特定开发平台的WindowsCE系统方法;
3、熟悉PlatformBuilder开发工具使用方法。
[实验仪器]
1、装有PlatformBuilder开发环境的PC机一台
2、XSBase270实验开发平台一套
[实验原理]
1、WindowsCE操作系统简介
MicrosoftWindowsCE是一个开放的、可裁剪的、32位的实时嵌入式窗口操作系统。
和其他桌面窗口操作系统(WindowsXP/2000)相比,它具有可靠性好、实时性高、内核体积小等特点,适用于各种嵌入系统和产品。
它拥有多线程、多任务、确定性的实时、完全抢先式优先级的操作系统环境,专门面向只有有限资源的嵌入式硬件系统。
同时,开发人员可以根据特定硬件系统对WindowsCE操作系统进行裁剪、定制,所以目前WindowsCE被广泛用于各种嵌入式智能设备的开发,是当今应用最多、增长最快的嵌入式操作系统。
WindowsCE被设计成为一种高度模块化的操作系统,每一模块都提供特定的功能,这些模块中的一部分被划分成组件,系统设计者可以根据设备的性质只选择那些必要的模块或模块中的组件包含进操作系统映像,从而使WindowsCE变得非常紧凑(只占不到200KB的RAM),因此只占用了运行设备所需的最小的ROM、RAM以及其它硬件资源。
WindowsCE被分成不同的模块,其中最主要的模块有内核模块(Kernel)、对象存储模块、图形窗口事件子系统(GWES)模块以及通信(Communication)模块。
另外WindowsCE还包含一些附加的可选择模块,这些模块可支持的任务有管理可安装设备驱动程序、支持COM等。
一个最小的WindowsCE系统至少由内核和文件系统模块组成。
1.1内核模块
内核模块是WindowsCE操作系统的核心,它为任何基于WindowsCE的设备提供处理器调度、内存管理、异常处理以及系统内通信等系统功能,并为应用程序使用这些核心功能提供内核服务。
WindowsCE的内核模块通过CoreDLL模块表示。
所有的操作系统定制设计都必须包含这个模块,但并不是这个模块的所有组件都必需的,有一些内核组件是可选的。
1.2对象存储
对象存储是WindowsCE的默认文件系统,它相当于WindowsCE设备上的硬盘。
对存储是由共享一个内核堆的文件系统、系统数据库和系统注册表组成,即使在没有系统主电源时,对象存储也能维持应用程序及相关数据不会丢失。
对象存储可将用户数据和应用程序数据存入文件或注册器。
在操作系统创建进程(该进程中只包括那些必需选项)的过程中,对于这些不同的对象存储组件,可以选取,也可以忽略。
1.3图形窗口和事件系统模块
图形窗口和事件系统模块(GWES)包含大部分的核心WindowsCE功能,它集成了图形设备接口(GDI)、窗口管理器和事件管理器。
GWES模块时WindowsCE操作系统高度组件化的部分,它分别由USER和GDI两部分组成,USER用来处理消息、事件及鼠标和键盘等用户输入,而GDI用于处理图形的屏幕和打印输出等。
GWES是用户、应用程序和操作系统之间的图形用户接口。
GWES通过处理键盘、鼠标动作与用户交互,并选择传送到应用程序和操作系统的信息。
GWES通过创建并管理在显示设备和打印机上显示的窗口、图形以及文本来处理输出。
GWES的中心是窗口。
所有应用程序都通过窗口接收来自操作系统的消息,即使那些为缺少图形显示的设备创建的应用程序也是如此。
GWES提供控制器、菜单、对话框以及图形显示的设备资源,还提供GDI以控制文本与图形显示。
1.4通信模块
通信模块为基于WindowsCE的设备提供有线或无线通信能力,使WindowsCE设备能够与其他设备或计算机进行连接与通信,通信组件提供对下列通信硬件和数据协议的支持:
·串行I/O支持
·远程访问服务(RAS)
·传输控制协议/Internet协议(TCP/IP)
·局域网(LAN)
·电话技术API(TAPI)
·WinCE的无线服务可选组件
除上述主要模块之外,还可使用其它的操作系统模块。
这些模块与组件主要有:
·设备管理器和设备驱动程序
·多媒体(声音)支持模块
·COM支持模块
·WinCE外壳模块
WinCE提供的每一模块或组件都支持一组可用的相关API函数。
2PlatformBuilder开发工具介绍
PlatformBuilder(PB)是微软提供给WindowsCE开发人员进行基于WindowsCE平台下嵌入式操作系统定制的集成开发环境。
它提供了所有进行设计、创建、编译、测试和调试WindowsCE操作系统平台的工具。
它运行在桌面Windows下,开发人员可以通过交互式的环境来设计和定制内核、选择系统特性,然后进行编译和调试。
该工具能够根据用户的需求,选择构建具有不同内核功能的CE系统。
同时,它也是一个集成的编译环境,可以为所有CE支持的CPU目标代码编译C/C++程序。
一旦成功地编译了一个CE系统,就会得到一个名为nk.bin的映像文件。
将该文件下载到目标板中,就能够运行CE了。
PlatformBuilder提供了开发人员快速建立基于WindowsCE嵌入式系统所需的各种工具。
PlatformBuilder的集成开发环境(IDE)允许开发人员配置、建立并调试能够借助Windows和Web强大功能为嵌入式系统带来灵活性与可靠性的新一代高度模块化
计方案。
PlatformBuilder提供的主要特性包括:
●平台开发向导(PlatformWizard)和BSP开发向导:
开发向导用于引导开发人员区创建一个简单的系统平台或BSP(板级支持软件包),然后再根据要求进一步修改。
开发向导提高了平台和BSP创建效率;
●特性目录(Catalog):
操作系统可选特性均在特性目录(Catalog)中列出,开发人员可以选择相应的特性来定制操作系统;
●导出向导(ExportWizard)。
可以向其他PlatformBuilder用户导出自定义的目录(Catalog)特性;
●导出SDK向导(ExportSDKWizard):
使用户可以导出一个自定义的软件开发工具包
(SDK),可以将客户定制的SDK导出到特定的开发环境中(如EVC)。
●远程工具:
可以执行同基于WindowsCE的目标设备有关的各种调试任务和信息收集任务;
●仿真器(Emulator):
通过硬件仿真加速和简化了系统的开发,使用户可以在开发工作站上对平台和应用程序进行调试,大大简化了系统的开发流程,缩短了开发时间。
●应用程序调试器:
可以在自定义的操作系统映像上对应用程序进行调试;
●内核调试器:
可以对自定义的操作系统映像进行调试,并且向用户提供有关映像性能的信息;
●驱动测试工具包(WindowsCE.netTestKit):
系统为驱动程序开发提供了基本的测试工具集;
●基础配置:
为各种流行的设备类别预置的可操作系统基础平台,为自定义操作系统的创建提供了一个起点
3BSP原理简述
BSP又称板级支持软件包,它是一个包括启动程序、OEM适配层程序(OAL)、标准开发板(SDB)和相关硬件设备驱动程序的软件包。
BSP是基于WindowsCE平台系统的主要部分,它是由一些源码和二进制文件组成。
对于嵌入式系统来说,它没有像PC机那样具有广泛使用的各种工业标准,各种嵌入式系统的不同应用需求决定了它选用的各自定制的硬件环境,这种多变的硬件环境决定了无法完全由操作系统来实现上层软件与底层硬件之间的无关性。
因此各种商用实时操作系统都采用了分层设计的方法,它将系统中与硬件直接相关的一层软件独立出来,称之为BoardSupportPackage(板级支持软件包,简称BSP)。
顾名思义,BSP是针对某个单板而设计的,它对于用户(开发者)是开放的,用户可以根据不同的硬件需求对其作改动或二次开发,而操作系统本身仅仅提供了CPU内核的无关性。
BSP在系统中的角色,很相似于BIOS在PC统中的地位。
BSP在系统中所处的位置,如图1-2所示,它位于硬件平台与操作系统或应用软件之间,用于屏蔽上层软件对各种硬件的相关性。
应用软件
操作系统
硬件平台
图1-2BSP在系统中的位置
BSP的主要功能在于配置系统硬件使其工作在正常状态,并且完成硬件与软件之间的数据交互,为OS及上层应用程序提供一个与硬件无关的软件平台。
在PlatformBuilder中,微软提供了对十几中标准开发板(SDB)支持的BSP,这些BSP覆盖了所有WindowsCE可支持的处理器类型,它可使开发者快速地评估各种操作系统特性并减少新产品开发时间。
[实验内容]
1、安装XSBase270实验开发平台的BSP;
2、根据XSBase目标平台的特点和系统的需要,配置WindowsCE操作系统的特性和功能;
3、编译、链接操作系统内核,生成系统映象文件;
4、下载并运行编译好的WindowsCE系统。
[实验步骤]
1、安装XSBase270的BSP
为了使PlatformBuilder支持XSBase270开发板的硬件资源系统,在安装WindowsCE之后需要安装XSBase270的板级支持软件包(BSP)。
具体安装步骤:
双击随开发板提供的BSP安装文件XSBase270.msi,进入BSP安装向导
2、实验平台的配置
第一步:
新建一个目标平台:
a)选择菜单项“File”->“NewPlatformWizard.”;
b)输入目标平台名称和保存的位置
c)为目标平台选择所支持的BSP,XSBase270开发板选择选择“EMDOORSYSTEMXSBASE270:
ARMV4I”平台
d)为新建的目标平台选择一个合适的模板配置
e)在“Application&Media”选择有关特性(本实验选则默认项)
f)在“Networking&Communications”中选择可用特性(默认项);
g)完成“NewPlatformWizard.”,
第二步:
平台的配置
a)选择菜单项“Platform”->“Setting”。
b)在“PlatformSettings”对话框中设置“General”选项卡。
选中“Release”
c)在“PlatformSettings”对话框中设置“BuildOptions”选项卡;针对该XSBase270开发板实验平台的选项配置
第三步:
配置系统组件和特征
左边的workspace区显示的是所配置的WinCE操作系统所具有的组件,右边的Catalog区显示的则是PB提供的能够加入到WinCE操作系统的所有组件。
实验者可以在右边的catalog区中选择自己需要的设备驱动程序和功能组件。
如果决定要添加它到左边的workspace区以参加编译,通过右击选项再选择“AddtoOSDesign”。
a)添加XSBase270实验平台提供的设备驱动程序
XSBase270实验平台的驱动程序由平台BSP提供,其中包括输入设备(InputDevices)、网络设备(Networking)、PC卡(PCCard)、SD卡、串口、触摸屏、USB设备等;另外还包括EmdoorOEM驱动程序(主要包括:
CAN总线驱动、IDE接口驱动、LED显示驱动、电机接口驱动等)。
如果用户想向新建平台添加设备驱动程序,通过右击选项再选择“AddtoOSDesign”即可。
b)添加系统功能组件
①添加数据同步的组件:
CoreOS—>WindowsCEdevices—>Applications-EndUser—
>ActiveSync—>FileSync;
②图片浏览器的添加:
CoreOS-WindowsCEdevices-Applications-EndUser—File
Viewers—MicrosoftImageViewer
③大的软键盘组件的添加:
CoreOS—>WindowsCEdevices—ShellandUserInterface
—>SoftwareInputPanel—>Software-basedInputPanel(SIP)(Choose1ormore)—>SIPforLargeScreens
④文件系统的添加:
CoreOS—>WindowsCEdevices—>FileSystemsandDataStore—
>StorageManager—>FATFileSystem;
⑤配置信息保存模块添加:
CoreOS—>WindowsCEdevices—>FileSystemsandData
Store—RegistryStorage(Choose1)—>Hive-basedRegistry;
⑥CF卡模块的添加:
Catalog—>DeviceDrivers—StorageDevices—>CompactFlash/PCCardStorage(ATADISK)
⑦添加802.11b无线CF卡:
CoreOS->WindowsCEdevices—>CommunicationServicesandNetworking—>Networking-LocalAreaNetwork(LAN)—>WirelessLAN(802.11)
STA-AutomaticConfigurationand802.1x
⑧EVC调试程序组件模块的添加:
Catalog—>PlatformManager—>PlatformManager
3、平台的编译,构建系统,生成映像文件
选择菜单项BuildOS—>Sysgen对平台进行编译(如图1-18所示),如果没出任何错误,编译完成后将生成一个系统映象文件NK.bin,该文件被放在所建工程所保存的目录下的/RelDir/工程名_ARMV4I_Release目录下(本实验的编译后的映像文件NK.bin保存在D:
\WINCE500\PBWorkspaces\xsbase270\RelDir\XSBase270_ARMV4I_Release目录下)。
具体编译链接花费的时间根据你的宿主机的速度和你所配置平台的大小而定。
一般需要20~30分钟。
4、代码下载测试
4.1超级终端的配置—超级终端的通信参数设置如图
启动目标平台,超级终端显示BootLoader配置选项(如图1-20),如果需要下载新的映像文件,则第三项必须为:
3)DHCP:
Disable,第五项必须为:
5)Downloadnewimageat
startup
4.2PlatformBuilder配置:
选择菜单项Target—>ConnectivityOptions进行连接选项配置,如图1-21所示。
下载方式采用以太网下载,单击“Settings”按钮,对以太网进行配置,如图1-22所示。
假如没有接收到设备名:
XSBASE2960的话,检查网线是否连接好,可以查看板子上,以太网端口旁的指示灯是否点亮。
然后检查XSBASE2960的IP是否跟你的PC机在同一网段。
4.3下载测试
选择菜单项Target—>AttachDevice,进行设备连接,如果设备连接正常,PlatformBuilder将编译好的映像文件NK.bin通过以太网下载到目标板中,图1-23为PlatformBuilder下载进程
同时超级终端显示映像文件下载情况,当超级终端出现下面的字样的时候,表示映像文
件已经下载到目标板的Flash存储器中。
随后断电或按复位键重新启动,并将超级终端的第5项改为“Launchexistingflashresidentimageatstartup.”然后按“L”字母。
系统将启动起来。
实验总结:
初步学会基本操作并能进行简单的执行功能