嵌入式系统设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

嵌入式系统设计小论文课程名称:嵌入式系统设计论文题目:基于ARM9的网络服务器设计摘要本论文中,我们以嵌入式系统设计课程中所学知识为基础,对基于ARM的简单嵌入式WEB服务器系统进行了简单设计。本设计利用ARM自带的WEB服务器技术,来实现对嵌入式WEB服务器系统的控制设计。该技术基于WEB服务器之上,且用嵌入式WEB服务器来实现对于网络的访问。本设计说明重点介绍了如下几方面的内容:1)基于嵌入式WEB服务器的HTTP协议;2)Linux下的signal()函数的使用;3)嵌入式WEB服务器的工作原理;4)ARM开发板上的SOCKET网络编程。关键词:ARM体系;嵌入式WEB服务器;HTTP协议;SOCKET网络编程。目录第一章绪论..................................................................................................................................41.1课题简介..............................................................................................................................41.2设计目的..............................................................................................................................41.3设计内容..............................................................................................................................41.4设计用途.............................................................................................................................4第二章嵌入式WEB服务器设计原理简介...............................................................................52.1需求说明.............................................................................................................................52.2功能需求详细说明.............................................................................................................52.3数据流图(DFD).............................................................................................................62.4数据需求.............................................................................................................................6第三章嵌入式WEB服务器设计流程.......................................................................................73.1系统结构图.........................................................................................................................73.2整体结构图说明.................................................................................................................73.3连接处理模块.....................................................................................................................83.4功能分配..............................................................................................................................8第四章嵌入式WEB服务器设计程序分析及实践...................................................................94.1程序设计.............................................................................................................................94.2程序分析............................................................................................................................104.3实验步骤...........................................................................................................................13参考文献......................................................................................................................................15第一章绪论1.1课题简介随着后PC时代的到来,嵌入式系统技术已经成为了一个万众瞩目的焦点。目前已广泛应用于信息家电、数据网络、工业控制、医疗卫生、航空航天等众多领域。巨大的市场潜力,无穷的商机,吸引了各路英豪纷踵沓来。ARM单片机技术由于其微小的体积和极低的成本,广泛的应用于家用电器、工业控制等领域中。在工业生产中,电流、电压、温度、压力和流量也都是常用的被控参数。ARM单片机控制嵌入式WEB服务器系统,是利用ARM作为系统的主控制器,由linux下的vi编程,来实现对于嵌入式WEB服务器的访问。本设计采用ARM技术,其具有集成度高,运算快速快,体积小、运行可靠,价值低廉的特点,适宜于绝大多数的控制过程。鉴于这样的重要性,我们打算设计一种基于ARM的嵌入式服务器系统。1.2设计目的运用ARM体系结构与编程所学知识及查阅相关资料,完成嵌入式WEB服务器的设计,达到理论知识与实践更好结合、提高综合运用所学知识和设计能力的目的。1.3设计内容熟知嵌入式WEB服务器的工作原理、SOCKET网络编程。使用RedhatLinux9.0操作系统环境及ARM编译器,编译WEB服务器的驱动模块和应用程序,实现嵌入式WEB服务器的设计。1.4设计用途学习使用SOCKET进行通讯编程的过程,了解一个实际的网络通讯应用程序整体设计,读懂HTTPD.C源代码。在此基础上增加一些其他功能。在PC计算机上使用浏览器测试嵌入式WEB服务器的功能。第二章嵌入式WEB服务器设计原理简介2.1需求说明图2.1嵌入式WEB服务器需求说明2.2功能需求详细说明1)获取服务器当前目录文件列表将服务器当前目录下所有文件的信息发送给客户端,信息包括:文件名、大小、日期。2)获取指定文件将客户请求的文件发送给客户。3)获取HTML类型文件将客户请求的HTML类型文件发送给客户。4)获取纯文本文件将客户请求的纯文本发送给客户。5)获取JPG图像文件将客户请求的JPG图像文件发送给客户。6)解析用户请求分析客户的请求,将请求信息解析为几个变量,包括:请求的命令、请求的文件名、请求的文件类型。2.3数据流图(DFD)图2.2数据流图(DFD)2.4数据需求回应HTTP协议数据头格式要求,如表2.1所示:表2.1HTTP协议数据头格式行号字段内容举例1状态行HTTP/1.0200OK2文件类型Content-type:text/html3服务器信息Server:ARMLinux-httpd0.2.44是否过期Expires:0第三章嵌入式WEB服务器设计流程3.1系统结构图图3.1系统结构图3.2整体结构图说明主程序:建立TCP类型SOCKET在80端口进行监听连接请求。接收到连接请求,将请求传送给连接处理模块处理。并继续进行监听。3.3连接处理模块图3.2连接处理模块3.4功能分配1)发送当前目录文件列表信息将服务器当前目录下所有文件的信息发送给客户端,信息包括:文件名、大小、日期。2)发送HTML类型文件将客户请求的HTML类型文件发送给客户。3)发送纯文本文件将客户请求的纯文本发送给客户。4)发送JPG图像文件将客户请求的JPG图像文件发送给客户。5)发送GIF图像文件将客户请求的GIF图像文件发送给客户。6)解析客户请求HTTP协议头分析客户的请求,包括:1.空格处理2.解析客户请求命令3.解析客户请求的资源名4.解析客户请求的资源类型。7)客户连接处理解析Referrer和content_length字段值并调用客户请求解析函数。8)发送HTTP协议数据头根据发送文件类型发送相应的HTTP协议头信息。第四章嵌入式WEB服务器设计程序分析及实践4.1程序设计4.1.1、接口设计客户连接处理函数名:intHandleConnect(intfd)参数:客户连接文件描述字4.1.2、解析客户请求函数名:intParseReq(FILE*f,char*r)参数:参数1:文件流FILE结构指针,用于表示客户连接的文件流指针。参数2:字符串指针,待解析的字符串。4.1.3、发送HTTP协议数据头函数名:intPrintHeader(FILE*f,intcontent_type)参数:参数1:文件流FILE结构指针,用于表示客户连接的文件流指针。用于写入HTTP协议数据头信息。参数2:信息类型,用于确定发送的HTTP协议数据头信息。4.1.4、发送当前目录文件列表信息函数名:intDoDir(FILE*f,char*name)参数:参数1:文件流FILE结构指针,用于表示客户连接的文件流指针。用于写入目录文件信息数据。参数2:目录名,表示客户请求的目录信息。4.1.5、发送HTML文件内容函数名:intDoHTML(FILE*f,char*name)参数:参数1:文件流FILE结构指针,用于表示客户连接的文件流指针。用于写入文件信息数据。参数2:客户请求的文件名。4.1.6、发送纯文本(TXT)文件内容函数名:intDoText(FILE*f,char*name)参数:参数1:文件流FILE结构指针,用于表示客户连接的文件流指针。用于写入文件信息数据。参数2:客户请求的文件名。4.1.7、发送JPEG图像

1 / 15
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功