Gsm/gprs无线模块内嵌tcp/ip协议栈的实现方法

文档序号:7883726阅读:403来源:国知局
专利名称:Gsm/gprs无线模块内嵌tcp/ip协议栈的实现方法
技术领域
本发明涉及一种在GSM/GPRS无线模块,内嵌TCP/IP协议栈的实现方法,属通信技术领域。
背景技术
随着无线通信技术的发展,无线产品在数据传输领域的应用日益广泛,但普通的GSM/GPRS模块在使用时有些局限性,即它无法稳定的支持完整的TCP/IP协议,基于单片机的大量原有设备,很难直接在无线网络之间或与其它数据网络之间进行可靠而稳定的数据传输,需要在使用GSM/GPRS模块的设备的单片机系统中嵌入TCP/IP,而这是一个复杂而繁琐的工作,有时甚至超过应用本身的工作量。

发明内容
为了解决GSM/GPRS模块的数据透明传输,为用户提供完整的嵌入式GSM/GPRS网络传输模块方案,本发明提供一种GSM/GPRS无线模块内嵌TCP/IP(传输控制协议/因特网协议)协议栈的实现方法,及相应的无线数据传输方法和为此的无线通信装置TCP/IP协议内嵌在无线模块中,通信终端通过扩展AT命令操作无线模块,在通过电路交换数据CSD或通用无线分组业务GPRS网络建立无线连接的基础上,建立传输控制协议/用户数据报协议TCP/UDP连接,在此连接上实现稳定可靠的数据无线发送和接收,并能通过无线网络解析在Internet上注册的域名。
内嵌TCP/IP(传输控制协议/因特网协议)协议的无线数据传输方法,对无线模块进行了扩展,实现了建立TCP/UDP连接的软件,其方法是在通过电路交换数据CSD或通用无线分组业务GPRS网络建立无线连接的基础上,建立传输控制协议/用户数据协议TCP/CDP连接,在此连接上实现稳定可靠的数据无线发送和接收,实现TCP/UDP连接软件,方法是步骤1建立连接;步骤2在已建立的连接上发送或接收数据;步骤3断开连接;其中,建立连接的软件工作步骤是1,初始化网络设置,配置本地端口号,DNS(域名服务器)的IP地址,GPRS的连接参数APN(访问接入点)、用户名、密码,CSD的连接参数拨打的号码、用户名、密码、连接速率;2,判断无线连接方式为GPRS还是CSD,若是CSD则转5;3,请求激活PDP(Packet Data Protocol)场景;4,判断PDP场景是否被激活,是则转到7,否则转到18;5,请求建立CSD连接;6,判断CSD连接建立成功,否则转到18;7,获得网络运营商分配的IP地址;
8,判断要建立连接的远端类型为IP地址还是域名,若是IP地址则转到10;9,通过DNS无线域名解析获得域名对应的远端IP地址,若无法解析则转到18;10,保存远端的IP地址、端口号,并启动连接;11,判断建立连接的类型,若是UDP转到16;12,判断是作为服务器还是客户端,若是作为服务器转到14;13,作为客户端向远端发起TCP连接,成功则保存TCP发送窗口、接收窗口的大小并转到17,失败则转到18;14,作为服务器打开本地端口号,并在该端口号监听;15,有客户端发起连接请求则接受连接请求并转到17;16,在本地打开UDP端口,失败则转到18;17,连接成功提示;18,连接失败错误提示;建立连接后,发送数据,发送数据有三种方式带发送数据长度、结束符判断、设置发送定时器,工作步骤是1,判断连接是否已经建立,若不是则发送失败,转到15;2,是否设置自动发送,若不是转到4;3,启动发送定时器;4,是否设置发送提示符,若无转到6;5,显示发送提示符;6,从串口接收数据;
7,是否设置发送数据长度,若无转到9;8,接收的数据长度大于等于设置的发送数据长度,若不是转到10,若是转到11;9,接收的数据是结束符,若不是转到10,若是转到11;10,判断发送定时器是否到时,若未到时否转到6;11,拷贝从串口接收到的数据;12,判断建立连接的类型,是UDP则转到14;13,从TCP连接发送数据;14,从UDP连接发送数据;15,给出发送结果提示;当接收到远端通过TCP/UDP连接传送的数据,将数据拷贝到缓冲区中,然后启动串口发送定时器,定时时间到便向串口发送一定量的数据,如果设置了接收提示符,还要将接收提示符及接收的数据一起拷贝进缓冲区,接收数据的工作步骤是1,开辟缓冲区;2,判断是否设置接收数据提示符,若无转到4;3,拷贝提示符到缓冲区;4,将接收到的数据拷贝到缓冲区;5,启动串口发送定时器,定时器到时则向串口发送一定量数据,直至接收的数据发送完毕;6,清空缓冲区;无线模块可以主动断开连接,其方式有二种,一种是只断开TCP/UDP连接,此时无线连接还是存在的;另一种是直接断开无线连接,下次建立连接需要重新建立无线连接后才能再建立TCP/UDP连接。另外,在连接的断开还可能由于其他原因造成的,此时直接给出连接断开的指示。
本发明的优点是,用户可以通过简单的串口通信,实现无线模块之间或无线模块与Internet之间稳定可靠的数据透明传输,这样在可靠性/价格/通信效率/开发周期的综合考虑中,都能更胜一筹。


附图1是本发明GSM/GPRS网络建立无线TCP/UDP连接的流程图。
附图2是建立连接后发送数据的流程图。
附图3是接收数据的流程图。
具体实施例方式
本发明扩展的AT命令及其简要功能


用一台PC机,通过两个串口与两个无线模块终端连接,在PC机运行超级终端或其它串口调试程序,对无线模块通信终端输入AT命令,在作为服务器的终端上输入AT命令与执行的结果<pre listing-type="program-listing">  AT+CREG?  +CREG0,1  OK  AT+CIPCSGP=0,″17201″,″172″,″172″,2 /*设置为CSD*/  OK  AT+CSTT  OK  AT+CIICR  CONNECT 9600  OK  AT+CIFSR  211.136.130.193  AT+CLPORT=″TCP″,″2000″  OK  AT+CIPSERVER=1  SERVER OK</pre>在作为客户端的终端上输入AT命令与执行的结果
<pre listing-type="program-listing">  at+creg?  +CREG0,1  OK  at+cipcsgp=1,″cmnet″/*设置为GPRS*/  OK  at+cstt  OK  at+ciicr  OK  at+cifsr  10.74.19.203  at+cipstart=″tcp″,″211.136.130.193″,″2000″  OK  CONNECT OK</pre>连接连接成功,在服务器端出现提示REMOTEIP211.136.158.1819476在客户端发送数据at+cipsprt=1OKat+cipsend&gt;hello
SEND OK在服务器端收到所发送的数据hello在客户端关闭连接at+cipcloseCLOSE OK在服务器端出现连接关闭提示CLOSED
权利要求
1,一种GSM/GPRS无线模块内嵌TCP/IP协议栈的实现方法,其特征在于在通过电路交换数据CSD或通用无线分组业务GPRS网络建立无线连接的基础上,建立传输控制协议/用户数据报协议TCP/UDP连接,在此连接上实现数据无线发送和接收,实现TCP/UDP连接软件的方法是步骤1建立连接;步骤2在已建立的连接上发送或接收数据;步骤3断开连接;其中,建立连接的软件工作步骤是1,初始化网络设置,配置本地端口号,域名服务器DNS的IP地址,GPRS的连接参数访问接入点APN、用户名、密码,CSD的连接参数拨打的号码、用户名、密码、连接速率;2,判断无线连接方式为GPRS还是CSD,若是CSD则转5;3,请求激活PDP场景;4,判断PDP场景是否被激活,是则转到7,否则转到18;5,请求建立CSD连接;6,判断CSD连接建立成功,否则转到18;7,获得网络运营商分配的IP地址;8,判断要建立连接的远端类型为IP地址还是域名,若是IP地址则转到10;9,通过DNS无线域名解析获得域名对应的远端IP地址,若无法解析则转到18;10,保存远端的IP地址、端口号,并启动连接;11,判断建立连接的类型,若是UDP转到16;12,判断是作为服务器还是客户端,若是作为服务器转到14;13,作为客户端向远端发起TCP连接,成功则保存TCP发送窗口、接收窗口的大小并转到17,失败则转到18;14,作为服务器打开本地端口号,并在该端口号监听;15,有客户端发起连接请求则接受连接请求并转到17;16,在本地打开UDP端口,失败则转到18;17,连接成功提示;18,连接失败错误提示;发送数据的工作步骤是1,判断连接是否已经建立,若不是则发送失败,转到15;2,是否设置自动发送,若不是转到4;3,启动发送定时器;4,是否设置发送提示符,若无转到6;5,显示发送提示符;6,从串口接收数据;7,是否设置发送数据长度,若无转到9;8,接收的数据长度大于等于设置的发送数据长度,若不是转到10,若是转到11;9,接收的数据是结束符,若不是转到10,若是转到11;10,判断发送定时器是否到时,若未到时否转到6;11,拷贝从串口接收到的数据;12,判断建立连接的类型,是UDP则转到14;13,从TCP连接发送数据;14,从UDP连接发送数据;15,给出发送结果提示;接收数据的工作步骤是1,开辟缓冲区;2,判断是否设置接收数据提示符,若无转到4;3,拷贝提示符到缓冲区;4,将接收到的数据拷贝到缓冲区;5,启动串口发送定时器,定时器到时则向串口发送一定量数据,直至接收的数据发送完毕;6,清空缓冲区;断开连接时,可以选择只关闭TCP/UDP连接或直接关闭无线连接。
全文摘要
随着无线通信技术的发展,无线产品在数据传输领域的应用日益广泛,但普通的GSM/GPRS模块在使用时有些局限性,即它无法稳定的支持完整的TCP/IP协议,本发明提供一种GSM/GPRS无线模块内嵌TCP/IP协议栈的实现方法,内嵌TCP/IP(传输控制协议/因特网协议)协议的无线数据传输方法及为此的无线通信装置,TCP/IP协议内嵌在无线模块,通过扩展AT命令操作无线模块,在电路交换数据CSD或通用无线分组业务GPRS网络建立无线连接的基础上,建立传输控制协议/用户数据报协议TCP/UDP连接,在此连接上实现稳定可靠的数据无线发送和接收,并能无线解析在Internet上注册的域名。
文档编号H04L29/12GK1541000SQ20031010821
公开日2004年10月27日 申请日期2003年10月28日 优先权日2003年10月28日
发明者张柳园, 李辰, 杜春林 申请人:希姆通信息技术(上海)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1