当前位置:首页 > 通信技术 > 通信技术
[导读]0 引 言 目前,在由GPRS承载业务支持的标准化网络协议的基础上,可提供点对点无连接型网络业务(PTP—CLNS)、点对点面向连接的数据业务(PTP-CONS)和点对多点业务(PTM),还能支持用户终端业务、补充业务、GSM短


0 引 言
    目前,在由GPRS承载业务支持的标准化网络协议的基础上,可提供点对点无连接型网络业务(PTP—CLNS)、点对点面向连接的数据业务(PTP-CONS)和点对多点业务(PTM),还能支持用户终端业务、补充业务、GSM短消息业务和各种GPRS电信业务。GPRS可提供Internet、多媒体、电子商务等业务,可应用于运输业、金融、证券、商业和公共安全业;PTM业务支持股市动态、天气预报、交通信息等实时发布;另外,还能提供种类繁多、功能强大的以GPRS承载业务为基础的网络应用业务和基于WAP的各种应用。其中,GPRS的数据业务在行业应用中越来越广泛。该业务已被应用于远程抄表、电力系统远程监控、交通远程监控、车辆监控和GPS导航等诸多方面。
    在GPRS数据业务的行业应用中,数据终端是最基本的设备。目前的数据终端具有智能化和可扩展性不断增强的发展趋势,性能越来越强大,接口越来越丰富,但成本一直居高不下。本文介绍一种以基于AVR单片机ATmegal6和Motorola G20模块的低成本GPRS数据终端的设计。


l 终端的硬件设计
    终端由ATmegal6和G20模块及一些外围器件组成,系统的硬件结构如图1所示。ATmega16具有1个功能完整的异步串行通信接口(UART),在直流5V供电时,其I/O操作电压范围约为O~5V;G20模块提供一个用于接收控制命令和传输数据的异步串行通信接口,在直流3.3V供电时,其I/O操作电压范围为0~3.3 V,因此,可以将ATmegal6串行接口经电平转换电路转接后与G20模块的串行口相连,进行异步串行数据交换。终端采用一块16×2字符型LCD显示GPRS网络连接及数据传输状况信息。ATmegal6和LCD采用直流5 V供电,5 V电源经过由低压差线性稳压集成电路LM1117—3.3组成的稳压电路将电压转换成3.3 V后给G20模块供电。

1.1 ATmegal6与G20模块的硬件接口
    由于ATmegal6和G20模块的I/O操作电压范围不相同,所以两者的串行口之间需经过电平转换才能确保稳定通信,其电平转换电路如图2所示。

    这里采用光电耦合器件TLP521进行5 V和3.3 V之间的电平转换。ATmegal6的I/O驱动能力较强(最大输出40 mA电流),可以直接驱动TLP521。G20模块的I/O驱动能力较弱,需加一级驱动缓冲器才能驱动TLP521,这里使用7406反相驱动缓冲器。
1.2 ATmegal6与LCD的硬件接口
    系统中采用基于HD44780液晶控制芯片的16×2字符型LCD,该器件内置了字符产生器,能显示192个常用字符(包括阿拉伯数字和大小写英文字母)和16个用户自定义字符,它与ATmegal6的接口如图3所示。HD44780的数据总线DB7~DB0与ATmegal6的PA7~PA0相接,RS、R/W和EN分别与单片机的PD3、PD4和PD5相连。利用ATmega16的I/O口控制LCD进行指令和数据输入,正确地显示出经纬度数据。

2 ATmega16与G20模块的接口程序设计
    利用GPRS网络进行数据传输一般有多种组网方案,这里以其中一种方案进行说明,其他方案的数据终端实现方式类似。该方案采用数据中心公网固定IP,由监测点直接向中心发起连接。
    G20模块自身内嵌了TCP/IP和UDP/IP协议栈,大大简化了接口程序的编写。G20模块串口通信默认在57 600 b/s的速率下进行,数据格式为:8位数据位、1位停止位、无奇偶校验和硬件流控制。
    G20模块只能接受由ASCII字符代码组成的标准格式的AT指令。根据Developer′S Guide-Motorola G20 AT Commands所讲述的内容,一行G20模块的AT指令可以包含一条或者多条命令,这些命令必须由分隔符相隔,每个AT指令行不得超过140个字符。G20模块具体的AT命令行结构如图4所示。

    每个AT命令行均以字符串“AT”为前缀,以回车符“<CR>”为后缀。命令行中各指令之间的分隔符可以为分号“;”或者空格。命令行中的英文字母可以是大写格式,也可以是小写格式。
    每当G20模块接收到指令时都会输出相关的响应信息,以显示指令的执行结果。响应信息的数据格式如图5所示。响应信息由3部分组成:前缀、响应代码和后缀。其中,前缀和后缀一样,均为回车和换行符,即“<CR><LF>”;不同指令在不同情况下的响应代码也不一样。

    在实际应用中,可以通过程序控制ATmegal6由其异步串行口按照既定的通信速率、数据格式和指令形式向G20模块发出控制指令,然后监视G20模块的响应信息,根据响应信息判断命令的执行结果,进而控制G20模块进行远程无线数据发送。利用G20模块实现GPRS数据发送一般要按照以下控制步骤进行(这里使用的是UDP协议):
    (1)通过指令“at+mipcall=<Operation>[<APN>,[<User name>,<Password>-]]”建立一个GPRS无线链接,如“at+mipcall=1,cmnet”。在这里,“cmnet”是中国移动的APN名称。其中<Operation>可为0或1,0代表断开连接,1代表连接。[<APN>,[<User—name>,<Password>]]是可选项,无需时省去。如果链接建立成功,G20模块将会返回本机的IP地址,如“<CR><LF>0K<CR><LF><CR><LF>+mipcall:10.103.201.135<CR><LF>”,此时本机在移动内网的IP地址为:10.103.201.135。如果链接不成功,G20模块将会返回错误信息“<CR><LF>ERROR<CR><LF>”。
    (2)通过指令“at+mipopen=<Socket ID>,<Source Port>,<"Destination IP">,<DestinationPort2>,<Protocol2>”打开一个端口(Socket),如“at+mipopen=l,2000,“219.222.73.240”,6800,1”。其中,<Socket ID2>是本地端口号,G20模块一共可以打开4个端口,端口序号分别是1~4;<Source Port>是G20模块本机的端口号,其数值可以是0~65 535;<“Destination IP”>是目标IP地址,可以是直接连接到Internet公网的某台PC的IP地址。<DestinationPort>是目标的端口号,其数值可以是0~65535。<Protocol>是协议栈类型,其数值可以为0或1,0代表是TCP协议栈,1代表UDP协议栈;如果端口打开成功将返回“<CR><LF>OK<CR><LF><CR><LF>+MIPOPEN:<Socket ID>,<State><CR><LF>”,如“<CR><LF>OK<CR><LF><CR><LF>+MIPOPEN:1,1<CR><LF>”。如果端口打开不成功,将会返回错误信息“<CR><LF>ERROR<CR><LF>”。
    (3)通过指令“at+mipsend=<Socket ID>,<Data>”将需要发送的数据压入G20模块的发送堆栈。如“at+mipsend=1,4142434445”。这里的<Socket ID>是前面已经打开的端口序号,<Data>是所要发送的数据,数据格式必须是用十六进制表示的数据(数值或者字符)的双字节ASCII值。如要发送的数据为“ABCDE”(A、B、C、D和E的ASCII数值分别为0x41,0x42,0x43,0x44和0x45),则要将“4142434445”作为<Data>压入发送堆栈。指令操作成功时,G20模块返回信息“<CR><LF>+MIPSEND:<Socket ID>,<Free Size><CR><LF><CR><LF>OK<CR><LF>”,如“<CR><LF>+MIPSEND:1,1367<CR><LF><CR><LF>OK<CR><LF>”,其中<Socket ID>是端口序号,<Free Size>是指堆栈中的剩余空间,其数值可为O~1372。如操作不成功,G20模块将会返回错误信息“<CR><LF>ERROR<CR><LF>”。
    (4)通过指令“at+mippush=<Socket ID>[,<“Destination IP”>,<Destination Port>]”将特定序号发送堆栈中的数据出栈,如“at+mippush=1”执行这条指令之后,堆栈中的数据就被发送出去了。这里所说的堆栈序号是和前面所述的端口序号一一对应的。方括号中的内容是可选项,不需要时可以省去。数据发送成功时,G20模块返回信息“<CR><LF>+MIPPUSH:<Socket ID><CR><LF><CR><LF>OK<CR><LF>”,如“<CR><LF>+MIPPUSH:1<CR><LF><CR><LF>OK<CR><LF>”。如数据发送失败,G20模块将会返回错误信息“<CR><LF>ERROR<CR><LF>”。
    (5)反复进行上述步骤(3)和(4),直至所有数据发送完毕为止。
    (6)通过指令“at+mipclose=<Socket ID>”关闭已打开的端口,如“at+mipclose=1”。端口关闭成功时,G20模块会返回信息“<CR><LF>OK<CR><LF><CR><LF>+MIPCLOSE:<Socket ID><CR><LF>”,如“<CR><LF>OK<CR><LF><CR><LF>+MIPCLOSE:1 ID><CR><LF>”。如果端口关闭不成功,G20模块将会返回错误信息“<CR><LF>ERROR<CR><LF>”。
    (7)通过指令“at+mipcall=0”关闭GPRS网络连接。如果网络连接关闭成功,G20模块将会返回信息“<CR><LF>OK<CR><LF><CR><LF>NOCARRIER<CR><LF><CR><LF>+MIPCALL:0<CR><LF>”。如果网络连接关闭不成功,G20模块将会返回错误信息“<CR><LF>ERROR<CR><LF>”。
    另外,G20模块接收到远程终端通过GPRS网络发送过来的数据时会自动从其串口输出该数据。如果接收到的是UDP协议的数据,G20模块会以以下数据格式输出:
    <CR><LF>+M1PRUDP:<Source IP>,<Source Port>,<Socket ID>,<Left>,<Data>
    其中,<Source IP>是发送方的IP地址,<Source Port>是发送方的端口号,<Socket ID>是本机端口序号,<Left>留在堆栈中的接收数据字节数,<Data>是所接收到的数据。如果接收到的是TCP协议的数据,G20模块会以以下数据格式输出:
    <CR><LF>+MIPRTCP:<Socket ID>,<Left>,<Data>
    各部分含义如前述。编程使ATmegal6不断查询串口接收缓冲区即可实现数据接收,也可以采用接收中断的方式提高运行效率。


3 结 语
    GPRS数据传输链路中GGSN(网关GPRS支持节点)占用的端El的存活时间是有限的,如果链路空闲超时,连接就会断开,可通过定时发送数据短帧的方式来维持链路。经测定,本地(广州)的GPRS数传链路维持时间为60 s。基于ATmegal6的GPRS数据终端成本低,易于推广普及,可用于远程数据采集、系统监测和Internet远程接入等领域。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭