1、内嵌 TCP IP 协议的 CDMA 无线终端 CDMA 是无线通信领域的后起之秀,采用频分编码技术,与基于时分复用的 GSM相比具有明显优势。 CDMA 能够实现从现有通信系统到下一代通信系统的平滑过渡,具有较强的功能伸缩性;可以支持先进的天线技术,通过增加小区覆盖范围减少基站数目;所有带宽信道都能支持高速数据业务;网络频率利用率高,设计施工和扩容较为简便。 内嵌 TCP IP 协议 的 CDMA 无线终端通过 CDMA 网络和 Internet 达到数据传输的目的,适合于开发基于无线应用的产品,如监控、调度、车载、遥控、远程测量、定位和导航等。这些系统开机就能自动附着到 CDMA 网络上,
2、与数据中心实时在线进行数据通信、高速传输,可靠性强,具有良好的应用前景。文中提出的 CDMA 无线通信模块,提供了 TCP IP 协议 接口的 AT 命令,结合命令控制模块,适用于主机没有 TCP TP 协议 ,但使用串口通信的情况 (如单片机数据采集传输系统等 )。 1 CDMA 无线终端 TCP IP 协议实现 Internet 的实质是实现异种网络的互联,它充分利用各种通信子网的数据传输能力,通过在依赖于通信子网的通信模块和应用程序之间插入新的协议软件来保证应用程序之间的互操作性。因特网的协议族称为 “TCP IP 协议族 ” ,其中包含了为数众多的协议,如应用层协议,传输层 TCP、
3、UDP 协议,网络层的 IP、ARP、 ICMP 协议以及数据链路层协议等。无线网络与 互联网 整合,信息包通过无线媒介无缝地传输至基于 IP 协议的网络,在传输前,数据包必须根据 TCP IP协议封装。在 CDMA 网络中也采取了 IP 协议进行传输。 CDMA 系统中的 TCP/IP 协议结构自下而上分别为数据链路层 (包括接口层和链接层 )、网络层和传输及应用层。 1 1 数据链路层原理 CDMA 系统中的 数据链路层比较特别,涉及无线链路的链接及控制。链路层由 RLP 和 PPP 组成,数据业务的传递主要由无线链路协议 (RLP)完成。 RLP 子层是上层应用与底层物理连接之间的重要接
4、口,位于 MAC 层的复用子层之上。其主要作用是利用物理层的前向和反向信道为上层应用提供面向比特流的传输,而并不考虑上层应用的具体帧格式,根据复用子层的要求形成 RLP 帧。 RLP 子层中质量保证措施的核心思想是一种尽力而为的传输机制 (Best Effort Delivery),即RLP 子层依据协议规定的参数尽可能地保证数据的正确传输。 PPP 包括 串行链路上封装数据报的方法;建立、配置和 测试 数据链路链接的LCP 协议 (Link contr01 Protocol);建立和配置网络层协议的 IPCP 协议 (IP ControlProtocol);鉴权协议 PAP CHAP。为了在
5、点到点链路上建立通信, PPP链路的一端必须在建立阶段首先发 LCP 包配置数据链路。在链路建立后,进入网络层协议之前, PPP 提供一个可选择的鉴权阶段。默认情况下,鉴权不是强制 的。如果希望进行链路的鉴权,则实现者必须在建立阶段指明鉴权协议配置选项。 1 2 应用层实现 传统的网络编程都调用 Socket API 函数连接低层传输协议。常用的网络编程接口包括 BSD(Berkeley Software Distributlon)Sockets 和 Winsock TM。为了支持网络应用, CDMA 系统自身提供了完整的 Socket API 函数。建立一个 TCP连接过程如图 1 所示。
6、应用程序调用 dss_open_netlib()函数打开网络库,使数据业务状态机进入Socket 模式,同时定义网络回调函数和 Socket 回调函数,返回应用 ID 号。应用程序通过网络回调函数得知低层网络是否可用, Socket 回调函数描述 Socket事件。 应用程序调用 dss_pppopen()函数建立网络子系统,包括传输信道的建立和连接。网络子系统建立后,网络回调函数通知应用程序当 前网络可用。 图 1中省略了一个步骤,即低层协议建链后,调用 dss_socket()函数创建一个新的套接字用来进行网络通信。返回一个描述符代表这个套接字;同时进行SCB(SocketControl
7、Block)及相关数据结构的初始化,指定协议使用的地址族(AF_INET)、 Socket 类型 (sock stream-TCPsockets)和协议类型 (IPPROTO_TCP)。 此时调用 dss_connect()与远程 服务器 建立一个活动连接。函数立即返回DS_EWOULDBLOCK,表示操作需要暂停。应用程序通过 dss_async_select()函数,设定 SCB 的相应位,指定当前待处理事件 (如 DS_WRITE_EVENT),以支持 Socket库的无阻塞函数调用,并及时得到异步事件通知。应用程序得知异步事件发生,立即调用 dss_getnextevent()函数检查
8、何种事件发生,并清除 SCB 队列中的相应位。 应用 Huntel Technologies 推出的 CDMA 800 MHz 标准无线模 块 HT6025-A,在 CDMA 操作系统自 身提供的 Socket API 函数基础上进行网络应用层程序开发,实现了 CDMA 无线模块的 TCP IP协议的 AT 命令支持。用户只需通过模块串口输入输出相应的 AT 命令即可实现 TCP IP 协议的调用,以达到连接 Internet的目的。系统采用 CDMA 系统支持的分组数据业务 (Packet DataSetvice)进行数据传输。分组数据业务充分共享无线信道,采用 IP Over PPP 实现
9、数据终端的高速、远程接入,以数据流量计费,传输速率可达 14 4 kbps,是收发随机突发数据的最佳选择。图 2 为 CDMA 模块内部任务调 用及软件结构功能图。 SIO :串口输入输出。 Call Mgmt :其他呼叫处理和用户接口。 TX : CDMA 数据发送。 RX : CDMA 数据接收。 DS :数据业务控制,数据模式控制及 AT 命令执行任务块。 PS :协议服务任务块 (EIA-617 TCP IP PPP)。 用户通过串口输入 AT 命令,如 AT$TCPOPEN=ip, pott(用于发起 TCP 连接 ),DS任务块对命令进行处理,包括命令解析、排列等待、查找 AT 命
10、令表、函数执行和响应返回等过程。 1 2 3 下一页 DS任务块中函数执行将调用 PS 任务块,真正实现链路的连接、数据打包、 路由及可靠传输。 2 测试 及应用 将 CDMA 无线模块通过串口与 PC机 相连, PC 机上运行串口调试程序,向模块发送 AT命令,与联通给定的 服务器 IP地址建立连接,应用其测试端口,发送数据并接收回显数据。 测试命令包括:设置 TCP IP 用户账号 AT$TCPUID=account;设置 TCP IP用户密码 AT$TCP-PASSWD=password; TCP IP 拨号 ATD=dial;建立 TCP IP 连接 AT$TCPOPEN=ip, po
11、rt;发送数据 AT$TCPDATA=data(允许一次最多发送 512个字符 );关闭 TCP IP Socket AT$TCPCLOSE;退出 TCP IP 应用 AT$TCPEXIT。各命令返回正常,数据收发正确无误,有数据流量情况下永不断线,没有数据流量一定时间后,网络端关闭该连接。数据收发测试结果如图 3所示。 在这一实现的基础上,设计开发了一套数据采集传输系统以证实其可靠性。应用系统由单片机、 CDMA 无线模块、电源部分和外部接口部分构成,如图 4所示。 电源部分为单片机和 CDMA 模块提供合适的电源。外部接口部分包括天线接口和 上一页 1 2 3 下一页 UIM(User I
12、dentity Module)卡座接口。 单片机实现数据采集、格式化、 CDMA 无线模块初始化,发送 AT 命令建立 TCP连接并发送数据等功能。单片机提供多种传感器接口,如 TTL 电平串口、 RS232标准串口以及自定义输入电压范围的多路模 拟输入通道,可接入多种类型的模拟或数字传感器。 考虑到移动设备的低功耗要求,选用 TI 公司的 MSP430 单片机。 MSP430 单片机是一种性能优良的 Flash 超低功耗单片机,烧写调试方便,工作电压 3 3V,支持超低功耗工作模式,非常适合置于野外。其内置的多路 A D转换模块提供了方便的模拟传感器接口;内置的两路 UART 模块提供了数字
13、传感器接口。 MSP430通过 UARTl 直接与 CDMA 无线模块相连接,实现对 CDMA 无线模块的初始化和数据收发功能;同时 UART2 扩展 MAX232 标准串口与其他 嵌入式 系统或 PC 机进行数据交换 。 CDMA 无线模块将数据通过 CDMA 网络无线传送到基站。基站的互通功能单元IWF(Inter Working Function)完成无线数据业务和 IP 接入网的互通,实现传感器数据的 Interrlet 接入。 Internet 另一端的服务器对数据进行接收, 可对来自传感器的物理量进行处理,如数据分析、数据融合、过程判断和数据显示等。 结论 互联网 和移动通信的交叉呈现出强大的生命力,已成为当今全球信息产业的热点,它将引发人们工作和生活的巨大变革,有广阔的发展前景。本文完成了CDMA 无线终端 TCP/IP 应用层的 Socket 编程,实现了 CDMA 移动终端的 Internet接入,给出了实际应用系统原理及实现方法,对内嵌 TCP/IP 协议的 CDMA 无线终端的其他应用有重要的参考价值。