欢迎来到天天文库
浏览记录
ID:36255981
大小:269.55 KB
页数:30页
时间:2019-05-07
《基于windowsce的嵌入式应用程序开发实例》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第6章基于WindowsCE的嵌入式应用程序开发实例备注前面一章是介绍在于VS2005下的开发环境,Wince6.0的PB不像Wince5.0是独立的,而是作为VS2005的插件,以后建立和定制OS,编译调试全部都在VS2005下完成。本章实训一和实训二介绍Wince5.0的嵌入式软件开发环境搭建方法。6.1概述本章将从嵌入式软件工程师的角度,着重介绍基于WindowsCE的嵌入式系统开发流程和嵌入式应用程序开发。首先介绍开发平台和开发环境的搭建,然后介绍基于WindowsCE的嵌入式系统开发流程,最后以实训的方式由浅入深地引导初学者能够
2、熟练地进行基于WindowsCE的嵌入式系统应用程序开发。本章主要要求掌握下面三部分内容:(1)用PB定制WindowsCE操作系统内核映像,并下载到开发板上运行(2)导出所定制内核的SDK,并安装到EVC中(3)用EVC开发WindowsCE上的应用程序,并下载到开发板上或用模拟器运行6.2基于WindowsCE嵌入式应用程序开发环境随着编译技术、处理器和内存的不断发展,采用高级语言设计应用程序变得通用起来,本章介绍的EVC就是嵌入式专用的VC语言,是一种高级语言用于嵌入式系统应用程序的开发。6.2.1硬件资源硬件资源包括:(1)PXA
3、255实验箱一个;(2)PC一台;(3)交叉串口线一根;(4)网线一条;(5)USB连接线一根(可选)。6.2.2软件资源软件资源包括:(1)MicrosoftPlatformBuilder4.2;(2)实验箱的BSP安装包;(3)MicrosoftEVC4.0withSP4;(4)MicrosoftActiveSync3.7(可选)。注意:在阅读后续章节内容之前,应该准备好以上的硬件资源,并在PC上安装好PB、BSP、EVC等软件。基于WindowsCE的嵌入式应用程序开发流程(1)元器件选型;(2)原理图编制;(3)印制板设计;(4)
4、样板试制;(5)硬件功能测试;(6)编写引导程序;(7)操作系统移植;(8)驱动程序编写;(9)API设计与开发;(10)支撑软件设计与调试;(11)应用程序设计与调试;(12)系统联合调试;(13)样机交付。从中可以看到,开发一个嵌入式系统要考虑整个系统的软硬件设计中的各个问题。本书先向初学者介绍在PC上开发嵌入式应用软件的流程。开发者只需要上述步骤中的两个:(1)应用程序设计与测试;(2)系统联合调试;如果在PC平台上开发一个带有硬件的应用系统,则开发流程为:(1)硬件系统(适配卡)与接口设计;(2)驱动程序开发;(3)应用程序设计与
5、测试;(4)系统联合调试。下面将从最基本的环境搭建开始,以实训的形式非常详细地带领初学者进入嵌入式应用程序的开发中来。实训一和实训二是后续开发的基础,不能跳过,如果把实训样例都能认真独立做完,那么对嵌入式应用程序的开发就能达到一个系统掌握的水平。对于没有PXA255实验箱的学习者,可以在PC上使用模拟器进行实训,这在实训二中进行了详细说明。6.4.1实训一 定制操作系统内核一、实验目的(1)熟悉PlatformBuilder集成开发环境;(2)掌握使用PlatformBuilder的NewPlatformWizard创建一个新的平台;(3
6、)掌握根据需要对该平台进行裁减和自定义;(4)掌握构建系统的配置选项的设置和连接配置选项的设置;二、实验内容(1)使用模板创建新平台;(2)客户化定制;(3)构建内核映像;(4)下载内核映像到开发板上运行;6.4.2实训二 用EVC开发应用程序一、实验目的(1)熟悉EVC集成开发环境;(2)掌握使用PlatformBuilder的SDK工具导出定制内核的SDK开发包。二、实验内容:(1)定制操作系统内核后导出SDK;(2)用EVC开发一个简单的应用程序。6.4.3实训三WindowsCE.NET动态链接库一、实验目的掌握动态链接库的创建和
7、应用。二、实验内容创建一个动态链接库,通过API实现NK核心载入和卸载EXE和DLL进程,我们所实现的是调用动态链接库。三、实验原理:开发人员使用API函数手工加载和卸载DLL,以达到调用DLL的目的,动态调用较之静态调用,在使用上更为复杂,但却能更加有效地使用内存,因此是编制大型应用程序的重要方式。动态调用是指在应用程序中使用LoadLibrary函数或MFC提供的AfxLoadLibrary函数然后再使用GetProcAddress()获取所需引入的函数,使用完毕之后需要释放。DLL(DynamicLinkableLibrary)的概
8、念:可以简单地把DLL看成一种仓库,它提供给你一些可以直接拿来用的变量、函数或类。在仓库的发展史上经历了“无库-静态链接库-动态链接库”的时代。静态链接库和动态链接库都是共享代码的方式,如果采
此文档下载收益归作者所有