• 休闲生活
  • 教育教学
  • 经济贸易
  • 政法军事
  • 人文社科
  • 农林牧渔
  • 信息科技
  • 建筑房产
  • 环境安全
  • 当前位置: 达达文档网 > 达达文库 > 教育教学 > 正文

    基于Windows CE的移动通讯技术的研究

    时间:2020-09-14 07:55:09 来源:达达文档网 本文已影响 达达文档网手机站

    摘要:首先介绍了基于嵌入式操作系统Windows CE的移动通讯设备的一种实现方法以及如何定制Windows CE,如何将定制好的系统下载到开发版上。最后介绍了本系统的关键技术使用GPRS进行发送短消息和打电话,使用GPRS网络与Internet上的计算机通讯。

    关键词:Windows CE;Platform Builder;GPRS;串口通信;液晶触摸屏

    中图分类号:TP393文献标识码:A文章编号:1009-3044(2007)18-31525-02

    Research of a Mobile Communication Technique Based on Windows CE

    CHENG Huan-huan,XU Dong-ping

    (Technology of Computer School,Wuhan University of Technology,Wuhan 430063,China)

    Abstract:This paper first introduced a realization method of the mobile communication device based on embedded operating system Windows CE, and how to customize Windows CE as well as how to download the embedded system to the board. Finally this paper introduced several key technologies used in the system, for instance, to transmits message and makes phone calls via GPRS, to make use of computer communication of GPRS and Internet.

    Key words:Windows CE;Platform Builder;GPRS;serial port communication;LCD touch-sensitive screen

    1 前言

    从应用范围划分,嵌入式操作系统通常可以分为通用型和专用型。比较典型的通用型嵌入式操作系统有Windows CE、VxWorks以及嵌入式Linux;专用型嵌入式操作系统有专门用于掌上计算机的Palm OS、主要用于移动电话的Symbian等。Windows CE是微软公司为移动应用产品、消费类电子产品和嵌入式应用产品等非PC领域产品设计的操作系统。

    Windows CE.NET 是一个功能强大的32位实时嵌入式操作系统,具有代码少、响应速度快、可裁剪等特点。Windows CE.NET 是由 Platform Builder来定制的。Platform Builder 4.2为创建Windows CE.NET系统提供许多配置文件和调试工具,可以将嵌入式操作系统和应用程序一起生成内核,也可以只生成Windows CE.NET操作系统,并根据功能要求可裁剪相关模块。一个平台主要由操作系统映像(OS Image)和板卡支持包(BSP)两部分组成。

    2 系统结构

    2.1开发平台

    本文采用杭州立宇泰公司的ARMSYS2410-B开发板,分为两个部分:核心板和扩展板。两个板之间采用SO-DIMM200标准插座连接。核心板主要包括:CPU(Samsung的S3C2410A-20处理器)、Flash Memory(64MB Nand Flash)、2片SDRAM。扩展板主要包括:触摸屏接口、3路UART接口、2路USB接口、一个Nor Flash等。采用Platform Builder 定制需要的Windows CE操作系统,采用C#.net 进行应用程序的编写,通过Activesync将定制好的系统和编写好的程序下载到开发板的Nand Flash中。

    2.2整体结构

    本文主要实现的是研究当前比较先进的嵌入式操作系统,结合Internet,GPRS等技术,开发出一种多功能移动通讯设备,该设备除具有目前GSM通信功能(拨打和接听电话,发送短信息等),还具有浏览Internet,发送电子邮件,和PC机用户即时通讯(通过有线和无线两种方式),播放各种多媒体文件等。如图1所示该移动通讯设备的结构示意图。

    3 移动通讯功能的实现

    当系统的硬件设计已经确定后,接下来的总是就是如何将操作系统和应用软件在其上运行起来。这一过程分为两个步骤,首先是利用微软提供的Platform Builder将定制好的操作系统移植到硬件平台上,然后就是在此系统平台上进行应用程序开发。应用程序的开发使用C#.net 2003,开发后的应用程序通过Activesync下载到开发板上。以下介绍的是实现移动通讯设备的关键技术。

    图1 系统结构图

    3.1 Windows平台下定制系统

    Microsoft Windows CE Platform Builder适用于定制基于Windows CE操作系统的嵌入式系统设备。嵌入式系统包括四层结构应用程序、嵌入式操作系统、板级支持包(BSP)、硬件平台。Windows CE的移植过程,基本上主要是针对不同的CPU,不同的目标板,编写BSP的过程。开发工具Platform Builder本身就提供了多种目标板的BSP,如果目标板和Platform Builder提供的相同,那么只需要重新编译生成相应的系统即可。但是实际情况一般是处理器是相同的,但是开发板上的外围硬件接口不相同,这时候可能修改Platform Builder中相同或相近处理器的BSP来完成一个新的BSP。

    (1)利用Platform Builder 4.2创建一个新的Platform,在此过程中,根据开发板的功能做出相关选择,完成platform的创建过程。

    (2)设置并添加platform特性,右键点“ARMSYS2410 features”选择下拉菜单中的“Setting”。去掉“Enable CE Target Control Support”和“Enable KITL”前面的钩来改变编译选项。

    (3)点击“Build Platform”按钮开始编译,编译完成后(error数为0),得到“nk.bin”、“nk.nb0”等文件,这样基于ARMSYS2410的WinCE的映像文件已经生成。

    (4)下载和固化Windows CE 系统到目标设备,首先借助USB downloader来下载Eboot.nb0,然后通过Eboot的功能选项来设置开发板的基本参数信息,准备好与Platform Builder的通讯。然后与Platform Builder建立通讯,Platform Builder自动将映像文件下载到目标板上。具体下载过程请参见用户手册。

    3.2发送短消息和拨打电话

    GPRS网络是基于现有的GSM网络来实现的。在现有的GSM网络中需要增加一些节点,如GPRS网关支持节点(Gateway GPRS Supporting Node,GGSN)和GPRS服务支持节点(Saving GPRS Supporting Node,SGSN)。SGSN的主要作用是记录移动终端的当前位置信息,并且在移动终端和GGSN之间完成移动分组数据的发送和接收。GGSN主要起网关作用,它可以和多种不同的数据网络连接,所以有时候也被称为GPRS路由器。GGSN可以把GSM网中的GPRS分组数据包进行协议转换,从面把这些分组数据包传送到远端的TCP/IP或X.25网络。

    通过GPRS网络进行数据传输需要使用GPRS模块。目前,GPRS模块一般是指带有GPRS功能的GSM模块,可以利用GPRS网络进行数据通信。GPRS模块与开发板控制器之间通过串行口进行通信,通信速率最快可达到115 200bps。模块与控制器间的通信协议是AT命令集。(本系统以明基M22模块为例)

    通过模块的AT指令集,我们可以轻松地实现发送短信息,拨打电话等功能,一般我们采取GPRS模块连接开发板的某一个串口,然后通过开发板的CPU向串口发送AT指令实现开发板控制GPRS模块。

    3.3 Windows CE下串口的驱动

    由于开发板的板级支持包(BSP)只提供了一个串口的驱动,且该串口为系统的调试串口,我们要使用别的串口连接GPRS模块,则必须按照上面的逻辑修改原支持包中的串口驱动,使得能支持两个以上的串口。

    3.4 使用GPRS网络与Internet上的计算机通讯

    串口驱动完成之后,我们便可以设计WINCE的应用程序了,在实现了发送短消息和拨打电话之后,本文将提到一种目前大多数移动通讯设备尚未实现的功能,使用GPRS模块与Internet上的计算机通讯。依然以明基模块M22模块为例:

    AT指令如下

    AT+CGDCONT=1,"IP","CMNET"

    AT%CGPCO=1,"PAP,,","

    AT$DESTINFO="XXXX.XXXX.XXXX.XXXX",1,1234

    这一条指令中XXXX.XXXX.XXXX.XXXX指的是远端的一个公网的IP地址,这个IP地址必须是正确的而且要必须保证是公网1234指的是端口号,这个端口号是远端的接收程序默认或者设定的端口号。值得一提的是,远程的计算机必须正在监听这一端口。

    ATD*97#; 这条指令直接用于拨号。

    这样,和远程机的连接就建立了,然后,通过读写串口就可以和远程计算机通讯了。

    4 用.NET开发移动通讯设备的应用程序

    本文采用了Visual Studio .NET,开发语言也采用完全面向对象的语言:C#。以下给出部分代码供参考。

    public void SendCommand(SerialPort port, string command)

    {int i;

    byte[] writebuffer = new byte[command.Length + 1];

    for (i = 0; i < command.Length; i++)

    {writebuffer[i] = Convert.ToByte(command[i]);}

    writebuffer[i] = 0x0D;

    byte[] buf = new byte[1];

    for (int j = 0; j < writebuffer.Length; j++)

    {buf[0] = writebuffer[j];

    if (!port.WritePort(buf))

    {throw (new ApplicationException("向串口写入数据失败!"));

    }}}

    public string ReadDateAT(SerialPort port)

    {byte[] readbuffer = new byte[1024];

    string returnString = "";

    int length = port.ReadPort(1024, readbuffer);

    if (length == 0)

    {returnString = "NODATA";}

    else

    {for (int i = 0; i < length; i++)

    {returnString += Convert.ToChar(readbuffer[i]).ToString();}}

    return returnString;}

    说明:本代码实现向串口发送指令和从串口读取数据的功能。其中SerialPort为串口类,其中实现了对串口的设置和读写等操作,本文限于篇幅,便不列出全部源代码。

    5 结束语

    本系统利用立宇泰的开发套件,结合明基的GPRS模块,主要研究的是基于Windows CE做一个移动通讯设备,探讨了使用Visual c#.net来实现嵌入式的编程。利用Winows CE.NET开发嵌入式系统或装置不仅可以获得最好的性能,而且可以缩短开发周期和降低开发风险。在嵌入式技术飞速发展的今天,Windows CE.NET必将有广泛的应用前景。

    参考文献:

    [1]傅曦,陈黎,董磊鋆,石卫华.Windows CE嵌入式开发入门——基于Xscale架构[M].北京:人民邮电出版社,2006.99.

    [2]徐薇菁,唐明浩,王国宁.一种基于嵌入式Linux的PDA手机的设计[D].上海:东华大学信息科学与技术学院,2000.

    [3]胡菲菲.GPRS中文短消息收发[J].电脑编程技巧与维护,2007(8).

    注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。

    相关热词搜索: 移动通讯 研究 技术 WINDOWS CE

    • 生活居家
    • 情感人生
    • 社会财经
    • 文化
    • 职场
    • 教育
    • 电脑上网