预览加载中,请您耐心等待几秒...
1/8
2/8
3/8
4/8
5/8
6/8
7/8
8/8

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

探析嵌入式Web服务器的设计与实现探析嵌入式Web服务器的设计与实现一、引言嵌入式Web服务器(EmbeddedWebServer,EWS)是指将Web服务器嵌入到现场测试和控制设备中,在相应的硬件平台和软件系统的支持下,使传统的测试和控制设备转变为具备了以TCP/IP为底层通信协议,Web技术为核心的基于互联网的网络测试和控制设备。嵌入式Web服务器简化了传统服务器的系统结构,在嵌入式设备上它同时实现信息传输和网络接口的功能。嵌入式Web服务器基于HTTP协议运作,有标准的接口形式和通信协议。它可以向任何接入它所在网络的合法用户提供统一的基于浏览器方式的操作和控制界面。Web技术的开放性和平台的独立特性能够降低开发难度,减少软件系统和通信系统的设计维护工作量,提高了现场测试和控制设备的管理水平。二、嵌入式WEB服务器总体设计方案接入Internet有很多种接入方式:电话拨号接入、ISDN,ADSL、以太网接入等,其中以太网作为一种廉价、高效的Internet接入方式,已经得到了非常广泛的应用,本文的Internet接入采用以太网方式。将TCP/IP协议栈嵌入到单片机中,使用网络控制芯片实现单片机的上网和数据传输。利用网络单片机(嵌入了TCP/IP协议栈的单片机)可以实现很多功能,嵌入式Web服务器就是其中的一种。通过Web服务器,客户端浏览器可以浏览这些设备的动态信息,并且还可以实现与系统的交互功能。(一)嵌入式Web服务器的一般结构嵌入式Web服务器的设计通常以通用Web服务器系统结构为蓝本,根据嵌入式系统的特性进行优化。嵌入式Web服务器的硬件系统包含了Web通信功能的微处理器或者微控制器系统,它可以和前端的应用系统直接集成在一起,也可以通过现场总线与应用系统相连。一个完整的硬件系统由微型处理器、FLASH存储器、DRAM存储器、网络接口和前端应用系统硬件所组成。微型处理器负责全局的运行和管理,FLASH存储器用来存储实时操作系统的系统内核、TCP/IP协议栈、各种Web文档;DRAM存储器在系统运行时使用;网络接口实现与Internet的连接;前端应用系统的硬件完成传统意义上的应用功能。由于嵌入式系统硬件资源有限,嵌入式Web服务器的硬件结构不能很复杂,实时操作系统的系统内核、TCP/IP协议栈、各种Web文档都必须存储在FLASH中,这对软件系统设计提出了较高的要求。嵌入式Web服务器应用系统的硬件结构如图1所示:网络接口微处理器SDRAMFLASH前端应用系统硬件图1嵌入式W比服务器应用系统的硬件结构(二)系统的硬件设计方案LPC2132微控制器是所设计的`嵌入式Web服务器的核心,一方面LPC2132微控制器内部要实现TCP/IP协议栈,并驱动网络接口控制器ENC28J60,经耦合隔离变压器H1102和以太网以实现Internet接入;另一方面,LPC2132微控制器又是相应控制系统的控制单元。由于以太网的广泛使用,本文选择了最为常用的Internet接入方式,即通过以太网接入Internet。由美国Microchip公司生产的以太网控制芯片ENC28J60是本设计所选择的网络接口控制器,它集成了介质访问控制子层和物理层的功能,主要完成网络接口层中数据帧的发送和接收。H1102是一款耦合隔离变压器,用来对网络上的脉冲进行转换和滤波。H1102联接RJ45接头,可以直接接入以太网。串行电平转换模块选用了Maxim公司出品的MAXSP3232E芯片。该芯片内部含有倍增电路和转换电路,只需+5V电源供电即可实现TTL电平到RS232C电平的转换。RS232串口一方面是作为开发调试用的,一方面可以作为相应的通信应用。I/O口扩展包括系统的LED显示电路、JTAG调试电路以及其他测试电路等。(三)系统的软件设计方案Web服务器是在嵌入式TCP/IP协议栈的基础上实现的一种应用程序。从系统软件工作过程来看,可将系统分三部分:第一部分,以太网控制器驱动程序的实现;第二部分:嵌入式TCP/IP协议的实现,这部分内容在第一部分的基础上,结合系统具体环境,对标准TCP/IP协议进行简化并在ARM7单片机上进行移植;第三部分:应用层部分,通过嵌入式TCP/IP协议对用户数据进行收发处理。这里是在应用层实现HTTP协议来完成Web服务器功能的。所以系统软件设计部分主要包括了以太网控制器的驱动程序、嵌入式TCP/IP协议栈以及动态web网页的实现等几个模块:(1)以太网控制器驱动程序是指LPC2132微控制器对ENC28J60芯片的驱动、控制过程。(2)在LPC2132微控制器内部嵌入TCP/IP协议栈是系统实现的关键,它主要包括了ARP,ICMP,IP,TCP和HTTP协议的设计与实现。(3)动态网页的实现。使用CGI技术,可以实现动态