2024年5月10日发(作者:)

doi:10.3969/j.issn.1001—3824.2010.05.020 

基于Windows CE6・0的 

双模通信系统终端 

刘惠深 何 维 田增山 

重庆邮电大学无线定位与空间测量研究所重庆400065 

0 引 言 

第三代移动通信技术(3rd—generation,3G),是 

指能支持高速数据传输的蜂窝移动通讯技术。相 

对2.5G(GPRS/CDMA1x)100 kbi ̄s左右的速度, 

大都采用硬件切换方式,这种方式虽有利于选择能 

提供更好QoS的网络,提高业务质量,但频繁的切 

换可能带来明显的QoS下降,同时增加实现上的难 

度;另外,在这一切换模式下,用户对使用的网络具 

有不透明性…。由于在转换速度和质量上,软件切 

换方式均优于硬件方式,基于QoS原则,软件切换 

3G目标能够达到300 k~1 Mbit/s。3G是典型的移 

动宽带技术,它能够处理图像、音乐、视频流等多种 

媒体形式,提供包括网页浏览、电话会议、电子商务 

等多种信息服务。目前3G存在着三大标准:TD— 

SCDMA,CDMA2000和WCDMA,其中TD—SCDMA是 

我国提出的具有自主知识产权的三大标准之一,对 

方式的双模通信终端是较硬件切换技术更好的选 

择。这一特点在保证通话质量的同时,也减少了硬 

件设计复杂度,提高了系统的可靠性。另外,基于 

嵌入式操作系统Windows CE6.0平台的良好用户界 

面及强大的通信能力,也使用户可以根据自己的需 

求,在不同网络问切换。 我国通信业的发展有着举足轻重的作用。由于三 

大标准目前各具优势,对用户而言,支持双模或多 

模终端可能是最佳选择。 

1双模终端系统总体设计 

1.1系统通信架构 

目前双模手机的研发已经成为热点,在国外, 

些大的手机开发商比如诺基亚、三星、索爱等早 

win32提供的应用程序编程接口函数API(‘dp— 

plication programming interface)使得用户在使用Mo. 

dem和其它通信设备时可以不关心设备的具体情 

已投入3G双模终端的研发,现已在市场上陆续推 

出各自的双模终端产品,为大规模抢占全球手机市 

场做准备。在国内,通信设备研发的三大巨头华 

为、中兴、大唐早在2G时代就投入了基于GSM和 

况,即设备无关性 引。通过调用API函数可以设 

置Modem和其它通信设备的参数并进行传输数据。 

双模通信系统架构如图1所示。 

应用层的应用程序除了拨号、上网、短消息等基 

本的通信程序外,还包括了手机常规的应用程序,如 

CDMA的双模终端的研发,随着3G时代的到来,2G 

时代的双模终端将演变成3G时代的基于TD.SCDMA 

和cDMA2000/WCDMA的双模终端。中国3G牌照 

的发放,意味着三大标准将会长期并存,所以双模 

终端的出现,将会成为必然。现在的一些双模手机 

收稿日期:2010-03-01 

日历、闹钟、电话本等,这些应用程序通过操作系统提 

供的API函数与下层的通信模块进行数据交互。 

68一DIGITAL COMMUNICATION/201 0.1 0 

,五 

毡 W通通信程序 』in信do

● 

w程s序CE J l用户应j… …

 J

_Ij程序…II 

川一I印

1 语开通信 短 自信 

t 圈t 

区 

IM-

 

 访问 

囱豳 

操 

作 

二) 争 

系 

: l 

. 

统 

层 列 

-———

+TSP 

 .

. 

I__ 

/ \ 

皙层 钿 L

T 

图1双模通信系统架构 

操作系统层主要包括2个部分:TAPI(telephony 

application program interface)和TSP(telephony serv・ 

ice provider)。TAPI是API函数中用于通信的一个 

重要的接口函数,它是Microsoft计算机电话集成 

(CTI)计划的核心,也是Microsoft的窗口开放服务 

结构(WOSA)的一部分,像其它的WOSA服务一样, 

它包括2个接口:开发人员用的应用程序接口和连 

接某种电话网络用的接口。TAPI服务为通信应用 

程序提供了一种与设备无关的方法,使应用程序可 

以与各种通信网络进行通信,包括ISDN等,同时还 

提供了访问通信端口和设备的通用机制。 

API下面是TSP,这是一个软件层,它包含一个 

名为Unimodem.dll的驱动,提供接口函数给TAPI, 

主要用于提供数据的调制解调服务以及处理AT命 

令,实现拨号、应答和设置Modem或者其他通信模 

块等操作。采用TSP是为了兼容第三方的通信软 

件,TSP还可以根据需要和近期可能出现的应用程 

序进行定制,以提高该软件架构的可扩展性和灵活 

性,使双模终端具有更好的可扩展性和兼容性。 

驱动层和硬件层紧密相关,在该通信系统中,驱 

动层主要包括TD—SCDMA和CDMA2000 2个通信模 

块的驱动程序,驱动程序的主要任务就是让操作系统 

认识通信模块,为软件和硬件之间的通信开辟一条通 

道,不同的通信模块需安装不同的驱动程序。 

1.2操作系统的制定 

目前市场中的智能手机操作系统主要有3种: 

Nokia主推的Symbian,开放内核的嵌入式Linux和 

微软的Windows CE。 

Windows CE是微软公司推出的一个为多种嵌 

入式系统和产品设计的紧凑、高效、可升级的嵌入 

式操作系统,具有抢先式多任务功能、良好的实时 

性能、强大的通信能力、出色的图形用户界面。其 

模块化和可伸缩性设计使嵌入式系统开发者和应 

用程序开发者能根据多种不同产品进行定制。 

Windows CE能提供强大的多媒体支持以及多种输 

入法,支持广泛的音频视频格式。Windows CE采用 

标准的Windows API函数,大大方便了开发人员,发 

挥可重定目标应用代码库的作用,软件开发商们则可 

将其现有的资源快速移植到Windows CE平台上 J。 

基于以上原因,并考虑到Windows产品的普及性以 

及用户对Windows软件的依赖性(如:word、excel、IE 

浏览器、媒体播放器、Outlook express等),本文采用 

Windows CE作为双模终端的操作系统。 

1.3通信模块的特点 

TD-SCDMA(time—division synchronous code divi— 

sion multiple access)由我国信息产业部电信科学技 

术研究院提出,并与德国西门子公司联合开发。其 

主要技术特点采用:同步码分多址技术、智能天线 

技术和软件无线技术。采用TDD双工模式,载波带 

宽为1.6 MHz。TDD是一种优越的双工模式,能使 

用各种频率资源,不需要成对的频率,能节省未来 

紧张的频率资源,而且设备成本相对比较低,比 

FDD系统低20%~50%,特别对上下行不对称,不 

同传输速率的数据业务来说TDD更能显示出其优 

越性。另外,TD-SCDMA独特的智能天线技术,能大 

大提高系统容量,特别是能增加CDMA系统容量 

50%,而且降低了基站的发射功率,减少了干扰。 

TD—SCDMA软件无线技术能利用软件修改硬件,在 

设计、测试方面非常方便,不同系统问的兼容性也 

易于实现。综合以上优点,TD.SCDMA通信模块是 

双模终端通信系统的首选。 

CDMA2000(code division multiple access 2000) 

是由美国高通(Qualcomm)公司提出。它采用多载 

波(DS)方式,载波带宽为1.25 MHz。CDMA2000共 

分为2个阶段:第一阶段将提供每秒144 Kbit/s的数 

据传送率,而当数据速度加快到每秒2 Mbit/s传送 

时,便是第二阶段,这时候它支持移动多媒体服务, 

是CDMA发展3G的最终目标。CDMA2000起源于 

CDMA(IS一95)系统技术,它对CDMA(IS一95)系统 

69— 

的完全兼容,为技术的延续性带来了明显的好处:其 

成熟性和可靠性有保障,同时也是CDMA2000成为 

调器层对应的接口函数TSPI—lineMakeCall(),再通 

过控制线程机制判断目前线路的状态,如果线路状 

从第二代向第三代移动通信过渡最平滑的选择。 

态为空闲,则开启一个新的控制线程来处理用户的 

因此,作为三大标准之一的CDMA2000也采用本系 

统所选取的通信模块。 

2双模切换技术的实现 

2.1 双模切换技术设计概要 

为了通过应用程序简单、快捷地实现不同模块 

之间的切换从而完成在不同网络下的语音、短信、 

上网等操作,双模切换程序的设计是关键部分。双 

模切换通过设备唯一的标示符(设备ID)来识别出 

不同的模块,再通过封装相应的指令通知通信模块 

完成用户的各种操作。 

2.2双模切换技术拨号程序 

由微软公司开发的嵌入式操作系统Windows 

CE6.0不仅实用性高,而且通信能力强大,具有一个 

通用的位于API和设备驱动之间的调制解调器驱动 

(Unimodem.dl1),对上提供流接口接收应用层的数 

据,对下发送命令并监听通信模块的响应 J。上层 

的通信软件将通过Unimodem驱动与底层硬件模块 

通信,实现软件方式的双模切换。 

2.2.1拨号程序设计流程 

拨号程序流程图如图2所示。 

图2软件拨号流程图 

上层用户输人号码点击拨号键,程序则调用 

TAPI接口函数lineMakeCall(),然后进入到调制解 

——

70——DIGITAL COMMUNICATION/201 0.1 0 

拨号操作,如果线路状态为忙碌,则通知目前正在 

运行的线程有新的操作命令到来,并根据操作命令 

的优先级,决定该操作是否会得到优先的处理。开 

启一个新的控制线程后,再通过判断用户所选择的 

通信模块类型和用户的操作命令进行相应的封装, 

然后将封装好的指令发送到设备,最后调用Wait. 

CommEvent()函数,等待设备的响应。如果返回值 

为成功,则改变线路状态的值并通知上层应用程序 

线路状态为正在拨号。如果返回其他值,则控制线 

程将调用相应的函数处理并通知上层应用程序。 

2.2.2双模切换技术的实现 

双模切换技术是上层拨号程序及其他通信软 

件与底层硬件模块交互的关键,其实现位置位于 

Unimodem控制线程内部,具体流程如图3所示。 

图3双模切换原理图 

双模切换技术工作过程如下: 

1)当用户操作流到达Unimodem控制线程之 

后,将会进入设备ID识别机制,这个机制的功能就 

是在用户操作流中提取出用户所选择的通信模块 

的ID号,然后根据ID号,决定操作流的走向。 

用户操作流中包含了设备ID、拨叫号码、注册表 

人口地址和设备类型等信息。分流器的作用就是复 

制并提取出操作流中的设备ID信息,输入到ID匹配 

器中。ID匹配器根据输人的ID号与初始化线路时 

获取到的设备ID号进行匹配,确定出用户所选择的 

通信模块,然后根据所选择的通信模块异步修改该操 

作流中的注册表入口地址信息,以便进行下一步对应 

的指令封装。双模切换工作流程如图4所示。 

2)当操作流进入指令封装阶段时,程序首先给 

操作指令分配一段内存空间,图5是为拨号命令的内 

存结构形式图。 

图4双模切换工作流程图 

图5指令封装结构图 

拨号命令由3个部分组成,前缀pszDialPrefix, 

号码phoneNum和后缀pszDialSuffix,其中前缀还包 

括3个段,前缀Prefix,拨号前缀DialPrefix以及拨号 

方式Pulse或者Tone。 

3)根据拨号命令的格式,通过调用RegOpen— 

KeyEx()函数和RegQueryValueEx()函数从注册表 

中提取信息,构建出设备能识别的拨号命令。以下 

是注册表的信息: 

[HKEY—LOCAL_MACHINE\Drivers\Unimodem\Settings] 

”Pre x”=”AT” 

”Terminator”=”<cr>” 

”DialPrefix”=”D” 

”DialSumX”=”:” 

’’Pulse”=”P” 

”Tone”=”T” 

”Blind Oif' =”X4” 

”Blind On”=”X3” 

”CallSetup 。ail’I’imeout”=”ATS7:< ><cr>” 

”Reset”=”ATZ<er>”。 

在构建拨号命令的过程中,对应于前缀pszDial。 

Prefix的第一字段Prefix的内容为AT,第二字段Dia1. 

Prefix的内容为D,第三字段Pulse或者Tone分别为 

P或者T,所以前缀pszDialPrefix的内容为ATDP或者 

ATDT。同样,后缀pszDialSuffix对应于注册表中Ter- 

minator项,内容为回车<cr>。如果拨叫号码phone. 

Num为10086,则经过上述步骤后最终形成的拨叫命 

令为ATDP10086<cr>或者ATDT10086<cr>。 

4)拨号命令封装好之后,将进入指令发送控 

制,通过调用MdmSendCommand()函数将指令送出 

后,再调用MdmGetResponse()函数等待并获取通信 

模块的响应,将获取到的响应提交给上层,上层再 

根据响应的类型作出对应的处理。 

2.3其他程序 

对于SMS短消息和其他应用程序与拨号程序相 

似,通过调用不同的API接口函数,比如SmsOpen(), 

其对应与TSP层的TSP—SmsOpen()来进行短消息 

的操作,然后进入双模切换控制器判别通信模块的 

选取,最后进入封装并发送命令。 

3 结束语 

自从我国3G牌照发放之后,通信的三大标准 

体系TD.SCDMA(中国移动)、CMDA2000(中国电 

信)和WCDMA(中国联通)就形成了三分天下的局 

面,三个标准各有千秋。通过双模切换软件方式实 

现的双模终端通信系统,其设备无关性,能够很好 

地兼容不同的通信模块,缩短了通信软件的开发周 

期,并且用户可以根据自身的需要随意切换网络, 

实现双模通信。 

参考文献: 

[1] 罗磊,李彦红.一种简单的双模切换实现方案[J].今 

日电子,2008,1(1):8-9. 

[2] 微软公司.Wierosoft Windows CE Communications Guide 

通信指南[M].希望图书创作室,译.北京:北京希望电 

子出版社,1999:86-90. 

[3] 陈坚.MODEM通信编程技术[M].西安:西安电子科 

技大学出版社,1997:112一l15. 

[4] 邱赘,何雏,沈建国.基于Windows CE5.0的双模终端 

系统设计与实现[J].电子技术应用,2007,33(12): 

15—17. 

[5] 何宗键.Window CE嵌入式系统[M].北京:北京航空 

航天大学出版社,2006:55-57. 

作者简介: 

刘惠深(1985一),男,广东人,硕士研究生,主要研究方向 

为通信与信息系统,E—mail:lhs.bs@163.con;何 维(1980 

),男,重庆人,讲师,主要研究方向为移动通信技术,E— 

mail:cqhewei@gmail.con;田增山(1968一),男,河南信阳人, 

博士,主要研究方向为个人通信、卫星导航、无线定位、信号检 

测与处理、语言视频处理等,E—mail:tianzs@cqupt.edu.cn。 

基金项目:重庆市科委科技攻关项目(CSTC2008AC2073) 

71—