版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第三章 应用程序开发总览,Windows CE是为适应嵌入式而推出的新型操作系统 被广泛应用于掌上电脑、智能手机、汽车电子、信息终端等领域,嵌入式开发流程的基本流程,需求分析 设计阶段 开发实现,1、需求分析,系统功能部分 系统功能、系统输入、系统输出等 非功能部分 名称、成本要求、物理尺寸大小等,(1)系统功能部分分析 确定输入:输入了是什么,输入方式,是否需要前期处理,物理量的范围是否确定 确定输出:是否需要驱动哪些外部设备,输出范围是什么 通过输入端取得的数据是否需要经过处理;数据需不需要进行存储;数据处理后要不要送到输出端,(2)系统非功能部分分析 嵌入式系统被应用的环境(温度、湿度、
2、电磁干扰、电源供应) 价格限制,2、设计阶段,系统架构设计 描述系统如何实现所述的功能和非功能需求,包括对硬件、软件和执行装置的功能划分,以及系统的软件功能划分等 硬件/软件协同设计 硬件架构 软件架构,软件设计,硬件设计,系统架构设计,许多嵌入式系统通过画出系统的功能块图来描述系统,以此来说明系统的功能分配 在设计时还需考虑目前已有的技术、尚需开发的技术及从第三方购得的技术,系统设计,尚需开发的技术,已经具有的技术,可从第三方购得的技术,系统整合与调试,硬件架构,处理器的选择 处理性能 技术指标 功耗 软件支持工具 是否内置调试工具 硬件选择的其他因素:生产规模(大的话可以自己设计和制造硬件
3、),软件架构,操作系统的选择 操作系统提供的开发工具 操作系统向硬件接口移植的难度 操作系统的内存要求 开发人员是否熟悉此操作系统及其提供的API 操作系统是否提供硬件的驱动 系统的可裁剪性 操作系统的实时性能,编程语言 通用性 可移植性程度 执行效率 可维护性,集成开发环境(IDE) 嵌入式系统通常是一个资源受限的系统,因此直接在嵌入式系统的硬件平台上编写软件比较困难,一般需要交叉开发环境(在通用计算机上编写程序,然后通过交叉编译,生成目标平台上可以运行的代码),3、开发实现,搭建嵌入式系统开发环境,Bootloader的编写与移植,嵌入式操作系统内核的移植,建立根文件系统,设备驱动程序开发
4、,应用程序开发,工具和技术 常规的应用开发步骤 Windows CE 编程特点 Windows Mobile开发 Pocket PC Smartphone 模拟器概述,目录,工具和技术 常规的应用开发步骤 Windows CE 编程特点 Windows Mobile开发 Pocket PC Smartphone 模拟器概述,什么是应用程序开发,在特定的Windows CE 平台下 使用该平台的编程接口实现各种功能 平台的价值依赖于运行在其上的应用程序,Windows CE 应用程序开发工具,Platform Builder Embedded Visual C+ Visual Studio 20
5、05,Platform Builder,Platform Builder,支持Win CE App / DLL / Lib,使用Win32 API开发 应用程序将被链接到OS内核中 一旦修改代码,必须再重新编译镜像 容易调试OS内核, 不容易调试应用程序 首先必须创建一个debug版的OS Debug Zone,Embedded Visual C+,Embedded Visual C+,支持 Win CE App / DLL / COM / Lib using Win32 API, MFC, ATL and STL 与Visual C+ 6.0具有相似的工程管理模式和用户界面 易于调试和测试
6、必须安装相应的为特定平台开发的SDK,从而开发相应的应用程序,应用程序开发选择,Visual Studio 2005,C# or VB .NET,.NET Compact Framework 2.x,C or C+,Win32 Applications,Windows CE Operating System,C or C+,Win32 Applications,Platform Builder,相关技术 - 你有哪些选择?,Win32 Microsoft Foundation Class (MFC) .NET Compact Framework,相关技术 - 对大小的影响,* 该测试是基于In
7、ternet Appliance“ 平台,Win32 API,微软32位Windows平台的应用程序编程接口。,MFC和ATL,基于C+语言的面向对象的程序设计框架 封装 继承 虚拟函数和多态,.NET Compact Framework,通过.NET Framework和VS可以创建Windows应用程序和Web应用程序,相关技术 - 开发和执行时间,相关技术 - 结论,确定使用何种模式取决于你是否使用了哪种语言来开发程序, 以及系统对操作系统镜像大小的要求,同时还要考虑其他因素,如应用程序开发速度以及系统的可靠性和兼容性等。 你可以根据项目的工作层来整合和匹配代码,如工作在:驱动中的Win
8、32,Win32,MFC或者终端用户程序的C#/VB,开发人员可以充分利用他们在桌面windows下的开发经验来快速开发Windows CE产品。,目录,工具和技术 常规的应用开发步骤 Windows CE 编程特点 Windows 移动开发 Pocket PC Smartphone 模拟器概述,常规的应用开发步骤:,获得特定Windows CE平台的SDK. 在Windows CE 模拟器上编辑和调试代码. 在实际目标平台上,编译、运行程序, 如果需要在设备上调试程序,可以通过 ActiveSync.,第一步 : 获得 SDK,SDK是用于在EVC和Visual Studio下开发 应用程序
9、的 获得SDK的两种方法 微软或第三方提供 为自己的平台导出SDK Microsoft提供: Standard SDK (Common SDK dev) Windows Mobile SDK (Pocket PC),PB下的SDK向导,它是一个工具,用来产生和导出特定平台的SDK(software development kit ) 。被导出的SDK由头文件、库文件、运行文件、平台的外延和帮助文件等组成。 应用程序开发人员可以利用这个SDK去关联Microsoft embedded Visual C+ 4.0 或 Microsoft Visual Studio .NET,为特定平台开发应用。
10、Platform - Configure SDK Platform - Build SDK,PB、SDK和开发工具间的关系图,第二步 : 在模拟器下编程和调试,与 Visual C+ 6.0 and Visual C+ .NET类似 取决于你的 Windows Programming 知识,平台管理器(Platform Manager),它是一种通讯机制,用来管理宿主机和目标机之间的通讯。 平台管理器允许宿主机上的开发工具以介质无关的方式下载和连接目标机, PB, EVC 4.0, 和 Microsoft .NET Compact Framework 使用平台管理器下载诸如应用、MS Acti
11、veX控件、实时运行库和远程客户端工具等到目标机上。,远程工具,你可以在宿主机上远程执行位于目标机上的各种程序 不同的平台支持不同的远程工具 位于PB和EVC的Tools 菜单下 开发者可以使用相应的接口和APIs产生新的远程工具,第三步 : 在目标机上的运行和调试,根据目标机使用的CPU编译程序 下载这个可执行文件到目标机上,然后运行该可知行文件 如果需要,使用ActiveSync 一步一步调试程序,介绍ActiveSync,ActiveSync提供了一种支持,用来同步基于桌面Windows系统和基于CE.NET的便携式系统间的数据,它使用时间标记(stamps)和用户参数来跟踪两个系统间的
12、数据改变,并传送相应的数据使得每个系统上的数据都是最新的,过时的或者冗余的数据会被删除。 ActiveSync支持USB, 红外,调制解调器, 以及 Ethernet 等多种连接。 ActiveSync 不支持CE设备间的数据同步,也不支持CE设备和服务器间的数据同步。,ActiveSync工作模式,使用ActiveSync调试,安装ActiveSync(从Microsoft网站获得) 宿主机和目标机间提供至少以下一种连接 Serial USB Infrared Modem Ethernet 在EVC下选择“Windows CE Device” in EVC,调试运行在目标机上的程序,BSP、
13、BOOTLOADER、SDK,BSP(Board Support Package):板级支持包,介于主板硬件和操作系统之间的一层软件系统,严格意义上来说BSP应该属于操作系统的一部分。,BSP:抽象操作系统与硬件之间的交互接口 注意: BSP与特定的嵌入式操作系统相关 BSP与开发板一一对应,BSP结构,BSP,OAL,Boot loader,驱动程序,配置文件,软件开发板,包含配置信息的文本文件,通常与操作系统映像或源代码有关,Boot loader,Boot loader(引导程序):在硬件开发板上执行的一段代码,主要功能是初始化硬件,加载操作系统映像到内存,然后跳转到操作系统代码去执行。
14、 可通过不同方法获得:串口、USB、以太网等,SDK,SDK (Software Development Kit ):软件开发工具包 ,是一系列头文件、库文件、文档、平台管理器和运行时库的总称。应用开发人员可以使用SDK为某个特定的平台开发应用程序,安装PB和相应的BSP,在BSP的基础之上建立工程,进行CE定制。 Bootloader为BSP的一部分,主要是系统映像的加载引导 SDK在基于BSP生成的:定制完成后,先要编译成功,然后才能生成SDK。,SDK用于应用程序开发 ,安装于vs或evc BSP包用于定制系统,是板级支持包,生成系统后,可以通过platform builder制作SDK
15、,用于应用程序开发,Windows CE定制流程图,得到并安装BSP,定制操作系统,下载到开发板 上运行调试,发布操作系统,应用程序开发的流程,安装SDK,编码调试,发布应用程序,导出SDK,SDK设置,目录,工具和技术 常规的应用开发步骤 Windows CE 编程特点 Windows 移动开发 Pocket PC Smartphone 模拟器概述,目录,工具和技术 常规的应用开发步骤 Windows CE 编程特点 Windows Mobile开发 Pocket PC Smartphone 模拟器概述,介绍 Windows Mobile,Windows Mobile是微软为Pocket P
16、Cs和Smartphones开发的软件平台 Windows 移动延伸到微软的桌面系统和个人设备,Windows 移动家族,Pocket PC Smartphone Windows 汽车电子,Smartphone,Pocket PC,为什么要开发Windows 移动,移动设备的市场越来越大 截止2008, 将会有超过10亿集成设备和2亿的移动手机用户(IDC, 2004). Pocket PC已经是PDA市场的龙头,超过Palm Smartphone的快速发展,Windows Mobile的特点,Microsoft提供了平台和SDK OEMs 提供硬件 开发人员不能修改Platform 特性,W
17、indows 移动开发第一步: 下载和安装 SDKs,URL: ,Windows 移动开发第二步 : 开发、调试,运行,参考前面的部分,你需要知道什么,1. 只能使用 Unicode字符集 a. ANSI 是一个字节, UNICODE 是两个字节 b. 声明: CHAR-WCHAR or TCHAR c. 字符串函数: strlen( )-wcslen( ) strcmp( ) - wcscmp( ),你需要知道什么 (2),2. 注意内存的使用 减少静态和全局变量的使用 注意函数的递归 注意图片、视频文件的大小 检查动态内存的分配情况,你需要知道什么 (3),3. 检查屏幕分辨率 62024
18、0、240320 .,屏幕分辨率例子,我们在哪?,目录,工具和技术 常规的应用开发步骤 Windows CE 编程特点 Windows 移动开发 Pocket PC Smartphone 模拟器概述,概述,仿真器是一个用来模拟支持Windows CE平台的硬件行为的工具。 使用仿真器,你不需要硬件就可以设计、建立和测试一个CE平台,它是用软件的形式来实现对硬件平台的模拟。 用软件模拟硬件。,使用场景,平台开发 DMA 的支持 支持 KITL,可以调试OS 应用开发 用你的SDK发布它 在真实的环境上运行前,测试你的应用,模拟器的限制通讯和网络,模拟器要运行在NAT连接上 拨号连接不支持模拟器 不能建立 Remote Desktop Protocol (RDP) 不支持: IrDA Bluetooth 802.11,模拟器的限制硬件限制,Universal serial bus (USB)设备 PC Card 设备 存储设备, 包括CF卡和硬盘
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025内蒙古润蒙能源有限公司招聘22人笔试历年常考点试题专练附带答案详解
- 野生动物栖息地保护项目使用林地可行性报告
- 2025兴业银行乌鲁木齐分行校园招聘笔试历年典型考题及考点剖析附带答案详解2套
- 2025交通银行湖北省分行校园招聘笔试历年典型考题及考点剖析附带答案详解
- 清洗服务项目职业病危害评价
- 企业新员工入职培训方案
- 企业课程标准制定方案
- 企业负债率控制方案
- 临时展会施工交通组织评价
- 公司资金运维保障方案
- 【8历期末】安徽省合肥市庐阳区2022-2023学年八年级下学期期末历史试题(含解析)
- 国开2024年《机械设计基础》形考任务1-4答案
- 我国牛病流行的现状及对策
- 中考前安全教育主题班会
- 城市地下管网的维护与改造要点
- 20G361 预制钢筋混凝土方桩
- 2024年云南省三校生高考铁道运输类《铁道概论》考试题库大全-上(单选题汇总)
- 2023年辽宁省沈阳134中学中考物理模拟试卷(6月份)(含解析)
- 二元匀晶相图(V18版)
- 金属陶瓷基复合材料
- HIMSS评级对中国医院信息化的借鉴意义
评论
0/150
提交评论