长江大学嵌入式课设.docx
- 文档编号:12631644
- 上传时间:2023-04-21
- 格式:DOCX
- 页数:53
- 大小:2.27MB
长江大学嵌入式课设.docx
《长江大学嵌入式课设.docx》由会员分享,可在线阅读,更多相关《长江大学嵌入式课设.docx(53页珍藏版)》请在冰豆网上搜索。
长江大学嵌入式课设
嵌入式操作系统
WinCE的移植及应用程序设计
指导教师:
王剑
专业班级:
计科11103班
姓名:
张智慧
学号:
201103327
班内序号:
29
设计时间:
2014.5.26-2014.6.9
设计地点:
硬件技术实验室(4号楼3号机房)
一、设计目的4
二、设计要求4
2.1.功能要求4
2.2.设计所需设备与工具4
三、设计内容4
3.1.嵌入式操作系统系统基础知识4
3.2.嵌入式操作系统WindowsCE平台的搭建(必做)5
3.3.IO接口控制-七段数码管和LED显示控制程序设计(必做)5
3.4.IO接口控制-电机控制设计(必做)5
3.5.编写实用小程序并在指定WindowsCE平台上运行调试(选做)5
四、实验具体步骤5
4.1嵌入式WindowsCE介绍5
4.1.1.嵌入式操作系统WindowsCE的特点5
4.1.2.WindowsCE的主要模块及各自的功能7
4.2.嵌入式操作系统WindowsCE平台的搭建(必做)8
4.2.1安装XSBase270的BSP8
4.2.2实验平台的配置10
4.2.3下载内核镜像13
4.2.4ActiveSync的使用17
4.3.IO接口控制-七段数码管和LED显示控制程序设计(必做)20
4.3.1程序设计原理20
4.3.2程序操作步骤22
4.3.3程序结果截图25
4.4.IO接口控制-电机控制设计(必做)26
4.4.1程序设计原理26
4.3.2程序操作步骤31
4.3.3程序结果截图32
4.5.编写实用小程序并在指定WindowsCE平台上运行调试(选做)32
4.5.1程序思路32
4.5.2程序代码32
4.5.3程序结果截图33
五、课设小结33
一、设计目的
1.了解嵌入式系统、嵌入式操作系统,掌握基于嵌入式系统的应用开发基本知识。
2.了解嵌入式操作系统WindowsCE的特点,WindowsCE的主要模块及各自的功能。
掌握嵌入式操作系统WindowsCE的配置、编译、移植方法。
3.了解VisualStudio.NET开发环境,掌握基于WindowsCE平台的应用程序设计方法。
二、设计要求
2.1.功能要求
安装XSBase270实验开发平台的BSP;在嵌入式操作系统WindowsCE平台定制的集成开发环境PlatformBuilder(PB)上定制内核,编译和调试并生成内核映像文件,下载并运行编译好的WindowsCE系统;在VS.NET中编写对XSBase270目标板上LED和七段数码管的控制程序,下载运行程序。
2.2.设计所需设备与工具
①装有PlatformBuilder、VisualStudio.NET开发环境,有并口、串口和USB接口的PC机一台。
②XSBase270实验开发平台一套。
三、设计内容
3.1.嵌入式操作系统系统基础知识
嵌入式操作系统系统基础知识,基于WindowsCE的应用开发环境的建立和程序设计方法。
介绍嵌入式操作系统WindowsCE的特点,了解WindowsCE的主要模块及各自的功能。
了解微软提供给WindowsCE开发人员进行基于WindowsCE平台下嵌入式操作系统定制的集成开发环境PlatformBuilder(PB),掌握通过交互式的环境来设计和定制内核、选择系统特性,然后进行编译和调试的全过程。
了解BSP在嵌入式系统中位置及其作用。
介绍在嵌入式操作系统WindowsCE上搭建嵌入式应用开发环境的方法,在VisualStudio.NET中建立移动设备开发工程、程序调试以及下载运行的方法。
3.2.嵌入式操作系统WindowsCE平台的搭建(必做)
安装XSBase270实验开发平台的BSP。
根据XSBase270实验开发平台的特点和系统需求,利用PlatformBuilder集成开发环境配置WindowsCE操作系统的特性和功能。
编译、链接操作系统内核,生成系统映像文件。
下载并运行编译好的WindowsCE系统。
3.3.IO接口控制-七段数码管和LED显示控制程序设计(必做)
了解WindowsCE下I/O访问机制和原理。
了解LED和七段数码管的显示和控制原理。
掌握WindowsCE下访问硬件I/O寄存器的方法,以及使用VisualStudio.NET对硬件设备编程的一般方法。
3.4.IO接口控制-电机控制设计(必做)
了解WindowsCE下I/O访问机制和原理。
掌握WindowsCE下访问硬件I/O寄存器的方法,以及使用VisualStudio.NET对硬件设备编程的一般方法。
3.5.编写实用小程序并在指定WindowsCE平台上运行调试(选做)
四、实验具体步骤
4.1嵌入式WindowsCE介绍
4.1.1.嵌入式操作系统WindowsCE的特点
①精简的模块化操作系统
WindowsCE是高度模块化的嵌入式操作系统,正因如此,用户可以为了满足特定的要求而对操作系统进行定制。
在用户定制的操作系统中,不需要的模块可以被拿走,只有所需的模块才会被包含进来。
因为WindowsCE的可裁减性,WindowsCE的体积也非常小。
一个最小的可运行WindowsCE内核只占200KB左右。
增加网络支持需要800KB。
增加图形界面支持需要大概4MB。
如果增加InternetExplorer支持,需要额外的3MB。
这样就可以充分适应一些硬件资源不足的嵌入式设备的要求。
值得注意的是体积小并不意味着WindowsCE的功能单一。
如果把WindowsCE的所有可选功能都加进来。
功能完全可以与Windows9X系列相媲美。
②多硬件平台支持
嵌入式系统的专用性特点决定了嵌入式系统的硬件设备必定是多种多样的。
为了适应嵌入式系统的要求,WindowsCE支持在多种不同的CPU硬件平台上运行,包括x86,ARM,MIPS,SuperH等嵌入式领域主流的CPU结构。
③ 支持有线和无线的网络连接
WindowsCE不但支持传统的有线网络连接,还支持各种无线网络标准,包括蓝牙,红外,802.11等。
我们可以基于WindowsCE构建有扩展性的无线平台,将移动设备彼此连接或连接到现有的设备上。
我们也可以通过网络进行远程登陆、验证和管理,或为设备上的应用程序和服务提供更新。
④稳健的实时性支持
实时性是指能够在限定时间内执行完规定的功能,并对外部的异步事件做出反应的能力。
实时性的强弱以完成规定功能和做出响应时间的长短来衡量。
提高硬件的处理能力可以在一定程度上提高计算机控制系统的实时性,但是当硬件确定以后,控制系统的实时性能主要由操作系统来决定。
WindowsCE是一个实时操作系统。
实时支持功能在以下几方面提升了WindowsCE的性能:
(1)支持嵌套中断。
(2)允许更高优先级别的中断首先得到响应,而不是等待低级别的ISR完成。
(3)更好的线程响应能力。
(4)对高级别IST(中断服务线程)的响应时间上限的要求更加严格,在线程响应能力方面的改进帮助开发人员掌握线程转换的具体时间,并通过增强的监控能力和对硬件的控制能力帮助开发人员创建更好嵌入式应用程序。
(5)更多的优先级别。
256个优先级别可以使开发人员在控制嵌入式系统的时序安排方面有更大的灵活性。
(6)更强的控制能力。
对系统内的线程数量的控制能力可以使开发人员更好地掌握调度程序的工作情况。
⑤丰富的多媒体和多语言支持
丰富的多媒体支持是WindowsCE的一大特性,基于DirectXAPI和WindowsMedia的技术可以提供高性能的视频、音频、流式多媒体和3D图形处理服务。
这些功能可以满足大部分的多媒体娱乐和游戏的需求。
同时,WindowsCE是基于Unicode的,可以支持国际语言,这样您就可以针对特定的市场调整产品。
它可以为那些想创建本地化操作系统版本的OEM提供了本地化支持。
⑥强大的开发工具
与其他嵌入式操作系统相比WindowsCE为开发人员提供了友好的开发工具支持。
这些开发工具可以帮助开发人员简化开发流程并提高开发效率。
对于WindowsCE的应用程序开发人员,可以选择的开发工具有eMbeddedVisualC++和VisualStudio.NET。
对于操作系统定制设计人员,可以使用PlatformBuilder。
PlatformBuilder是一个集成操作系统的“构建——调试——发布”三者为一体的集成开发环境。
此外,WindowsCE还提供了多种模拟器,它们可以模拟硬件设备,这样使开发人员无须拥有真实的硬件即可进行部分WindowsCE下的开发。
4.1.2.WindowsCE的主要模块及各自的功能
WindowsCE被设计成为一种高度模块化的操作系统,每一模块都提供特定的功能,这
些模块中的一部分被划分成组件,系统设计者可以根据设备的性质只选择那些必要的模块或
模块中的组件包含进操作系统映像,从而使WindowsCE变得非常紧凑(只占不到200KB
的RAM),因此只占用了运行设备所需的最小的ROM、RAM以及其它硬件资源。
WindowsCE被分成不同的模块,其中最主要的模块有内核模块(Kernel)、对象存储模
块、图形窗口事件子系统(GWES)模块以及通信(Communication)模块。
另外WindowsCE
还包含一些附加的可选择模块,这些模块可支持的任务有管理可安装设备驱动程序、支持
COM等。
一个最小的WindowsCE系统至少由内核和文件系统模块组成。
1.内核模块
内核模块是WindowsCE操作系统的核心,它为任何基于WindowsCE的设备提供处理
器调度、内存管理、异常处理以及系统内通信等系统功能,并为应用程序使用这些核心功能
提供内核服务。
WindowsCE的内核模块通过CoreDLL模块表示。
所有的操作系统定制设
计都必须包含这个模块,但并不是这个模块的所有组件都必需的,有一些内核组件是可选的。
2.对象存储
对象存储是WindowsCE的默认文件系统,它相当于WindowsCE设备上的硬盘。
对象
存储是由共享一个内核堆的文件系统、系统数据库和系统注册表组成,即使在没有系统主电
源时,对象存储也能维持应用程序及相关数据不会丢失。
对象存储可将用户数据和应用程序
数据存入文件或注册器。
在操作系统创建进程(该进程中只包括那些必需选项)的过程中,
对于这些不同的对象存储组件,可以选取,也可以忽略。
3.图形窗口和事件系统模块
图形窗口和事件系统模块(GWES)包含大部分的核心WindowsCE功能,它集成了图
形设备接口(GDI)、窗口管理器和事件管理器。
GWES模块时WindowsCE操作系统高度
组件化的部分,它分别由USER和GDI两部分组成,USER用来处理消息、事件及鼠标和
键盘等用户输入,而GDI用于处理图形的屏幕和打印输出等。
GWES是用户、应用程序和
操作系统之间的图形用户接口。
GWES通过处理键盘、鼠标动作与用户交互,并选择传送
到应用程序和操作系统的信息。
GWES通过创建并管理在显示设备和打印机上显示的窗口、
图形以及文本来处理输出。
GWES的中心是窗口。
所有应用程序都通过窗口接收来自操作系统的消息,即使那些为缺少图形显示的设备创建的应用程序也是如此。
GWES提供控制器、菜单、对话框以及
图形显示的设备资源,还提供GDI以控制文本与图形显示。
4.通信模块
通信模块为基于WindowsCE的设备提供有线或无线通信能力,使WindowsCE设备能
够与其他设备或计算机进行连接与通信,通信组件提供对下列通信硬件和数据协议的支持:
·串行I/O支持
·远程访问服务(RAS)
·传输控制协议/Internet协议(TCP/IP)
·局域网(LAN)
·电话技术API(TAPI)
·WinCE的无线服务
除上述主要模块之外,还可使用其它的操作系统模块。
这些模块与组件主要有:
·设备管理器和设备驱动程序
·多媒体(声音)支持模块
·COM支持模块
·WinCE外壳模块
WinCE提供的每一模块或组件都支持一组可用的相关API函数。
4.2.嵌入式操作系统WindowsCE平台的搭建(必做)
4.2.1安装XSBase270的BSP
为了使PlatformBuilder支持XSBase270开发板的硬件资源系统,在安装WindowsCE之后需要安装XSBase270的板级支持软件包(BSP)。
具体安装步骤:
双击随开发板提供的BSP安装文件XSBase270.msi,进入BSP安装向导如图4-2-1所示。
按“Next”按钮,进入安装过程,BSP自动选择WindowsCE安装目录(D:
\WINCE500),
如图4-2-2所示。
按“Install”按钮,进行BSP的安装。
如图4-2-3所示。
BSP安装完成后,安装向导提示安装完成界面,按“Finish”按钮,完成BSP的安装。
如图
4-2-4所示。
XSBase270的BSP安装完成后,启动PlatformBuilder,在PlatformBuilder的特性目录
区(Catalog)的第三方BSP(ThirdParty)节点下出现所安装的XSBase270的BSP(EmdoorSystemXSBase270:
ARMV4I),如图4-2-5所示。
图4-2-1图4-2-2
图4-2-3图4-2-4
图4-2-5
4.2.2实验平台的配置
第一步:
新建一个目标平台:
a)选择菜单项“File”->“NewPlatformWizard.”;
b)输入目标平台名称和保存的位置,如图4-2-6所示。
c)为目标平台选择所支持的BSP,XSBase270开发板选择选择“EMDOORSYSTEMXSBA
SE270:
ARMV4I”平台,如图4-2-7所示。
图4-2-6图4-2-7
d)为新建的目标平台选择一个合适的模板配置,如图4-2-8所示。
e)在“Application&Media”选择有关特性(本实验选则默认项),如图4-2-9所示。
图4-2-8图4-2-9
f)在“Networking&Communications”中选择可用特性(默认项),如图4-2-10所示。
g)完成“NewPlatformWizard.”,如图4-2-11所示。
第二步:
平台的配置
a)选择菜单项“Platform”->“Setting”。
b)在“PlatformSettings”对话框中设置“General”选项卡。
选中“Release”,如图4-2-12
所示。
c)在“PlatformSettings”对话框中设置“BuildOptions”选项卡;针对该XSBase270
开发板实验平台的选项配置,如图4-2-13所示。
图4-2-10图4-2-11
图4-2-12图4-2-13
第三步:
配置系统组件和特性
如图4-2-14所示,左边的workspace区显示的是所配置的WinCE操作系统所具有的组件,
右边的Catalog区显示的则是PB提供的能够加入到WinCE操作系统的所有组件。
实验者可
以在右边的catalog区中选择自己需要的设备驱动程序和功能组件。
如果决定要添加它到左
边的workspace区以参加编译,通过右击选项再选择“AddtoOSDesign”。
a)添加XSBase270实验平台提供的设备驱动程序
XSBase270实验平台的驱动程序由平台BSP提供,其中包括输入设备(InputDevices)、
网络设备(Networking)、PC卡(PCCard)、SD卡、串口、触摸屏、USB设备等;另外还包
括EmdoorOEM驱动程序(主要包括:
CAN总线驱动、IDE接口驱动、LED显示驱动、电机接
口驱动等)。
如果用户想向新建平台添加设备驱动程序,通过右击选项再选择“AddtoOS
Design”即可。
如图4-2-15所示。
b)添加系统功能组件
系统的功能组件属于平台无关部分,由PlatformBuilder开发环境统一提供。
它们均是在CoreOs目录下进行添加,如图4-2-16所示。
用户可以根据实验的需要添加系统功能组件。
图4-2-14图4-2-15
本实验中添加以下系统功能组件:
①添加数据同步的组件:
CoreOS—>WindowsCEdevices—>Applications-EndUser—
>ActiveSync—>FileSync;
②图片浏览器的添加:
CoreOS-WindowsCEdevices-Applications-EndUser—File
Viewers—MicrosoftImageViewer
③大的软键盘组件的添加:
CoreOS—>WindowsCEdevices—ShellandUserInterface
—>SoftwareInputPanel—>Software-basedInputPanel(SIP)(Choose1ormore)—>
SIPforLargeScreens
④文件系统的添加:
CoreOS—>WindowsCEdevices—>FileSystemsandDataStore—
>StorageManager—>FATFileSystem;
⑤配置信息保存模块添加:
CoreOS—>WindowsCEdevices—>FileSystemsandData
Store—RegistryStorage(Choose1)—>Hive-basedRegistry;
⑥CF卡模块的添加:
Catalog—>DeviceDrivers—StorageDevices—>CompactFlash/
PCCardStorage(ATADISK)
⑦添加802.11b无线CF卡:
CoreOS->WindowsCEdevices—>CommunicationServices
andNetworking—>Networking-LocalAreaNetwork(LAN)—>WirelessLAN(802.11)XSBase270驱动STA-AutomaticConfigurationand802.1x
⑧EVC调试程序组件模块的添加:
Catalog—>PlatformManager—>PlatformManager
图4-2-16图4-2-17
3、平台的编译,构建系统,生成映像文件
选择菜单项BuildOS—>Sysgen对平台进行编译(如图4-2-17所示),如果没出任何错误,编译完成后将生成一个系统映象文件NK.bin,该文件被放在所建工程所保存的目录下的/RelDir/工程名_ARMV4I_Release目录下(本实验的编译后的映像文件NK.bin保存在D:
\WINCE500\PBWorkspaces\xsbase270\RelDir\XSBase270_ARMV4I_Release目录下)。
具体编译链接花费的时间根据你的宿主机的速度和你所配置平台的大小而定。
一般需要20~30分钟。
4.2.3下载内核镜像
1.EthernetBootloader(EBOOT)
2.下载内核镜像文件
将并口线(JTAG)、串口线、以太网线分别和微机连接好,连接ARM实验箱电源线,打开ARM电源。
1.EthernetBootloader(EBOOT)
(1)打开资源管理器,找到文件夹c:
\WindowsCE光盘\Jflash_Pxa270_P30下的文件cmd.bat,双击执行,在“>”提示后键入jflashmm.exepxa270EBOOT.nb0,出现图4-2-18。
图4-2-18
(2)键入回车(Enter),出现图4-2-19,选择“y”。
(3)图4-2-20是正在写入并校对。
(4)写Eboot到flash存储器结束后出现图4-2-21(正常写入)。
(5)如果校对出错,见图4-2-22,重新键入jflashmm.exepxa270EBOOT.nb0,重复
(1)~(3),直到出现图21为止。
如果多次写入出错,关闭ARM电源,20秒后打开ARM电源,重新烧录。
图4-2-19图4-2-20
图4-2-21图4-2-22
(6)关闭ARM电源。
(7)右键单击”网上邻居”→”属性”,弹出网络连接对话框。
右键单击”本地连接”→”属性”,设置TCP/IP协议。
修改IP地址为192.168.0.2,见图4-2-23,其他不变。
(8)在桌面上找到超级终端图标,
双击启动。
见图4-2-24。
(9)打开ARM电源。
出现信息后按空格键进行设置。
见图4-2-25。
选择0改IP,只要保证ARM的IP和微机的IP在同一网段即可,如192.168.0.5或192.168.0.6
选择5,改为,ARM上的WINCE烧录后可自己启动,其他不用设置,和图4-2-25保持一致就可以了。
(10)请将微机时间改为2007/10/1,PB才能使用。
找到PB工程文件,启动。
见图4-2-26。
(11)选择超级终端的,出现图4-2-27。
(12)按图4-2-28的菜单进行PB和ARM的连接设置。
图4-2-23图4-2-24
图4-2-25图4-2-26
图4-2-27图4-2-28
(13)按图29进行设置,见图4-2-29。
(14)在Download选项点击Setting,见图4-2-30。
(15)出现图4-2-31,选择XSBASE2700117,确定。
图4-2-29图4-2-31
图4-2-30
(16)按图4-2-32菜单连接PB和ARM。
出现文件下载对话框(图4-2-33),在超级终端中出现WINCE烧录信息(图4-2-34)。
WINCE烧录结束后ARM上自动启动WINCE。
图4-2-32图4-2-33
图4-2-34
4.2.4ActiveSync的使用
ActiveSync用来实现PC上的应用程序和ARM上的应用程序保持同步。
(1)打开目标机(ARM)电源,进
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 长江大学 嵌入式
![提示](https://static.bdocx.com/images/bang_tan.gif)