也许大家都知道Windows CE的图形用户界面相当出色,实际上它的通信功能也很强大。看看CE中的C代表袖珍(Compact)、消费(Consumer)、通信能力(Connectivity)和伴侣(Companion)的意思就明白了。
哦,也许有人会问,为什么不是通讯,而是通信呢?我先来说说二者的区别。
传统意义上的“通讯”的“讯”指消息(Message),通过通讯网络从一端传递到另外一端,传输和处理的信号是模拟的。
“通信”的“信”指的是信息(Information),信息的载体是二进制的数据。一般是指数据通信,即通过计算机网络系统和数据通信系统实现数据的端到端传输。
由于旧的“通讯”系统早已实现了数字化、计算机网络化改造,因此可以认为目前的数据通信系统已涵盖了过去的“通讯”系统的功能。
Windows CE采用的通讯形式很广泛,其基本的通信的范围,可以从简单的电缆串行输入到使用传输控制协议(TCP/IP)的无线网络。
Windows CE对通信的支持是十分灵活的,可完成的很多的通信任务呢:
从网络或台式机下载文件;
基于Windows CE的设备之间的信息交换;
发送和接收电子邮件;
向服务器发送数据;
浏览Internet;
访问远程文件和打印机;
阅读条形码;
对于应用程序开发人员而言,Windows CE支持绝大多数通信类型。这些通信方式可通过类似的基于Win32的APIs进行处理,这使得开发人员易于在他们的程序中实现有关的通信能力。
Windows CE中的API是一套工具的集合,这些工具使得应用程序能够充分利用多种电话和通信服务呢。它提供了一种具有不同选项集合的OEM,模块化的设计使得耗用可以被降低到最小程度。
当然,说到了网络通信技术,不能不提到Win CE支持的网络通信硬件:串行电缆;红外传送器;广播传送器;局域网络;调制解调器等。
硬件的重要性不言而喻,比如,许多基于Windows CE的设备将通过调制解调器连接到网络上,或者用一根串行电缆来连接两个设备,其中TCP/IP协议提供了内置的可靠性,能够防止丢失数据。这里就不多说了。
接着,简单了解一下用Win CE的应用程序来实现串行通信的步骤:
通过注册表确定需要打开的COM端口;
调用CreateFile,用lpFileName(端口名指针)设置COM端口名:COMl;
如果是raw IR方式,则调用EscapeCommFunction(HANDLE hFile,
DWORD dwFunc),设置COM端口为IR模式;
调用SetCommTimeouts(HANDLE hFile,
LPCOMMTIMEOUTS lpCommTimeouts),设置通信暂停时间参数;
调用ReadFile和WriteFile发送和接收数据;
调用CloseHandle(HANDLE hObject),关闭串口;
当然,Windows CE突出的通信能力能够支持未来的嵌入式产品的潮流。比如:最新手持式GPS导航定位仪,为了提高定位精度和系统响应速度,从而采用Windows CE系统,采用多线程技术,在后台异步运行地图数据库查询等程序,可以实现定位导航、路径寻优、以及优秀的无线通信功能等。
随着3G时代的不断临近,开发基于TD-SCDMA、性能优良的双模或多模终端已成为我国3G产业发展的关键。根据Windows CE通信体系结构提供的一种双模终端的通用软件架构,开发人员可以使用标准API函数(如,拨号用的TAPI等)开发应用程序,而不必担心软件的兼容性问题。Windows CE实时系统强大处理通信能力,可以为用户提供丰富的服务,对我国移动通信的发展也有极大的推动作用。
Windows CE通信模型设计用于能够在多种不同类型的服务上良好地工作,还可以为接口编写程序,完全能够提供安全的通信,以确保敏感的数据的完整性与秘密性。