嵌入式系统应用
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

第2章 MP3工程项目设计

本书的嵌入式工程项目都以Windows CE 5.0操作系统为平台,下面先对其功能特点与性能进行介绍。

2.1 嵌入式系统Windows CE操作系统介绍

1.Windows CE发展历程(见图2.1)

图2.1 Windows CE发展历程

Windows CE(WinCE)的版本主要有1.0、2.0、3.0、4.0、4.2、5.0和6.0几版。

1)WinCE 1.0

WinCE 1.0是一种基于Windows 95的操作系统,其实就是单色的Windows 95的简化版本。20世纪90年代中期卡西欧推出第一款采用WinCE 1.0操作系统的PDA(占位符2),算是第一家推出真正称得上手掌尺寸的掌上电脑的厂商。第一代的WinCE 1.0于1996年问世,不过它最初的发展并不顺利。当时Palm(占位符1)操作系统在PDA市场上非常成功,几乎成为了整个PDA产品的代名词。在这种情况下,微软公司被迫为最初的WinCE不断改进的同时,也通过游说、技术支持、直接资助等手段聚集了大量合作厂商,使WinCE类的PDA阵容越来越强大。

2)WinCE 2.0

随着Windows 95的出现和Windows 98的成功,另外一个巨人—微软站起来了,并迅速地在PC操作系统业界建立了微软帝国。PDA市场的发展潜力被众多分析家看好,嗅觉异常灵敏的微软自然不会放过这样一个巨大的市场,在其操作系统帝国已经非常稳固的前提下,又开始了在PDA市场上的全力冲刺,用WinCE 2.0操作系统来打造与Palm非常类似的掌上产品。

WinCE 2.0不仅比1.0版快得多,而且有彩色显示,所以众多新型PDA都采用了新的WinCE 2.0系统,大有取代Palm的趋势,成为PDA操作系统新的标准。尽管WinCE 2.0要比Palm的操作系统所占的空间大得多,但它具有Windows的界面,会用PC的人估计没有多少人不会使用微软的操作系统。如果你熟悉Windows 95,那么在使用Windows CE的时候就会熟门熟路,而不需要重新学习。而且,由于两者技术上的相似性,第三方Windows应用软件开发商们可以很容易地把自己的应用软件转换成可供Windows CE运行的版本。因此,Windows CE可使用的软件种类将会越来越多。

3)WinCE 3.0

WinCE 3.0是微软的Windows Compact Edition,即一个通用版本,并不只针对掌上产品,在标准PC、家电和工控设备上也可以安装运行,但要做许多客户化工作。为了和VxWorks、Linux等产品竞争,微软鼓励大家在任何硬件平台(WinCE 3.0支持5种系列CPU,即x86、PowerPC、ARM、MIPS、SH3/4)上使用WinCE,所以早期的WinCE可以运行在不同的硬件平台上。

2000年微软公司将WinCE 3.0正式更名为Windows for Pocket PC,简称Pocket PC或PPC。可将Pocket Word和Pocket Excel等一些日常所需的办公软件的袖珍版装进Pocket PC,同时在娱乐性方面做了很大的加强。对于微软的这些改变,支持的厂商自然不会少,HP、Compaq、Casio等一些著名厂商都加入了Pocket PC阵营。随着Compaq的iPAQ 3630的诞生及其在市场上的热销,支持和加入Pocket PC阵营的厂商就越来越多了。2002年智能手机商机再现,不少PPC厂商希望推出整合手机功能的PPC,于是在2002年8月,专门为手机优化过的微软Pocket PC 2002 Phone Edition操作系统匆匆问世,2002年10月,国内第一款PPC手机—多普达686上市了,随后熊猫推出了CH860,联想推出了ET180。

4)WinCE 4.0

WinCE 4.0(WinCE.NET)是微软于2002年1月份推出的首个以.NET为名的操作系统,从名字上我们就可以知道它是微软.NET的一部分。WinCE.NET是WinCE 3.0的升级,同时加入了.NET Framework精简版,支持蓝牙和.NET应用程序开发。

5)WinCE 4.2

Windows CE.NET 4.2是Windows CE.NET 4.0/4.1的升级版,对Windows CE先前版本的强大功能进行了进一步的扩充和丰富,基于其开发的设备将从这些微小但重要的变化中获得更好的性能和更强的Windows集成功能。微软在WinCE 4.2时曾提供过开放源代码,不过只针对研究单位,而且程序代码较少,仅为200万行。

6)WinCE 5.0

WinCE 5.0在2004年5月份推出,微软宣布WinCE 5.0扩大开放程序源代码。在这个开放源代码计划授权下,微软开放了250万行源代码程序作为评估套件。凡是个人、厂商都可以下载这些源代码并加以修改使用,未来厂商OEM时,可再依执行时期(Run-time)授权,支付WinCE 5.0核心每台机器3美元的授权费用,这也是微软第一个提供商业用途衍生授权的操作系统。

7)WinCE 6.0

2006年11月,微软公司最新的嵌入式平台Windows Embedded CE 6.0正式上市。作为业内领先的软件工具,Windows Embedded CE 6.0将为多种设备构建实时操作系统,如互联网协议(IP)机顶盒、全球定位系统(GPS)、无线投影仪,以及各种工业自动化、消费电子、医疗设备等。

在Windows Embedded诞生十周年之际,微软将首次在“共享源计划”中100%地开放Windows Embedded CE 6.0内核(GUI图形用户界面不开放),开放比例比Windows Embedded CE的先前版本整体高出了56%。“共享源计划”为设备制造商提供了全面的对源代码的访问,以便进行修改和重新发布(根据许可协议条款),而且不需要与微软或其他方共享最终的设计成果。尽管Windows操作系统基于通用型计算机平台,为实现统一的操作体验而设计,但设备制造商可以使用Windows Embedded CE 6.0这个工具包为不同的非桌面设备构建定制化的操作系统映像。通过获得Windows Embedded CE源代码的某些部分,如文件系统、设备驱动程序和其他核心组件,嵌入式开发者可以选择他们所需的源代码,然后编译并构建自己的代码和独特的操作系统,迅速将他们的设备推向市场。

微软还将Visual Studio 2005专业版作为Windows Embedded CE 6.0的一部分一并推出,这对微软来说又是一次史无前例的突破。Visual Studio 2005专业版将包括一个被称为Platform Builder的功能强大的插件,它是一个专门为嵌入式平台提供的“集成开发环境”。这个集成开发环境使得整个开发链融为一体,并提供了一个从设备到应用都易于使用的工具,极大地加速了设备开发的上市速度。

Windows Embedded CE 6.0重新设计的内核具有32000个处理器的并发处理能力,每个处理有2GB虚拟内存寻址空间,同时还能保持系统的实时响应。这使得开发人员可以将大量强大的应用程序融入到更智能化、更复杂的设备中,无论在路上、在公司还是在家里,都可以使用这种设备。

2.Windows CE特点

(1)抢先式多任务实时操作系统。

● 虚拟内存。

● 多线程。

(2)基于Win32 API函数集。

● 便携设备扩充函数。

● 2000多个功能函数。

(3)多用户进程/多线程。

(4)标准的便携式可执行文件格式(PE)。

(5)硬件架构无关性。

(6)多CPU支持。

● ARM,MIPS,SH4,x86。

(7)支持多存储格式。

(8)实时操作系统(RTOS)。

● 强大的中断和线程调度机制。

● 内核操作系统服务安全保证。

● 关键性任务的时间与性能要求。

(9)标准的系统编译方法。

● 基于命令行。

● IDE编译菜单。

3.Windows CE 5.0特性

(1)精简的模块化。

Windows CE被裁减的映像大小如下。

● 一个最小可以运行的内核大小为200KB。

● 只添加了网络支持的映像大小为800KB。

● 增加图形界面支持的映像大小为4MB。

如果再添加Internet Explorer支持另添加3MB。

(2)产品质量级的OEM适配层(PQOAL)。

● 支持代码重用的代码库和目录结构、中心化的配置文件、对于整个CPU家族一致的架构。

(3)设备驱动。

● 32位PC Card的支持。

● USB 2.0协议的支持。

● SDIO的支持。

(4)调试与测试。

● Hardware-assisted Debugger。

● Windows CE Test Kit(CETK)。

4.Windows CE 6.0特性

(1)开发工具完全整合到Visual Studio 2005中,降低了开发人员的工作复杂度。

(2)WinCE 6.0中可支持32000个并发进程,且每个进程有最大2GB的寻址。加强了USB的功能,添加了USB-OTG的支持。

(3)100%开放内核源代码。