CE5.0 ARM模拟器定制--基于VS2005/VS2008

PB5.0只能支持X86的模拟器,打开ARM的模拟器时报错,参考:http://blog.csdn.net/zhangjikuan/article/details/44833661

而VS2005支持ARMV4I模拟器,本文是PB5.0,CE5.0,VS2005相结合定制ARM模拟器

亲测:VS2008也可以,只是在创建项目时候注意选择右上角FRAMEWORD的版本,而且没有1.0版,如果PB5没有打升级包,则建立的模拟器没法运行高版本的程序,从而没法进行调试

一、生成OS

1. 安装Windows CE 5.0(记得CPU类型里把ARMV4I选上)装完之后装DeviceEmulatorBSP.msi,这是ARMV4I模拟器的BSP。
   下载地址:http://www.microsoft.com/downloads/details.aspx?FamilyID=474b03a6-e87d-455d-bc16-b8cf18ef39b4&displaylang=en

2. 运行Platform Builder,新建一个Platform,给你的新Platform取一个名字,我这里取为ZJKEmulator_ARMV4I。BSP选择Microsoft DeviceEmulator:ARMV4I,Design Template选择Mobile Handheld,下一步中Application & Media随你选,Networking & Communications只选择Local Area Network(LAN)->Wired Local Area Network,其余都去掉。最后完成向导。

3. 添加网卡。在Catalog View的Device Drivers->Networking->Local Area Networking (LAN) devices目录下,把NE2000-compatible(PCMCIA car)添加进来。

4. 如果要开发托管程序,添加Catalog View的Core OS->Windows CE Devices->Applications – End User->CAB File Installer/Uninstaller。

5. 添加ActiveSync(可选),在Catalog View的Core OS->Windows CE Devices->Applications – End User目录下。

6. 添加闪存支持。有三个部件:SMFlash,Partition Driver和FAT。
   先转到Catalog View:
   SMFlash在BSP->Microsoft Device Emulator->Storage Drivers->MSFlash Drivers->SmartMedia NAND Flash Driver (SMFLASH),
   Partition Driver在Core OS->Windows CE Devices->File Systems and Data Store-> Storage Manager->Partition Driver
   FAT在Core OS->Windows CE Devices->File Systems and Data Store->Storage Manager->FAT File System。

3,4,5,6自己按照自己的需要可选择性添加(如果程序时基于.net compact framework1.0以上版本的还需要在catalog->coreOS中选择高版本,注意如果PB5没有打高版本的补丁的话里面就只有一个.net compact framework的,我安装了补丁WinCEPB50-131231-Product-Update-Rollup-Armv4I.msi,里面有2.0和3.5,在这里选择了3.5)

7. 打开菜单Platform->Setting,这里有三个地方要设置:
1) Build Options选项卡下,去掉Enable CE Target Control Support和Enable KITL;

   我只保留:Enable Eboot space in memory和run-time image can be larger than 32MB(亲试,这个也没什么用,模拟器内存与VS2005中配置有关)

2) Environment选项卡,添加环境变量CE_MODULES_SERIAL=1,这是用来将DMA添加进来;

  DMA解释参考:http://www.cnblogs.com/walzer/archive/2007/05/13/744729.html#Feedback

3) Locale选项卡,用来添加你想要的语言支持,可改可不改。我这里先Clear All然后选了中文(中国)和英语(美国)。Default Language选为中文。

8. BuildOS->Sysgen。

二、生成SDK

1. 运行SDK Wizard(Platform->SDK->New SDK),填写必要的信息之后,把支持的开发工具都勾上,完成。下面是配置SDK(选择Platform->SDK->Configure SDK),要是觉得没有什么好配置的也可以跳过。

2. 打开ExportSdk.sdkcfg文件(先做好备份,这个文件一般在项目根目录下,就是在New Platform Wizard的第2步中所指定的目录,默认是%_WINCEROOT%\PBWorkspaces下)。这是一个XML格式的文本文件,找到这两行:
    <PropertyBag NAME="DeviceEmulation">
    </PropertyBag>
把这两行替换为如下的片断:
 <PropertyBag NAME="DeviceEmulation">
        <Property NAME="Default Image">1</Property>
        <PropertyBag NAME="1">
            <Property NAME="ImageName">ZJKEmulator_ARMV4I</Property>
            <Property NAME="VMID"></Property>
            <Property NAME="Default Skin"/>
            <Property NAME="Height">600</Property>
            <Property NAME="Width">800</Property>
            <Property NAME="BitDepth">16</Property>
            <Property NAME="Memory">128</Property>
            <Property NAME="Bin Dest">Emulation\nk.bin</Property>
            <Property NAME="Fixed Screen">1</Property>
            <Property NAME="CpuName">ARMV4I</Property>
            <Property NAME="DPIX">96</Property>
            <Property NAME="DPIY">96</Property>
            <Property NAME="SupportRotation">0</Property>
            <Property NAME="Enabled">1</Property>
            <Property NAME="Bin Path"></Property>
            <Property NAME="Ethernet">1</Property>
            <Property NAME="Ports">1</Property>
            <Property NAME="AdditionalParameters"></Property>
            <PropertyBag NAME="Skins"/></PropertyBag>
 </PropertyBag>
 <PropertyBag NAME="Added Files">
        <PropertyBag NAME="{3B388597-0924-4102-ADFA-2519D2C3E11B}">
            <Property NAME="Source">C:\WINCE500\ZJKEmulator_ARMV4I\ReleaseImage</Property>
            <Property NAME="Destination">Emulation</Property>
            <Property NAME="Subfolders">0</Property>
        </PropertyBag>
 </PropertyBag>

3. 设定变量。上面替换的代码中有几个变量需要设定,分别是:
1) ImageName:这是程序员在Visual Studio IDE里所看到的名字;
2) VMID:一个GUID,可以用GuidGen.exe来生成一个,也可以直接复制下面 <PropertyBag NAME="Emulation">中的VMID的序号
3) Height/Width:模拟器屏幕的宽高;
4) BitDepth:颜色深度;
5) Memory:分配给模拟器的RAM大小;
6) DPIX/DPIY:屏幕DPI;
7) Source:这是一个目录,包含编译生成的NK.bin。建议最好在%_WINCEROOT%下新建一个目录,专门用于存放NK.bin。

这里我设为C:\WINCE500\MyCEEmu\ReleaseImage。
修改完成后保存。

3. 生成SDK。Platform->SDK->Build SDK。一切顺利的话应该可以在当前工程目录的SDK目录下找到打包成msi文件的SDK安装包。

    如果报错参考:http://blog.csdn.net/zhangjikuan/article/details/44937875


三、配置Visual Studio 2005
1. 先安装生成好的SDK。运行Visual Studio 2005,选择菜单“工具->选项”,打开选项设置对话框,从左边的树型列表中选择“设备工具->设备”,右边的下拉列表框拉到底可以看到 “ZJKEmulator_ARMV4I”,这就是我们刚刚生成的那个Platform。下面的设备列表里有两项,双击ZJKEmulator_ARMV4I,设定传输为DMA传输,再点击“仿真器选 项”,在“显示”选项卡里设定好模拟器屏幕尺寸,颜色深度等,全部保存。

2. 新建一个智能设备项目,向导第2步选择平台的时候用我们的ZJKEmulator_ARMV4I替换Pocket PC 2003,完成。然后按F5运行程序,不出意外的话模拟器应该就出来了。

也可以不需要新建项目,直接在工具->设备仿真器管理器中找到模拟器右击连接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1、把下载后的DeviceEmulator模拟器文件夹放入D盘根目录。 2、安装DeviceEmulator中文版.exe 3、存储卡目录(自定),例:在C盘建一个文件夹SDMMC,这个文件夹相当于一体机的存储卡。 4、执行DE.exe,选择执行DE主程序:C:\Program Files\Microsoft Device Emulator\1.0\DeviceEmulator.exe 5、选择映像文件(CE50_ARM_CHS.bin) 或 4、把3.5/4.3/7寸模拟器.bat拷到桌面,双击运行即可。 ================================================================== 解压后操作步骤: 1、安装DeviceEmulator中文版.exe 2、执行DE.exe,选择执行DE主程序:C:\Program Files\Microsoft Device Emulator\1.0\DeviceEmulator.exe 3、选择映像文件(CE50_ARM_CHS.bin) 4、存储卡目录(自定) 我这里设置的是SDMMC 5、真正的WINCE系统出现了~~~ 市场上的导航仪都是WINCE系统哦,呵呵。。。 WINCE5.0模拟器调节分辨率方法: WINCE5.0模拟器可以改成任意尺寸和分辨率的。只是你不能用DE.exe来启动它。那个“启动助手”中缺少video参数的选项,如果想改变分辨率应该自已做一个批处理文件方更启动。 按装完“DeviceEmulator中文版.exe”后,将解压后的CE50_ARM_CHS.bin文件复制到C:\Program Files\Microsoft Device Emulator\1.0\里面。再将启动wince5模拟器.bat复制到同样的目录下。在该目录下运行“启动wince5模拟器.bat”。 320×240屏的(是3.5寸屏的),我设的是800*600,大点好,呵呵。。。自已修改“启动wince5模拟器.bat”中的相关数字就行了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值