基于GPRS的SOCKET通信的应用研究
发布时间:2008/5/26 0:00:00 访问次数:1969
    
    摘要:socket通信是目前常用的通信方式之一。文中以8位单片机at89c52作为微控制器,它利用自带的异步串口与电平转换芯片max232和gprs模块连接,使用at命令对gprs模块lt8030进行控制,从而实现socket通信。详细介绍socket通信中要用到的at命令,并给出实现socket通信的完整程序。
    关键词:socket通信 gprs 串行通信 at命令
    
    引 言
    
    gprs(general packet radio service)是通用分组无线业务的简称,是一种以全球手机系统(gsm)为基础的数据传输技术[1]。gprs网不但具有覆盖范围广、数据传输速度快、通信质量高、永远在线和按流量计费等优点,而且其本身就是一个分组型数据网,支持tcp/ip协议,无需经过pstn(公用电话交换网)等网络的转接,可直接与internet网互通。因此gprs业务在无线上网、环境监测、交通监控、移动办公等行业中具有无可比拟的性价比优势。
    
    在网络设置中有http、socket等类型。socket是建立在传输层协议(主要是tcp和udp)上的一种套接字规范,它定义两台计算机间进行通信的规范(也是一种编程规范)。如果说两台计算机是利用一个通道进行通信,那么这个通道的两端就是两个套接字。套接字屏蔽了底层通信软件和具体操作系统的差异,使得任何两台安装了tcp协议软件和实现了套接字规范的计算机之间的通信成为可能。
    
    1 系统组成
    
    系统的组成如图1所示。该系统利用现有的gprs网络,单片机通过串口对gprs模块进行收发控制,实现socket通信。
    
    系统各部分的说明如下:
    
    ① 单片机采用了at89c52,它带有一个串口;
    
    ② gprs模块。本文以利事达信息技术有限公司开发的gprs模块lt8030[2]为例。lt8030内嵌了完整的tcp/ip协议栈,包括tcp、udp、ftp、socket、telnet、pop3、smtp、http等,为用户提供了更简单的网络接口。lt8030采用的gprs技术,无缝覆盖、永远在线且按流量计费,紧密结合产品应用领域所遇到的实际问题,进行全面的优化和升级,使产品开发变得更容易、更快捷。它采用标准的rs232 接口,用户可以通过单片机或其他cpu的uart口,使用相应的at命令对模块进行控制,达到使其产品可以轻松进入gprs网络的目的。
    
    ③ 服务器。建立socket连接必须具有公网的ip地址,故应保证服务器中心计算机连接到internet并且取得公网ip地址。在单片机对gprs模块控制之前,服务器端需运行socket端口监听程序(此监听程序一般是现成的),并且设为监听状态,端口号也要设定,例如port:1024。
    
    2 单片机与gprs模块的连接
    
    单片机与gprs模块一般采用串行异步通信接口,通信速度可设定,通常为9600 bps。采用rs232电缆方式进行连接时,数据传输的可靠性较好。单片机通过电平转换电路与gprs模块连接,电路比较简单,电路原理图如图2所示。所涉及的芯片max232用于串行通信接口与232通信接口之间的电平转换[3]。
    
    
    
    图1系统组成框图
    
    
    
    图2单片机与gprs模拟连接的电路原理图
    
    max232的t1in、t2in、r1out、r2out为接ttl/cmos电平的引脚;t1out、t2out、r1in、r2in为接rs232电平的引脚。ttl/cmos电平的t1in、t2in引脚应接at89c52的串行发送引脚txd;r1out、r2out应接at89c52的串行接收引脚rxd。与之对应,rs232电平的t1out、t2out应接gprs模块的接收端rxd;r1in、r2in应接gprs模块的发送端txd。
    
    现选用其中一路发送/接收,r1out接at89c52的rxd,t1in接at89c52的txd,t1out接gprs模块的rxd, r1in接gprs模块的发送端txd。因为max232具有驱动能力,所以不需要外加驱动电路。
    
    3 建立socket
    
    摘要:socket通信是目前常用的通信方式之一。文中以8位单片机at89c52作为微控制器,它利用自带的异步串口与电平转换芯片max232和gprs模块连接,使用at命令对gprs模块lt8030进行控制,从而实现socket通信。详细介绍socket通信中要用到的at命令,并给出实现socket通信的完整程序。
    关键词:socket通信 gprs 串行通信 at命令
    
    引 言
    
    gprs(general packet radio service)是通用分组无线业务的简称,是一种以全球手机系统(gsm)为基础的数据传输技术[1]。gprs网不但具有覆盖范围广、数据传输速度快、通信质量高、永远在线和按流量计费等优点,而且其本身就是一个分组型数据网,支持tcp/ip协议,无需经过pstn(公用电话交换网)等网络的转接,可直接与internet网互通。因此gprs业务在无线上网、环境监测、交通监控、移动办公等行业中具有无可比拟的性价比优势。
    
    在网络设置中有http、socket等类型。socket是建立在传输层协议(主要是tcp和udp)上的一种套接字规范,它定义两台计算机间进行通信的规范(也是一种编程规范)。如果说两台计算机是利用一个通道进行通信,那么这个通道的两端就是两个套接字。套接字屏蔽了底层通信软件和具体操作系统的差异,使得任何两台安装了tcp协议软件和实现了套接字规范的计算机之间的通信成为可能。
    
    1 系统组成
    
    系统的组成如图1所示。该系统利用现有的gprs网络,单片机通过串口对gprs模块进行收发控制,实现socket通信。
    
    系统各部分的说明如下:
    
    ① 单片机采用了at89c52,它带有一个串口;
    
    ② gprs模块。本文以利事达信息技术有限公司开发的gprs模块lt8030[2]为例。lt8030内嵌了完整的tcp/ip协议栈,包括tcp、udp、ftp、socket、telnet、pop3、smtp、http等,为用户提供了更简单的网络接口。lt8030采用的gprs技术,无缝覆盖、永远在线且按流量计费,紧密结合产品应用领域所遇到的实际问题,进行全面的优化和升级,使产品开发变得更容易、更快捷。它采用标准的rs232 接口,用户可以通过单片机或其他cpu的uart口,使用相应的at命令对模块进行控制,达到使其产品可以轻松进入gprs网络的目的。
    
    ③ 服务器。建立socket连接必须具有公网的ip地址,故应保证服务器中心计算机连接到internet并且取得公网ip地址。在单片机对gprs模块控制之前,服务器端需运行socket端口监听程序(此监听程序一般是现成的),并且设为监听状态,端口号也要设定,例如port:1024。
    
    2 单片机与gprs模块的连接
    
    单片机与gprs模块一般采用串行异步通信接口,通信速度可设定,通常为9600 bps。采用rs232电缆方式进行连接时,数据传输的可靠性较好。单片机通过电平转换电路与gprs模块连接,电路比较简单,电路原理图如图2所示。所涉及的芯片max232用于串行通信接口与232通信接口之间的电平转换[3]。
    
    
    
    图1系统组成框图
    
    
    
    图2单片机与gprs模拟连接的电路原理图
    
    max232的t1in、t2in、r1out、r2out为接ttl/cmos电平的引脚;t1out、t2out、r1in、r2in为接rs232电平的引脚。ttl/cmos电平的t1in、t2in引脚应接at89c52的串行发送引脚txd;r1out、r2out应接at89c52的串行接收引脚rxd。与之对应,rs232电平的t1out、t2out应接gprs模块的接收端rxd;r1in、r2in应接gprs模块的发送端txd。
    
    现选用其中一路发送/接收,r1out接at89c52的rxd,t1in接at89c52的txd,t1out接gprs模块的rxd, r1in接gprs模块的发送端txd。因为max232具有驱动能力,所以不需要外加驱动电路。
    
    3 建立socket
上一篇:超/极低频通信技术
上一篇:基于SIP协议的语音网关开发设计