基于GR47和MCU的无线嵌入式Web Server
引言
本文引用地址:http://www.amcfsurvey.com/article/152089.htm嵌入式Web Server具有灵活性、前沿性和解决问题的有效性等优点,在网络智能设备中发挥着越来越重要的作用。本文依托GPRS(通用分组无线电业务)网络来实现嵌入式Web Server的方法,实现了远程无线接人嵌入式Web Server。
嵌入式Web Server是一个简单易用的网络服务器,用户可通过IE访问服务器的IP看到Web页面。嵌入式Web Server的原理是把Web Server作为一个数据载体,Web Server监听用户端的服务请求,根据用户请求类型提供相应的服务,用户端使用Web浏览器和Web服务器进行通信。Web服务器在接收到用户端请求后,处理用户请求并返回需要的数据,一个完整的HTYP服务一般由以下几个阶段组成:客户和服务器建立TCP连接;客户向服务器发送请求;如果请求被接收,则服务器发送应答,在应答中包含状态码和所要的文件;客户和服务器关闭连接。嵌入式Web Serv-er可将本地的信息和数据通过网络传递给远端发出请求的客户,这对远程监控的实现很有意义。
GPRS是在现有的GSM(全球移动通信系统)网络的基础上增加一些硬件设备和进行软件升级而形成的一个新的网络逻辑实体,它是GSM Phase2+规范实现的内容之一,是基于GSM的移动分组数据业务,支持IP协议和X.25协议。具有永远在线、快速登录、按量计费、切换自如、高速传送、安全可靠等优点。每一个移动台登录GPRS网络后均会被GPRS服务器分配一个IP地址。通过此IP地址和对应端口即可访问位于GPRS网络上的嵌入式Web Server。
无线嵌入式Web Server在不需布线的情况下可以实现无线互联,并兼有Web的友好界面,实现GPRS在HTTP应用层上通信,方便二次开发和平台移植。
1无线嵌人式Web Server
目前中国移动GPRS网络路由分配给移动台的是内部IP,所以只能实现路由内部局域网的访问,即由一台通过GPRS Modem上网的MCU来访问嵌入式Web Server,系统的网络结构图如图1。
1.1 GR47 GPRS模块
Sony Ericsson公司提供的具有内置YCP/IP协议栈的GR47模块,其功能强大,使用方便,性能稳定,具有良好的技术服务支持,性价比高,向用户提供了标准的AT命令接口和丰富的AT指令集,用户可以很方便地将其集成到各种数据终端之中。它的优势是始终保持在线连接、数据传输快速稳定,具备快速GPRS技术,根据实际测试,掉线概率非常小。
使用AT命令操作GR47建立和断开一个TCP/IP会话的步骤如下:
a)定义一个PDP上下文:
AT+CGDCONT=1,IP,CMNETCR>=>OK
b)激活已定义的PDP上下文:
AT*E2IPA=1.1CR>=>OK
c)查询模块和移动GPRS服务器的IP地址:
AT*E2IPI=0CR>=>*E2IPI:10.165.192.25
AT*E2IPI=1CR>=>*E2IPI:211.137.64.163
d)监听80端口,模块处于在线数据状态AT*E2IPL1=80,1,50,1
e)设置DTR低电平(TTL)并延迟一段时间。置高=>OK,此时模块将返回在线命令状态。
f)返回在线数据状态:
ATOCR>=>OK
g)将DTR线置低,延迟再置高,重新返回到在线命令状态。
h)返回在线命令状态后断开IP连接:
AT*E2IPA=0.1CR>=>OK
AT*E2IPCCR>=>OK
GR47登录GPRS网络后,使用AT*E2IPL命令设置监听80端口,等待客户端HTTP连接。
1.2嵌入式Web Server的实现
GPRS模块GR47集成了TCP/IP协议,并且可以通过监听指令得到80端口数据,所以只需在MCU中软件实现HTTP协议,解析HTTP数据后,即可实现HTTP连接。MCU采用TI公司的MSP430F149单片机,它是16位超低功耗、高性能的混合信号处理器,具有处理能力强、运行速度快、资源丰富、开发方便等优点,具有很高的性价比。
硬件结构框图见图2,Flash存储器用来存储页面和图片等固化资源,MCU与GR47通过串口通信。
1.3客户端访问Web Server的实现
目前,中国移动GPRS对移动终端分配的是动态局域网IP,以武汉市为例,GR47通过AT指令查询模块和移动GPRS服务器的IP地址为:
AT*E2IPI=0CR>=>*E2IPI:10.165.192.25
AT*E2IPI=1CR>=>*E2IPI:211.137.64.163
模块获得IP后,需通过其他方式来通知客户端(PC或可以连接GPRS的移动设备),以短信或向一台固定IP的PC机通知客户端模块获得的IP,客户端可以通过此IP连接远端的Web Server。
linux操作系统文章专题:linux操作系统详解(linux不再难懂)
评论