基于ARM嵌入式WebServer的设计开发

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于ARM嵌入式WebServer的设计开发
摘要:通过对Arm9进行WebServer平台搭建,并重新设计了新的硬件结构及软件算法,根据测验和比较,本系统较其它系统无论在速度、时间复杂度和空间复杂度上都有较明显的改进。

关键词:Arm9;WebServer;平台
Abstratct:Build the Webserver platform based on Arm9,And redesign the hardware structure and software algorithm. Be based on the test and comparison,This system is better than the others in the field of speed,time complexity and room complexity.
Key words:Arm9;WebServer;platform
引言
随着互联网技术、数字信息技术和网络通信技术的飞速发展,嵌入式系统在很大程度上改变了我们的生活和工作。

人们可以通过Web方式来了解周围的一切。

这种形势下,传统的单片机因其运行速度慢、功耗高等原因已经越来越不能满足用户的需要。

32位嵌入式微处理器的出现,使嵌入式Web的实现成为现实,用户可以通过网络进行远程监控,给工作的维护和管理带来很大方便。

就是基于ARM(Advanced RISC Machines)-LINUX具有良好的可移植、稳定性、强大的协议支持功能来讨论WebServer的设计与开发。

1嵌入式Web系统简介
嵌入式系统,泛指嵌入于宿主设备的计算机系统,嵌入的目的主要是用智能化提升宿主设备的功能。

嵌入式系统在兼容性方面要求不高,体积小、成本低。

如果电器设备与用户之间可以通过Web进行交互,则成为嵌入式 Web 系统,电器设备在收到 Web 浏览器发出的超级文本传输协HTTP请求时,就发出 Web 页面内容给予响应。

这样的系统就是嵌入式Web系统。

即是研究设计嵌入式Web系统的Sever端的设计和开发。

2嵌入式WebServer系统的设计开发
2.1嵌入式WebServer系统的硬件设计
本系统采用的S3C2410X芯片是韩国Samsung公司推出的一款基于ARM920T内核的16/32位RISC嵌入式微处理器,该处理器主要面向手持式设备以及高性价比、低功耗的应用。

S3C2410X芯片集成了1个LCD控制器(支持STN和TFT带有触摸屏的液晶显示器)、SDRAM控制器、3个通道的UABT、4个通道的DMA、4个具有PWM功能的计时器和一个内部时钟、8通道的10位ADC。

在时钟方面还集成了1个具有日历功能的RTC和具有PLL(MPLL 和UPLL)的芯片时钟发生器。

MPLL产生的时钟能够使工作频率达到203MHz。

系统硬件结构如图1。

JTAG(Joint Test Action Group)是一种国际标准测试协议, S3C2410X具有片内JTAG和调试电路,通过JTAG接口可对片内所有部件进行访问。

触摸屏模块:S3C2410X本身自带的LCD控制器可实现对触摸屏的操作。

以太网接口:采用CS8900网卡芯片实现以太网的连接,由于它功耗低,速度快,使用灵活,可根据不同的需要调整工作模式和传输模式。

SDRAM数据存储器和FLASH程序存储器可分别采用SAMSUNG公司的K4S561632C和AMD
公司的AM29LV800B它们具有高性价比,存储容量大,读取速度快等特点。

2.2嵌入式WebServer系统的软件设计
网络应用程序一般包括两个部分:一部分是服务器端的应用程序,用于接受客户端的连接请求、接收客户端的信息、处理客户端的服务请求、客户端发送服务结果和应答信息等。

另一部分是客户端应用程序,用于到服务器的连接申请、向服务器发送服务请求、接收服务器发回的服务结果和其他信息。

因此,我们可得Server端流程图(如图2)。

本系统在软件设计当中采用的是基于TCP流套接口的HTTP服务器,流式套接字提供了一种可靠的面向连接的数据传输方法。

根据Server端流程图构造接口函数如下:
int socket(int domain,int type,int protocol)
//创建套接字描述符,并为HTTP协议制定地址
int bind(int ds,struct sockaddr_in*addr,socklen_t addrlen)
//对IP和端口进行绑定
int listen(int ds,int bg)//侦听连接,并指定接受连接数
int accept(int ds,int sockaddr,int addr, int addrlen)
//接受远方客户机的连接请求
long senddata(int ds,const int buf,int len,int flags)
//往连接写入发送数据
int close(int ds);
//关闭套接字
2.3WebServer系统实验测试
操作系统选择嵌入式操作系统Linux:Arm-Linux可移植性强,通过配置其核心程序可小于
1MB。

而且其网络功能强大,支持多种网络连接方式。

包括完整的TCP/IP协议栈和大量的其他协议。

在建立好的编译环境中使用make menuconfig命令配置系统内核,Linux版本可使用2.1版本。

将生成的映像文件烧入相应的FLASH中,系统运行后,可自身完成对各个端口的初始化,并将程序解压到SDRAM中运行。

通过实验,本系统可以正常运行,在传输速度、安全性、应答时间等方面较其他系统有显著提高,测试效果良好。

3 结论
通过对ARM9进行WebServer平台的搭建,在硬件结构设计和软件算法方面较其他设计方法都有所改进,经过测试本系统的设计方法具有精度高、运行速度快、时间复杂度低、算法简单等特点。

参考文献
[1] Heursch A C.Preemption concept, Rhealstone Benchmark andscheduler analysis of Linux
2.4[J].Real-Time & Embedded Computing Conference,Milan,November 27-28,2001.
[2]王传启,邓文栋,金敏.工控系统中嵌入式Web服务器的设计与实现[J].计算工程与应用,2002。

.
[3] Labrosse J J.邵贝贝译.μC/OS-II-源码公开的实时嵌入式操作系统[M].北京:中国电力出版社,2001.
作者简介:方辉(1980~),男,辽宁鞍山人,渤海大学助理实验师,在读硕士研究生,研究方向:嵌入式系统,数据挖掘。

徐岚(1979~),女,辽宁锦州人, 渤海大学助理实验师,在读硕士研究生,研究方向:网络安全。

相关文档
最新文档