版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、21121230智能终端软件开发(智能手机软件开发)Smartphone Software Development第0课,陈天洲、楼学庆 浙江大学软硬件协同设计实验室 曹西204(周一上午3-4,2节理论课) 曹西501(周一下午7-10,4节实验课),2020/7/24,浙江大学计算机学院,2,课程信息,任课教师 陈天洲,, 楼学庆,, 助教 曹满, 课程网站 课程FTP ftp:/ 答疑时间 每周五上午,曹西404,2020/7/24,浙江大学计算机学院,3,2020/7/24,浙江大学计算机学院,4,参考书目,深入浅出Google Android E2ECloud工作室,中国大陆 人民邮
2、电出版社(2009-08出版); Android移动开发入门与进阶 张利国、龚海平、王植萌 人民邮电出版社(2009-09出版); Google Android程序设计指南(附光盘1张)杨文志 电子工业出版社(2009-10出版); Symbian OS软件开发:应用C+开发智能手机应用程序入门 ,Steve Babin,美、周忠良 人民邮电出版社(2006-06出版); symbian OS架构手册:手机操作系统设计与演进 Ben Morris、陈广辉、谭利平、齐志峰 人民邮电出版社(2008-07出版)。 Windows CE6.0开发者参考(原书第4版),(美国)柏林(Boling.D.
3、),译者:何宗键,机械工业出版社(2009年03月) The iPhone Developers Cookbook:Building Applications with the iPhone SDK, :(美国)(Sadun.E.)萨丹 译者:漆振 解巧云 郎亚妹 等, 人民邮电出版社(2009年07月),2020/7/24,浙江大学计算机学院,5,评分方法,四个实验报告为分数 平台基础实验1个 开发平台搭建、开发基础实验、开发流程 平台开发实验2个 通讯与网络开发实验、人机交互软件设计、数据存储实验、传感器触摸屏等硬件实验 综合应用开发实验1个 利用智能终端平台丰富的硬件配置和编程接口,设计
4、编写一款新颖的小游戏或是实用的小应用 实验平台 Gphone、Iphone、Ipad、windows mobile手机、MID 仿真环境,21121230智能终端软件开发(智能手机软件开发)Smartphone Software Development第6课 Windows Mobile系列开发,楼学庆 2010-10-11 浙江大学软硬件协同设计实验室 曹西204(周一上午3-4,2节理论课) 曹西501(周一下午7-10,4节实验课),2020/7/24,浙江大学计算机学院,7,agenda,1、概论 2、WinCE 3、应用开发,概论,2020/7/24,浙江大学计算机学院,9,Wind
5、ows Mobile的版本历史:,目前最新版本为Windows Mobile 7,之前为6.5。有三大版本: 有用於掌上电脑的Windows Mobile for Pocket PC、 用于手机的Smartphone|Windows Mobile for Smartphone、Pocket PC Phone|Windows Mobile for Pocket PC Phone 用于移动媒体的Portable Media Center。,2020/7/24,浙江大学计算机学院,10,Windows Mobile的版本历史:,20世纪末该操作系统称为:Windows CE 2.11, Palmsi
6、ze-PC,后开发出Pocket PC 2002 (Windows CE 3.0), Windows Mobile 2003 (Windows CE 4.2) 和Windows Mobile 2003 SE (Windows CE 4.21) SE版支持480 x640的VGA显示屏,并可水平旋转显示画面。 两种版本都加入对WiFi无线网络的支持。 微软在09年2月的巴塞罗那大会上宣布,Windows mobile 6.5以后的名字不再使用,而是统一使用Windows phone。,2020/7/24,浙江大学计算机学院,11,Windows phone简介,Windows phone主要指基
7、于Windows Mobile 6.5操作系统,是微软公司用于Pocket PC和Smartphone设备的软件平台,是微软为手持设备推出的“移动版Windows”,它将熟悉的Windows桌面扩展到了个人设备中。使用Windows Mobile操作系统的设备主要有PPC手机、PDA、随身音乐播放器等。 搭载Windows phone的操作系统有三种,分别是 Windows Mobile Standard、 Windows Mobile Professional, Windows Mobile Classic。 目前常用版本Windows Mobile 6.1或6.5,最新版本是Windows
8、 phone 7。原形为Windows CE。,2020/7/24,浙江大学计算机学院,12,特点,Windows phone具有桌面定制、图标拖拽、滑动控制等一系列前卫的操作体验。 主屏幕通过提供类似仪表盘的体验来显示新的电子邮件、短信、未接来电、日历约会等,让人们对重要信息保持时刻更新。 一个增强的触摸屏界面,更方便手指操作; 一个最新版本的IE Mobile浏览器。,2020/7/24,浙江大学计算机学院,13,Windows phone主要特色,增强的Windows Live体验,包括最新源订阅,以及横跨各大社交网站的Windows Live照片分享等等。 更好的电子邮件体验,在手机上
9、通过Outlook Mobile直接管理多个帐号,并使用Exchange Server进行同步。 Office Mobile办公套装,包括Word、Excel、PowerPoint等组件。 在手机上使用Windows Live Media Manager同步文件,使用Windows Media Player播放媒体文件。 重新设计的Internet Explorer手机浏览器,支持Android Flash Lite。 应用程序商店服务Windows Marketplace for Mobile和在线备份服务Microsoft My Phone也已同时开启,前者提供多种个性化定制服务,比如主题
10、。,2020/7/24,浙江大学计算机学院,14,概论,Windows Phone应用平台是一个新的应用平台,重点支持消费娱乐体验,用于手机上运行的Windows Phone OS 7.0。它是基于微软技术,如Silverlight、XNA和.NET Compact Framework。开发人员已经非常熟悉这些技术及其相关工具,没有必要进行严格的学习就能够很顺利的创建Windows Phone OS 7.0的新应用。 用于开发应用程序的两个框架: 1、 一个事件驱动的Silverlight的用户界面框架,基于XAML的应用程序开发 - Windows Phone平台为开发人员提供了丰富的Sil
11、verlight用于充分开发基于用户体验的创造性mark-up。 2、一个基于循环游戏的XNA UI框架,Windows Phone平台为开发人员提供了对XNA游戏开发的全部功能,使其具备身临其境的、非常有趣的游戏和娱乐体验。 端到端的Windows Phone应用平台的开发环境包括了Visual Studio、Expression Blend、Market服务,基于云的Web服务以及开发人员市场合作。,2020/7/24,浙江大学计算机学院,15,概论,Windows Phone7.0手机操作系统其用户体验设计的目的是聚焦消费者所关心的信息和经验,消费者的数据和资料应当是个性的、相关的和互联
12、的。 为了帮助开发人员为这些消费者创建应用程序,Windows Phone应用平台的应用程序提供以下方面的内容: 1、一种简单、廉价的方式来使开发人员上手开发。 2、一个整体的和良好设计的管理API集合。 3、基于服务的应用开发市场(MarketPlace)来分发他们的应用。 4、设立一个独立的沙包、每个应用程序都可以在里面运行。 设备上的Runtime服务,可用于访问云端的Web服务器,如Windows Live、Windows Azure以及第三方服务器来进行存储。,2020/7/24,浙江大学计算机学院,16,概论,Windows Phone应用平台,和大多数平台一样,将继续不断的演变,
13、但它的目标是提供: 1、丰富的应用。 2、支持跨多个设备上消费者个人数据互联。 3、一个强大的应用市场和开发者入口。 4、强大的、富有成效的开发工具。 该平台被设计成支持3屏+消费者生存的云世界。,2020/7/24,浙江大学计算机学院,17,硬件配置,微软最近放出了Windows Phone7的测试设备,同时伴随设备还贴出了Windows Phone7设备的最低硬件要求。从硬件配置不难看出Windows Phone7要走的是高端路线,价格应该不会太便宜。配置参数如下: 屏幕:800480 WVGA,支持多点触摸(最多4点) 硬件按钮:WP7设备至少要具备5个按钮:开始,后退,搜索,拍照,电源
14、/锁屏。 处理器:Qualcomm Snapdragon CPU(支持DirectX 9)。 内存:至少256MB 内部存储:最少8GB,外部存储:不支持。 无线:WiFi、蓝牙、A-GPS、FM广播 摄像头:至少500万像素,有闪光灯 其他:加速度感应器、指南针、亮度感应、外部键盘(可选),2020/7/24,浙江大学计算机学院,18,Windows Mobile 6.5系统新功能,My Phone 为使用者提供了线上备份服务,用户只需输入自己的Windows Live 账号,即可以通过手机无线网络将手机中的信息进行备份。 如果用户将手机丢失,我们登陆My Phone网站还可查询到上一次手机
15、同步时的大概位置,为寻找失物提供参考性线索。 软件商店Marketplace for Mobile。 Marketplace for Mobile则是微软软件商店,所有WM6.5用户可选择手机或PC登陆浏览Marketplace主页,据悉到11月初将会有300多个中文软件供国内用户下载。 需要说明的是,所有登陆Marketplace并上传软件的用户都需要交纳99美元年费,不分付费、免费且最多上传5个应用程序。 ,2020/7/24,浙江大学计算机学院,19,2020/7/24,浙江大学计算机学院,20,Windows Phone 7软件开发工具,Windows Phone 7应用程序将建在Si
16、lverlight(微软对Flash的回应)技术的基础上并且支持电容式多点触控显示屏、地理位置、 推播通知以及支持数字版权管理的硬件加速的视频功能。 游戏将采用微软的XNA Game Studio制作。这个工具原来是为制作Xbox Live服务的游戏制作的。 在Windows Phone 7手机上玩的游戏能够继续在电脑和Xbox游戏机上玩。 Windows Phone 7应用程序将通过升级的Windows Phone市场提供。 微软还发布了Silverlight 4软件。,2020/7/24,浙江大学计算机学院,21,我们的产品一定能够超越竞争对手,微软推出最新版手机操作系统Windows P
17、hone 7,并希望这款操作系统能够帮助微软在与苹果iPhone、RIM黑莓和谷歌Android的竞争中夺回市场份额。鲍尔默在西班牙马德里表示:“对于Windows Phone 7的发布,我们感到非常兴奋。我们认为,Windows Phone 7有独特的理念和独特的前景,我们的产品一定能够超越竞争对手。如果认为这款产品不够好,我们肯定不会将其推向市场。”,2020/7/24,浙江大学计算机学院,22,有了Android,这世界不需要另一平台,Android创始人安迪鲁宾(Andy Rubin)表示:Windows Phone 7看起来“非常有趣”,但是他认为因为Android的存在,微软手机系
18、统并不能带来任何新价值。鲁宾在采访中称,“Android是免费及开放的。我想创造另一平台的唯一理由就是政治因素。” ,“这世界(有了Android)不需要另一平台。”,2020/7/24,浙江大学计算机学院,23,Gartner:竞争将十分激烈,美国Gartner咨询公司的分析师近日表示: Windows Phone 7并没有给予人们多少信心和期待。预计Windows Phone 7的上市将使得微软公司在全球手机操作系统市场的占有率从2010年的4.7%增至5.2%,但到2014年这一比例将最终跌至3.9%。 目前Symbian以及Android仍是手机操作系统市场上的大佬,其预计到2014年
19、Symbian仍将以30.2%的市场份额领跑市场, 同时Android的市场占比也将从2010年的17.7%增加到2014年29.6%。 根据美国尼尔森调查公司5日发布的调查数据,八月份Android首次荣登美国市场最受欢迎手机操作系统的冠军宝座,紧随其后的是苹果公司的iOS操作系统,其在美国市场的占有率为25%。 一些开源数据库公司对于Windows Phone 7还是抱有很高的期望值。,嵌入式WinCE操作系统基础篇,2020/7/24,浙江大学计算机学院,25,课程大纲, WINDOWS CE简介 构建WINDOWS CE平台 WINDOWS CE下开发环境 Windows Mobile
20、开发方法,2020/7/24,浙江大学计算机学院,26,概论,微软Windows CE 被设计成针对小型设备(它是典型的拥有有限内存的无磁盘系统)的通用操作系统。 Windows CE 可以通过设计一层位于内核和硬件之间代码来用设定硬件平台,这即是众所周知的硬盘压缩层(HAL)。 Windows CE采用标准模式以达到灵活适应广泛产品需求。 由一系列软件模式做出选择,从而实现产品定制,达到系统要求的最小模式。,2020/7/24,浙江大学计算机学院,27,Windows CE 关于 VC+ 5.0 开发系统嵌入式工具包,提供系统库、工具、文本和样本代码,以使 OEMS 能够对特定的硬件平台使
21、Windows CE 标准定制。 嵌入式工具包也包括设备驱动包(DDK)和软件开发包(SDK) ,DDK 提供了关于写驱动器的附加文本,SDK 提供库、头文件、样本代码、文本以允许开发者对基于 Windows CE 的平台进行写操作。 Windows CE 提供了相同的程序界面,以用来为其它的视窗操作系统开发功能。 实时系统的开发者能够使用,关于VDFF 5.0 的嵌入式工具包,以把操作系统转移到特定的平台,并为这个平台开发附加设备驱动器和实时功能。,2020/7/24,浙江大学计算机学院,28,WINDOWS CE的特点,紧凑、高效和可扩展的操作系统,适用于各种嵌入系统和产品。 拥有多线程、
22、多任务、确定性的实时、完全抢先式优先级的操作系统环境 。 专门面向只有有限资源的硬件系统。 采用模块化设计方式。,2020/7/24,浙江大学计算机学院,29,WinCE 的功能模块,WinCE包含提供操作系统最关键功能的4个模块: 对内核模块 对象存储模块 图形、窗口和事件子系统(GWES)模块 通信模块,2020/7/24,浙江大学计算机学院,30,内核,内核是 OS 的核心,通过 Coredll 模块表示。它提供在所有设备中都出现的基本操作系统功能。 内核负责内存管理、进程管理以及特定文件管理等功能。它还管理虚拟内存、调度、多重任务处理以及异常处理等。 WinCE 的任何配置都需要用到
23、Coredll 模块的大多数组件。 有一些内核组件是可选的,只有在涉及系统功能操作时,才需要这些组件,例如电话技术、多媒体技术以及图形设备接口(GDI)技术等。,2020/7/24,浙江大学计算机学院,31,对象存储,Filesys模块支持WinCE对象存储 API 函数。对象支持的永久性存储器的类型如下表所示。,2020/7/24,浙江大学计算机学院,32,GWES,GWES是用户、应用程序和 OS 之间的图形用户。 GWES通过处理键盘、笔针动作来接受用户输入,并选择传送到应用程序和OS 的信息。 GWES通过创建并管理在显示设备和打印机上显示的窗口、图形以及文本来处理输出。 GWES的中
24、心是窗口。所有应用程序都需要窗口以接收来自 OS 的消息,即使那些为缺少图形显示的设备创建的应用程序也是如此。 GWES 提供控制器、菜单、对话框以及图形显示的设备资源,还提供 GDI 以控制文本与图形显示。,2020/7/24,浙江大学计算机学院,33,通信,通信组件提供对下列通信硬和数据协议的支持: 串行 I/O 支持 远程访问服务(RAS) 传输控制协议/Internet协议(TCP/IP) 局域网(LAN) 电话技术 API(TAPI) WinCE 的无线服务,2020/7/24,浙江大学计算机学院,34,可选组件,除主要模块之外,其它的操作系统模块主要有: 设备管理器和设备驱动程序
25、多媒体(声音)支持模块 COM 支持模块 WinCE 外壳模块 WinCE 提供的每一模块或组件都支持一组可用的相关 API 函数。,2020/7/24,浙江大学计算机学院,35,课程大纲, WINDOWS CE简介 构建WINDOWS CE平台 WINDOWS CE下开发环境 Windows Mobile开发方法,2020/7/24,浙江大学计算机学院,36,配置所需平台(1),新建一个目标平台 选择菜单项“File” -“New Platform Wizard.” 选择“INTEL 815DSTB:X86”平台; “Internet Appliance” 被选来作为一个示例平台设置; 在“
26、Application 在“Platform Settings” 对话框中设置“Build Options”选项卡; 选择“Enable Eboot Space in Memory” 和“Enable Full Kernel Mode.” 注意这次左边的下拉框中一定要选择“Realease“版本,因为实验这一步要直接下载可用的内核镜像文件。,2020/7/24,浙江大学计算机学院,38,配置所需平台(3),配置系统的组件和特性,如下图所示,左边的workspace区显示的你所配置的WinCE操作系统所具有的组件,而右边的catalog区显示的则是该工程中所提供的能够加入到WinCE操作系统的所
27、有组件。,2020/7/24,浙江大学计算机学院,39,构建系统映象文件,选择菜单项 Build- Generate Platform Headers. 选择菜单项 Build-Build Platform. 如果没出任何错误,构建完成后就生成了一个系统映象文件NK.BIN。具体编译链接的时间根据你的宿主机的速度和你所配置操作系统的大小而定。一般要2030分钟。,2020/7/24,浙江大学计算机学院,40,安装Windows CE BSP,1、安装Windows CE,按照提示进行设置,并选择安装路径,安装过程请使用“Custom Setup”,并在“Custom Setup”对话框中按照下
28、图进行设置。,2020/7/24,浙江大学计算机学院,41,安装WINDOWS CE 4.2 BSP,2020/7/24,浙江大学计算机学院,42,Windows CE内核定制实验,1、特性安装(Catalog Installation) 2、创建和编译新项目 3、运行image文件,2020/7/24,浙江大学计算机学院,43,特性安装(Catalog Installation),2020/7/24,浙江大学计算机学院,44,特性安装(Catalog Installation),点击Remove,点击Import,新增加的特性,2020/7/24,浙江大学计算机学院,45,创建和编译新项目,
29、2020/7/24,浙江大学计算机学院,46,创建和编译新项目,定制应用程序支持,2020/7/24,浙江大学计算机学院,47,创建和编译新项目,定制网络和通讯连接,2020/7/24,浙江大学计算机学院,48,创建和编译新项目,2020/7/24,浙江大学计算机学院,49,创建和编译新项目,点击”Build”-”Build Platform”菜单开始编译,编译成功,2020/7/24,浙江大学计算机学院,50,创建和编译新项目,1、如果编译成功WINCE420PUBLICSMDK2410RelDirSAMSUNG_SMDK2410_ARMV4Release目录下将生成nk.bin、nk.nb
30、0等文件。 nk.nb0:是一个可以直接运行的WinCE映像文件,直接拷贝到SDRAM中就可以运行。 nk.bin:被称为Windows CE binary image data format文件格式,是一种包含了多个独立纪录(Section)的二进制文件。在加载的时候,需要分别加载,不同的Section加载到不同的地方。 所以nk.bin需要Bootloader进行解释性加载。但是它的Size会比nk.nb0小。可以使用viewbin命令查询NK.bin中的纪录信息。 viewbin rec nk.bin,2020/7/24,浙江大学计算机学院,51,运行image文件,1、设置并建立tft
31、p服务器 设置之前请将您的注意的IP地址修改为192.168.x.xxx。 下载和运行image文件需要首先在主机端建立tftp服务器,在Windows环境中建立tftp服务器。运行后请点击“Browse”按钮选择tftp服务器目录。,2020/7/24,浙江大学计算机学院,52,通过uboot下载nk.nb0,1、首先将nk.nb0拷贝到tftp服务器目录,2020/7/24,浙江大学计算机学院,53,WINCE端设置,1、运行WINCE 2、按照如下提示在WINCE中进行设置: 打开【我的电脑】-【控制面板】-【网络和拨号连接】-【新建连接】,并在“新建连接”设置对话框中,选择连接类型为“
32、直接连接”,并点击“下一步”按钮。 系统将弹出一个“设备对话框”,在该对话框的“选择设备”下拉列表中选择“S3C2410 USB CABLE:”,然后点击“完成”按钮。这时将在“连接”中添加“我的连接”图标。 回到“控制面板”,点击【PC连接】图标,进入“PC连接属性”设置对话框,选中“启用与桌面计算机的直接连接”的复选框,然后再点击“更改连接”按钮,在“更改连接”设置对话框的下拉列表框中选择刚才建立的连接“我的连接”,然后按“OK”按钮退出。,2020/7/24,浙江大学计算机学院,54,系统加载,Bootloader的概念就是一个用于引导的loader,在系统上电的时候最先被运行,然后对硬
33、件平台做最基本的初始化,最后把操作系统加载起来。不同的嵌入式操作系统都有自己的Bootloader,但是本质功能都是一样的。 在WinCE中用的最多的就是EBOOT,是一个基于网络的Bootloader,而且可以根据需要带有命令行菜单功能,网络调试功能以及文件系统的相关功能。一般基于不同的硬件设计,会有不同的引导方式。,2020/7/24,浙江大学计算机学院,55,EBOOT,在WinCE中EBOOT一个作用可以加载WinCE image,还可以通过网络配合Platform Builder下载WinCE image进行调试。 在开发一个新的BSP的时候,首先会基于一个相似的平台的BSP进行克隆
34、,然后要做的就是要开发和调试EBOOT了。,BLCOMMON:相当于EBOOT的一个基本框架,主要完成bootloader相关内存的分配,解析NK.bin文件并进行效验,初始化平台,通过网络下载image等功能。 OEM Code:主要是基于硬件平台,为BLCOMMON提供相应的接口函数,帮助完成相应的功能。 Eboot:一个小的网络协议栈,为网络下载image提供DHCP,TFTP,UDP等网络服务功能。 Network Driver:硬件平台的网络驱动部分,支持上层的网络功能。 Bootpart:为Flash设备提供分区功能,bootloader可以创建一个BinFS分区和一个文件系统分区
35、。还可以用它来创建一个引导分区用来存放引导参数。 Flash Memory:硬件平台的Flash驱动。,2020/7/24,浙江大学计算机学院,56,下载镜像文件并运行该系统(1),由于使用的是CEPC平台,我们并不直接使用BOOTLOADER下载,而是用MSDOS +LOADCEPC的方式先行启动WINCE的BOOTLOADER文件EBOOT.BIN,然后EBOOT再来加载真正的映象文件NK.BIN。并且该EBOOT仅仅具有加载并启动内核映象的功能。,2020/7/24,浙江大学计算机学院,57,下载镜像文件并运行该系统(2),启动EIA目标机,在启动的同时按F8键,然后在显示的菜单中选择5
36、,直接使用DOS启动而不进入WIN98系统。 DOS启动后在选择画面中直接选择“CPECDOWNLOAD”,显示一段信息后,屏幕将显示”JUMP TO XXX”,这表明EBOOT已经开始工作,并广播”BOOTME”信息包。 在宿主机这边,选择”Target”-”Configure Remote connection” 在弹出的对话框的SERVICE选项卡中配置“Download”和“KITL Transport”的方式。,2020/7/24,浙江大学计算机学院,58,下载镜像文件并运行该系统(3),均选择ETHERNET方式,并点击右边的按钮打开CONFIG 对话框。正常的话可以在“AVAIL
37、ABLE DEVICES”编辑框中看到一些字符串,那就是目标平台所广播的”BOOTME”信息包中的平台名字。选择你的目标平台的名字使它出现在上边的”SELECTED DEVICE”编辑框即可。 选择“Target”-”Download “Enable KITL”; 下载过程和第三步所讲的流程一致。 在下载完后,注意观察PLATFORM BUILDER,它将弹出调试窗口。你可以使用这些调试手段来控制目标平台上WINDOWCE 操作系统的运行。,2020/7/24,浙江大学计算机学院,60,课程大纲, WINDOWS CE简介 构建WINDOWS CE平台 WINDOWS CE下开发环境 Wind
38、ows Mobile开发方法,2020/7/24,浙江大学计算机学院,61,EVC简介,EVC是开发基于WinCE平台上应用程序的软件集成开发环境。 根据每个硬件应用平台的不同,需要不同SDK(Software Development Kit)的支持。,2020/7/24,浙江大学计算机学院,62,EVC开发指南,如何在EVC集成开发环境配置针对某一WinCE硬件的SDK的步骤; 在EVC集成开发环境中编写应用程序; 在EVC集成开发环境中如何调试、运行应用程序。,2020/7/24,浙江大学计算机学院,63,用EVC开发一个简单应用程序(1),新建一个EVC工程件:点击Filenew菜单,会
39、出现如下画面,如下图所示:新建一个基于对话框的简单的应用程序,2020/7/24,浙江大学计算机学院,64,用EVC开发一个简单应用程序(2),选择WCE Application ,输入新建的工程文件名并且选择工程文件 需要保存的路径,在CPUs列表框,选择前两个选项,点击OK按钮, 进入下一个画面,2020/7/24,浙江大学计算机学院,65,用EVC开发一个简单应用程序(3),选择A typical “hello World!” application 按钮,然后点击“Finish”按钮,就可以进入下一个画面了,如图10所示:,2020/7/24,浙江大学计算机学院,66,用EVC开发一个
40、简单应用程序(4),点击“OK”按钮,就可以进入下一个画面了,如图所示。至此,已经用EVC开发出了一个基于WinCE平台下面的Hello World 应用程序了,2020/7/24,浙江大学计算机学院,67,EVC中利用ActiveSync进行调试(1),在EVC中很多调试工具都是要通过ActiveSync进行调试的,譬如Tools菜单栏下面的很多工具都是可以调试目标机的,如图:,2020/7/24,浙江大学计算机学院,68,EVC中利用ActiveSync进行调试(2),下面展示对应的“Remote Zoomin”工具,是用来采集目标机桌面图像的,可以用于远程调试或者截图使用,如图:,202
41、0/7/24,浙江大学计算机学院,69,其他调试工具,查看目标机线程 查看目标机注册表 与Visual C+的用途比较类似。,2020/7/24,浙江大学计算机学院,70,课程大纲, WINDOWS CE简介 构建WINDOWS CE平台 WINDOWS CE下开发环境 Windows Mobile开发方法,2020/7/24,浙江大学计算机学院,71,2020/7/24,浙江大学计算机学院,72,Windows Mobile介绍,Windows Mobile是基于Windows CE的一个移动智能设备品牌,不是产品名称 使用Windows Mobile品牌的产品有两个,Pocket PC和S
42、martphone Pocket PC是基于Windows CE的PDA专用平台。 martphone则是基于Windows CE,并且增加了通信等模块,为智能手机专门开发的平台。,2020/7/24,浙江大学计算机学院,73,关系,Windows Embedded,Windows Mobile与Windows CE之间的关系,2020/7/24,浙江大学计算机学院,74,基于Smartphone的托管应用程序(1),打开Visual Studio 2005 选择File - New - Project打开新项目向导 在新项目向导中选择Visual C# - Smart Device- Sma
43、rtphone 2003。选择Device Application。,2020/7/24,浙江大学计算机学院,75,基于Smartphone的托管应用程序(2),Visual Studio 2005会为我们生成托管框架代码。 使用Form编辑器编辑图形界面,2020/7/24,浙江大学计算机学院,76,基于Smartphone的托管应用程序(3),修改Visual Studio 2005生成的框架代码 编译应用程序。选择Build - Build Solution 来编译整个系统。,2020/7/24,浙江大学计算机学院,77,修改Visual Studio 2005生成的框架代码(1),us
44、ing System; using System.Drawing; using System.Collections; using System.Windows.Forms; using System.Data; namespace DeviceApplication2 / / Summary description for form. / public class Form1 : System.Windows.Forms.Form private MenuItem menuItem1; private MenuItem menuItem2; private MenuItem menuItem
45、3; private System.Windows.Forms.MainMenu mainMenu1; public Form1() InitializeComponent(); ,2020/7/24,浙江大学计算机学院,78,修改Visual Studio 2005生成的框架代码(2),protected override void Dispose(bool disposing) base.Dispose(disposing); private void InitializeComponent() this.mainMenu1 = new System.Windows.Forms.MainM
46、enu(); this.menuItem1 = new System.Windows.Forms.MenuItem(); this.menuItem2 = new System.Windows.Forms.MenuItem(); this.menuItem3 = new System.Windows.Forms.MenuItem(); / / mainMenu1 / this.mainMenu1.MenuItems.Add(this.menuItem1); this.mainMenu1.MenuItems.Add(this.menuItem2); / / menuItem1 / this.me
47、nuItem1.Text = Hello;,2020/7/24,浙江大学计算机学院,79,修改Visual Studio 2005生成的框架代码(3),this.menuItem1.Click += new System.EventHandler(this.menuItem1_Click); / menuItem2 this.menuItem2.MenuItems.Add(this.menuItem3); this.menuItem2.Text = Edit; / menuItem3 this.menuItem3.Text = Exit; / Form1 this.ClientSize = n
48、ew System.Drawing.Size(176, 180); this.Menu = this.mainMenu1; this.Text = Form1; static void Main() Application.Run(new Form1(); private void menuItem1_Click(object sender, EventArgs e) MessageBox.Show(Hello world, Msg); ,2020/7/24,浙江大学计算机学院,80,Windows CE.NET的嵌入式特点,高度模块化 具有一个较小的核NK 调度 内存管理 核心API 其余功
49、能载单独模块中实现 系统可配置 核 文件系统 图形用户界面 设备管理 服务管理,2020/7/24,浙江大学计算机学院,81,可配置性,在创建OS镜像过程中 OS核心 内存中文件系统 存储的程序和文档 系统配置文件 注册表数据库,2020/7/24,浙江大学计算机学院,82,可配置性(2),创建过程的四个阶段 CESYSGEN 根据项目配置产生基本的系统配置文件 BSP 编译链接包括在BSP以及OAL的代码 BUILDREL 文件拷贝 MAKEIMG 构造镜像文件,2020/7/24,浙江大学计算机学院,83,平台创建,创建 组件选择 BSP Internet Appliance Applic
50、ation & Media Networking & Communications,2020/7/24,浙江大学计算机学院,84,动态链接库,动态链接库 Dynamic Link Library缩写为DLL 磁盘文件 作为共享函数库的可执行文件 使进程可以调用不属于本身可执行代码中的函数 函数的可执行代码位于一个独立的动态链接库文件 节省内存 节省磁盘存储空间 使程序易于升级。,2020/7/24,浙江大学计算机学院,85,动态链接库(2),动态链接库包含 全局数据 编译过的函数和资源 二进制模块 编译后装入 导出函数 客户程序导入 系统进行导出导入的匹配,2020/7/24,浙江大学计算机学
51、院,86,DLL入口函数,每一个DLL必须有一个入口点 缺省为DllMain 初始化 结束工作 动态库输出函数约定 调用约定 名字修饰约定。,2020/7/24,浙江大学计算机学院,87,Windows CE.NET的加载,源代码loader.c 实现NK核心载入EXE和DLL进程 用户程序对EXE和DLL程序操作的入口 由API实现 EXE和DLL的加载函数 EXE和DLL的卸载函数,基于ARM和WINCE的开发,2020/7/24,浙江大学计算机学院,89,目录,1、安装Windows CE BSP 2、Windows CE内核定制 3、WINCE和桌面系统通讯 4、Windows CE应用程序编写,2020/7/24,浙江大学计算机学院,90,activeSync安装 Microsoft eMbedded Visual Studio,2020/7/24,浙江大学计算机学院,91,建立Hello
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学一年级下册无纸笔期末综合素养测试闯关
- 南昌高考后迎来“学车热南昌学车考驾照报名”约考“秘籍”
- 山西省晋城市陵川县达标名校2026届中考猜题物理试卷含解析
- 江西省分宜县重点名校2026届中考联考物理试卷含解析
- 辽宁省抚顺县2026年中考五模物理试题含解析
- 2026届浙江省宁波市奉化区重点名校中考物理适应性模拟试题含解析
- 山东省牡丹区胡集中学2026届中考四模物理试题含解析
- 平凉市崆峒区2025届数学四下期末联考试题含答案解析
- 常德市汉寿县2025届数学四年级下学期期中学业水平测试模拟试题(含答案)
- 湖南省邵东县2026届中考五模物理试题含解析
- 2026化学高考广西考试真题及答案
- 2026年辽宁锦州海通实业有限公司计划招录28人笔试备考试题及答案详解
- 2026年山东高考地理试卷附答案(新课标卷)
- 2026年黑龙江高考英语含解析及答案(新课标卷)
- 《煤矿重大事故隐患判定标准》(2026版)解读
- 泌尿系造口护理专家共识(2026版)
- 激励相容设计
- 天津交通数字科技有限公司招聘笔试题库2026
- 2025河北省中考真题数学试题(解析版)
- 2026年4月自考14492学前儿童发展的观察与评价试题
- 2026人教版三年级下册道德与法治期末复习知识点总结梳理+教材问答解答
评论
0/150
提交评论