基于Intel PXA270的WinCE操作系统移植

发布者:NatureLover最新更新时间:2010-03-22 来源: 微计算机信息关键字:WindowsCE.net  Intel  Pxa270处理器  移植 手机看文章 扫描二维码
随时随地手机看文章

  随着科学技术进步和3G时代的到来,高性能PDA产品作为一种电子消费品越来越受青睐。作为这些高性能的PDA产品核心的嵌入式实时操作系统是开发嵌入式应用的关键环节。向来以界面友好,易操作性,易开发性为卖点的Windows CE.net嵌入式操作系统得到了广泛的使用。然而,WindowsCE在不同CPU,不同硬件环境下的移植成为了限制其进一步发展的障碍。本文利用PlatformBuilder工具并以EEliod Evluation开发板为对象,介绍了基于Intel PXA270WindowsCE的移植方法和内容。并给出了在此操作系统成功开发的应用程序的运行结果。

  1.系统硬件平台

  论文使用的开发平台为深圳亿道公司提供的EEliod Evluation开发板,该开发板采用的是基于Intel XScale微体系结构的Intel PXA270 处理器。Intel XScale微体系结构支持16位Thumb指令和DSP扩充。可用于手机、便携式终端(PDA)、网络存储设备、骨干网(BackBone)路由器等。Intel PXA270微处理器芯片就是一款集成了32位Intel XScale处理器核、多通信通道、LCD控制器、增强型存储控制器和PCMCIA/CF控制器以及通用I/O口的高度集成的应用处理器。

  2.Windows CE.net嵌入式操作系统

  Windows CE.net 是为各种嵌入式系统和产品设计的一种压缩的、高效的、可升级的操作系统。在 Windows CE.net 产品的开发中,有两个重要的方面,一个是内核定制,一个是应用程序的开发,微软在这两个方面都提供了非常好的开发工具,这就是内核定制工具 Platform Builder 和应用程序开发工具 Embedded Visual C++。Platform Builder 是基于 Windows CE.net平台下嵌入式操作系统定制的集成开发环境。它提供了所有进行设计、创建、编译、测试和调试 Windows CE.net操作系统平台的工具。同时,还可利用 Platform Builder 来进行驱动程序开发和应用程序项目的开发等。由于嵌入式系统资源有限,C++编译器效率高、性能好,Embedded Visual C++(EVC)便成了其应用程序最广泛的开发工具。

  3 操作系统移植

  Windows CE.net并不是一个通用的安装版操作系统,在形形色色的嵌入式硬件设备世界里,一款CE系统通常只会针对某一种硬件平台生成。所以,必须根据自己的硬件平台和应用场合定制CE。操作系统移植步骤为:1)对操作系统进行裁减,配置各个组件并且修改相关的配置文件;2)开发目标设备系统上的设备驱动程序,建立定制的CE操作系统映像文件;3)将目标文件下载到目标设备上进行调试;4)定制操作系统内核后,导出平台SDK,供在Embedded Visual C++中开发上层应用软件。

  3.1 BootLoader的移植

  BootLoader是一段单独的程序代码,它存放于目标平台的非易失性存储介质中,如ROM或Flash。在开发CE的过程中,它主要用于启动硬件和下载nk.bin到目标板上,并有一定的监控作用

  由于BootLoader涉及到基本的硬件操作,如CPU的结构、指令等,同时又涉及到以太网下载协议(TFTP,当然也可能通过串口)和映像文件格式。因此从零实现的话,会需要相当长的过程。好在微软为每种类型的CPU都提供了某种标准开发板的BootLoader例程,因此通常的做法是:从这些例程中寻找与硬件平台最接近的作为标本程序,然后再从自己的硬件平台上入手做相应的改动。一些新的评估板可能会由第三方的厂商来提供Bootloader。如果硬件平台是从这样的基板设计而来的话,那么最好去寻求这些厂商获取Bootloader来移植,以减少工作量。本文移植使用的就是PXA270 Bootloader。

  3.2驱动程序的开发

  与其他操作系统一样,Windows CE.net也提供了驱动软件,这些软件的目的是驱动内部和外围的硬件设备,或者为他们提供接口。驱动程序将操作系统和设备连接起来,使得操作系统能够识别设备并为应用程序提供设备服务。目前基于 Windows CE.net的两种模型是本机设备驱动程序和流接口驱动程序。

  本机设备驱动适于集成到 Windows CE.net平台的设备。通用 LED 驱动和电源驱动就是这样的例子。微软提供了定制接口的方式来支持内部设备驱动程序,绝大多数的开发人员不需要编写本机设备驱动程序。

  另外一种驱动模型是具有定制接口的流接口驱动程序,它是一般类型的设备驱动程序。流接口驱动程序表现为用户一级的动态链接库 DLL,用来实现一组固定的函数称为流接口函数,这使得应用程序可通过文件系统访问这些驱动程序。该部分实例参见参考文献4,这里不再详述。

  3.3 操作系统配置、编译和下载

  针对开发中使用的开发平台和应用需求,下面我们使用Windows CE.net操作系统移植开发工具Platform Builder来完成操作系统的配置编译以及下载工作。

  3.3.1 配置Platform Builder

  在完成BSP或者驱动程序开发后,就可以用CEC Editor来编辑一个CEC文件,成功后就可以把此文件加载到PB IDE中。其中的原理就是PB用CEC文件来增加或者删除某个功能单元,PB会解释CEC文件中的数据格式。CEC文件编辑如图1所示。加载CEC文件到PB中如图2所示。

图1 编辑CEC文件实例

图2 加载CEC文件实例

  3.3.2 配置操作系统

  选择File->New Platform来开始一个“New Platform Wizard”,按照Platform Wizard 完成平台的基本配置,在第三步选择BSP包时,选择 EMDOOR SYSTEMS XSBASE270:ARMV4I。因为我们开发用到的是亿道公司提供的BSP包。在第四步选择Internet Application ,第五步选择组件时我们要选取 .net CF1.0支持,这是因为在使用.Net CF2.0时有些依赖的部件无法选择,通过选择.Net CF1.0支持就完成选择了。

  完成向导后,在编译内核镜像前,需要在Catalog中添加一些我们需要的组件和配置整个平台系统变量。在Catalog中点击右键就可以添加组件到工程中。可以在菜单View/Catalog中打开Catalog窗口,将选用到的组件添加到系统中。

  针对本文中应用程序开发的需要,在EELiod 开发平台上选用的系统配置方案为:

  (1)添加Usb Activesync (文件同步)

  (Catalog->Core OS -> Windows CE.net devices -> Applications - End User->ActiveSync-> File Sync)

  (2)添加COM组件运行时加载支持

  (Catalog->Core OS -> Windows CE.net devices -> Applications and Services Development-> Component Object Mode-> COM-> CoCreateGuid functionality for OLE32)

  (3)添加USB Mass Storage

  (Catalog->Core OS -> Windows CE.net devices -> Core OS Services-> USB Host Support ->USB Storage Class Driver)

  (4)添加Fat File System

  (Catalog->Core OS -> Windows CE.net devices -> File Systems and Data Store -> Storage Manager-> FAT File System)

  (5)添加Disk Partition

  (Catalog->Core OS -> Windows CE.net devices -> File Systems and Data Store -> Storage Manager-> Partition Driver)

  (6)添加软键盘

  (Catalog->Core OS -> Windows CE.net devices -> File Systems and Data Store -> Storage Manager-> Storage Manager Control Panel Applet)

  (7)添加USB Client 驱动

  (Catalog-> Device Drivers -> USB Function -> USB Function Clients -> Serial)

  (8)添加网卡驱动

  (Catalog-> Third Party-> BSPs -> Emdoor Systems XSBase270: ARMV4I -> Device Drivers -> Networking->Local Area Networking(LAN) devices->lan91c111)

  (9)添加Usb Activesync (USB Function).

  (Catalog-> Third Party-> BSPs -> Emdoor Systems XSBase270: ARMV4I -> Device Drivers -> USB Function->USB Function Bus Drivers->PXA27x USB Function)

  3.3.3编译平台

  在配置好操作系统后,下一步就是编译,编译过程分成4个阶段:sysgen阶段、特征编译(feature build)阶段、发行目录拷贝(release copy)阶段、映像生成(make image)阶段。PB编译工具先产生头文件(header files )、成生模块(modules ) ,再把每个最后得到的模块拷贝到发行目录下,最后产生二进制系统映像(默认为NK.bin)。在开始编译前,需要通过Platform->Setting对话框来配置一些编译选项,在该系统中所设置编译选项如图3所示。

图3 配置平台编译设置   

  3.3.4 下载镜像

  编译整个平台,待编译成功后会在Release目录($ FLATRELEASEDIR )下会找到一个Bootloader 镜像文件eboot.nbo和系统镜像文件NK.bin。在向目标板上下载系统镜像文件之前,先要在目标板上下载BootLoader镜像文件。下载BootLoader镜像使用jflash工具。具体使用方法为将Eboot.nb0复制到jflash工具执行文件所在的目录,打开命令行,转到Jflash目录,执行 Jflash PXA270 eboot.nb0  命令。

  Jflash 使用PC机的并口将eboot.nb0下载到开发板,上面命令中Pxa270是我们开发板上JTAG接口的相关配置信息。向目标板上下载系统镜像的途径有多种,如通过串口、并口、网卡、USB等。只要BootLoader PC机上支持,可以选择效率高的一种来下载镜像。本论文中我们用到的BootLoader程序Eboot支持网卡下载,使用Platform Builder自带下载工具下载。下载配置如图4所示:

  Target->Connectivity Options in Platform Builder.

    

图4 操作系统镜像下载

  4.应用程序开发

  在Windows CE.net嵌入式操作系统上进行应用程序开发时,首先要考虑到一个问题:应用程序开发、调试和运行在不同的平台之间进行的。所以我们在进行开发前,首先要导出一个针对该系统的开发工具包(SDK),这一步工作要在编译完操作系统后完成。将编译好的SDK安装到开发的PC机上,就可以使用EVC进行应用程序开发了。图5为在论文所定制和移植的操作系统上开发的儿童多媒体词典的运行效果图。

图5 儿童多媒体词典的运行效果图

  5.结束语

  嵌入式操作系统应用在千变万化的硬件环境中,所以要根据硬件环境的变化进行配置,来满足不同的应用要求。本文介绍了Windows CE.net在Intel PXA270的移植过程,对于其他处理器硬件环境,同样具有参考价值。

  本文作者创新点为解决了Windows CE.net在Intel PXA270的移植过程中的重点和难点,对嵌入式系统开发具有参考价值。

关键字:WindowsCE.net  Intel  Pxa270处理器  移植 引用地址:基于Intel PXA270的WinCE操作系统移植

上一篇:风河全新Hypervisor助虚拟化开发更上层楼
下一篇:风河增强VxWorks 653航空电子系统的硬件支持

推荐阅读最新更新时间:2024-05-02 21:01

引领边缘计算创新,英特尔正式发布公测版“英特尔® Developer Cloud for the Edge”
2023年6月1日, 北京 —— 英特尔今日正式发布公测版“英特尔® Developer Cloud for the Edge”硬件平台。这一开放平台旨在为用户提供免费的评估、基准测试和原型设计环境,以支持使用英特尔® 硬件的人工智能(AI)和边缘解决方案的开发 。同时,“英特尔® Developer Cloud for the Edge”集成了最新的OpenVINO/oneAPI软件栈,提供丰富的边缘设备、服务器、AI加速器和分析优化工具集,帮助开发人员无论处于边缘开发的任何阶段,都能从“英特尔® Developer Cloud for the Edge”获得全面的支持。目前,该平台已经在智慧城市、智慧医疗、新零售、工业等垂直行
[嵌入式]
引领边缘计算创新,<font color='red'>英特尔</font>正式发布公测版“<font color='red'>英特尔</font>® Developer Cloud for the Edge”
首次原生60核 Intel谈四代至强延期:质量不做好就不发布
在服务器/数据中心处理器市场上,Intel被友商抢走不少份额,一个重要原因就是对手的EPYC采用多芯架构,生产制造更容易,核心也多,现在能达到96核、128核了。 Intel这边一直坚持原生多核架构,在核心数上吃亏,之前的至强也就是原生28核心,但好处是性能强,第四代可扩展至强处理器代号Sapphire Rapids原定在2021年发布上市,现在跳票一年半,现在官方确定是在23年1月10日发布。 Sapphire Rapids采用12/13代酷睿同款的Intel 7制造工艺,改用新的Socket E LGA4677封装接口,首次引入chiplet小芯片封装,物理层面最多60个Golden Cove微架构核心但首批只开启56
[家用电子]
Micro2440 Nboot ADS 移植到Keil5编译通过
由于项目需要开发老版本S3C2440,由于时间有限系统当然跑WinCE6.0,软件兼容性好 当然安装开发工具等等一大堆是相当头疼,之前做STM32特别多,个人电脑一大堆都是32的BSP包,keil用的特别顺手,这次开发2440需要用到友善提供的Nboot,由于ADS软件兼容行特差问题太多不想折腾了,将Nboot移植到keil5上, 步骤1: 需要下载keil下ARM9的支持包,给上逻辑 http://www2.keil.com/mdk5/legacy,下载Legacy support for Arm7, Arm9 & Cortex-R devices安装即可。 步骤2: 将所有Nboot文件拷贝到keil工程下,如
[单片机]
Micro2440 Nboot ADS <font color='red'>移植</font>到Keil5编译通过
中兴执行副总裁何士友:借力英特尔的背后逻辑
    新浪科技讯 7月11日凌晨消息,昨天晚间中兴通讯联合英特尔共同宣布,搭载英特尔最新双核凌动处理器的中兴GEEK智能手机正式上市。中兴通讯执行副总裁何士友表示,中兴通讯希望通过与英特尔的合作实现差异化发展。他认为,未来消费者将会非常关注智能手机配置的芯片。   推GEEK智能手机   中兴通讯英特尔昨天晚间共同宣布,搭载英特尔最新双核凌动处理器的中兴GEEK智能手机正式上市,最低售价1888元,支持无线充电功能的版本售价稍高,为2288元。自即日起GEEK智能手机将在中国市场全面上市,消费者可通过京东等电商渠道进行购买。   去年8月份,中兴通讯曾推出首款搭载英特尔芯片的智能手机Grand X IN,该机采用了上一代英特尔移动
[手机便携]
英特尔中国区董事长马宏升计划明年1月退休
  北京时间9月20日凌晨消息,英特尔公司(INTC)周三宣布,其执行副总裁兼中国区董事长马宏升(Sean Maloney)计划于明年1月份退休。   马宏升今年56岁,已为英特尔效力30年,是该公司一位备受尊敬的高管,一度被视为下任CEO的最佳人选。   过去14个月,马宏升担任英特尔执行副总裁兼中国区董事长,在此之前,他曾在该公司的欧洲、香港和美国部门工作,负责销售和营销、移动产品等领域的工作,并曾担任英特尔前CEO安德鲁-格罗夫(Andrew Grove)的技术助手。   2010年2月,马宏升曾患中风,并被迫休假治疗,以恢复语言能力和健康。
[半导体设计/制造]
<font color='red'>英特尔</font>中国区董事长马宏升计划明年1月退休
基于ARM核的Intel XScale嵌入式系统
摘要: 简要介绍Intel XScale的特点以及与Intel StrongARM的区别;重点介绍PXA250处理器和PCM-7210单板计算机的结构、功能和接口特性。 关键词: XScale ARM核 PXA250 PCM-7210 1 简 介   Intel XScale微体系结构提供了一种全新的、高性价比、低功耗且基于ARMv5TE体系结构的解决方案,支持16位Thumb指令和DSP扩充。基于XScale技术开发的微处理器,可用于手机、便携式终端(PDA)、网络存储设备、骨干网(BackBone)路由器等。Intel PXA250微处理器芯片就是一款集成了32位Intel XScale 处理器核、多通信信道、LCD控制
[嵌入式]
英特尔携手信步科技联手打造移动机器人解决方案,共创智慧未来
随着社会经济运行智慧化趋势的不断增强,各行各业智能化升级的需求也与日俱增,移动机器人在物流、医疗、零售等行业中的场景化应用越来越丰富,部署规模不断扩大。基于此, 英特尔联手信步科技推出了基于英特尔® 架构的移动机器人控制器解决方案 ,以充分挖掘移动机器人的价值和潜力,并进一步加速移动机器人产业的持续发展,推动产业智能化的进程。 英特尔网络与边缘事业部中国区工业方案总监李岩表示:“近年来,中国乃至全球范围内的移动机器人产业迅猛发展。 国际机器人联合会(IFR)数据显示,自主移动机器人的全球单位销量预计将以每年40%的速度增长1。 此外,来自新战略移动机器人产业研究所的报告显示,中国市场企业在2021年的整体工业应用移动机器人销售
[工业控制]
机构:英特尔1.8nm量产早于台积电2nm 或可“颠覆剧本”
近日,台积电公布其N2(即2nm制程)时间表,或到2025年底启动量产,晚于英特尔18A节点(相当于1.8nm制程)。机构指出,英特尔在先进制程开发上的加速使其相信,这家芯片制造商可以“颠覆剧本”,并凭借18A节点在性能上超越竞争对手台积电和三星。 据科技网站theRegister报道,在台积电N2时间表发布的几天前,英特尔刚刚透露,其下一代18A节点将于2024年下半年投产,比此前预计的2025年提前了几个月。英特尔CEO基辛格认为,该公司将凭借其18A节点成为工艺性能的领导者,投产提前表明其目前有十足的信心。 在最近的一份分析报告中,半导体咨询公司IC Knowledge的负责人Scotten Jones表示,如果英特尔真能如
[手机便携]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved