微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > ARM7的嵌入式Web服务器设计技术

ARM7的嵌入式Web服务器设计技术

时间:09-30 来源:互联网 点击:

对handleConneetion()功能函数(请求报文分析程序)分析如下:
①在HTTP请求报文中进行读操作,从该套接字循环读取,直到满足以下两个条件之一:查找到Content_Length报头,确定报文报体大小;请求若为post方法,简单地查找+QUERY文本。
②处理HTTP请求类型。对请求报文的第一个令牌进行识别。如果为GET请求,则从中分析请求的文件名,使用lookupFilename()功能函数查找该文件名,若没有则发送适当的状态码给请求者,若有则调用returnFile原语通过套接字来发送请求文件。如果为HTTP POST请求,则再次分析文件名,然后通过call Dynamic Handle功能函数调用一个用户定义的功能处理请求。若既非GET请求,也非POST请求,则返回状态码“not implemented”。

4 应用程序文件系统的构造
本设计使用一个特殊的buildfs应用程序将网页文件编译为顺序的数据结构,它将网页文件所在的目录路径作为变量,将这个变量作为内容树的根。遍历内容树,将遇到的每个文件累计到应用程序文件系统结构中,并写入文件filedata.c。文件filedata.c作为工程文件的一部分,一同被编译、下载到硬件上。buildfs生成的应用程序文件系统结构如表1所列。当定位一个文件时,只需找到文件报头,将文件项目的文件名和源文件名进行比较。若文件匹配,则可将后来检索的元素调出。

本设计采用HTML语言设计的嵌入式网页文件如图4所示。使用buildfs应用程序生成该网页文件的数据结构,如图5所示。

5 测试HTTP服务器的应用实例
本设计的软件平台构成如图6所示。硬件平台由NXP公司的32位ARM7微处理器LPC2210和RTL8019AS网卡芯片构成,如图7所示。LPC2210是基于一个支持实时仿真和嵌入跟踪的32/16位ARM7TDMI-SCPU。

图6中TCP/IP协议栈使用周立功公司提供的ZLG/IP软件包。修改软件包中的cfg_net.h文件,子网掩码设置为与PC机相同,IP地址设置为192.168.0.174(与PC机同一网段),网关设为PC机的IP地址。用双绞线将PC机与RJ45以太网接口相连,启动微处理器LPC2210。在PC机上打开Web浏览器,在地址栏输入http://192.168.O.174/server.html,将出现如图4所示的网页文件。此时,测得的室内温度为26 ℃。
在Parameters Setring栏中输入预设温度和开关的开或关,单击Upload按钮,在Web服务器的表单分析程序中会将预设值和开关值复制到用户缓冲器中,从而进行相应的处理。

结语
本文介绍了基于ARM7微处理器LPC2210的嵌入式Web服务器的设计方法,并用一个应用实例对其进行了验证。结果表明,该方法是可行的,可用于对嵌入式设备进行远程监控的应用中。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top