欢迎来到天天文库
浏览记录
ID:57267985
大小:1.60 MB
页数:32页
时间:2020-08-08
《嵌入式系统课程设计报告样例1.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、《嵌入式系统》课程设计报告设计课题:基于web的嵌入式智能家居控制系统专业班级:09电气(1)班学生姓名: 黄礼智 指导教师:雷必成设计时间:2012学年第一学期物理与电子工程学院摘要基于web的嵌入式智能家居控制系统采用了三星公司生产的S5PV210AH_A01141芯片,是一款ARM11芯片。将嵌入式WEB远程控制系统应用在智能家居方面是未来发展的必然趋势。智能家居、嵌入式系统和WEB服务器三者结合,通过构建嵌入式WEB服务器,研究设计通过WEB控制家电设备,以及在linux系统下搭建WEB服务器,使得用户可以随时随地地通过浏览器实现对家电设备的控制。本文介绍
2、了在ARM嵌入式系统上搭建boa服务器的方法,分析了各种控制方法,得出了实现基于web的嵌入式智能家居控制系统的最直接可行的方案。最后利用C语言编译出了CGI程序和服务程序。关键词WEB;linux嵌入式;boa服务器;CGI目录1.智能家居控制系统总体方案设计11.1 系统总体架构设计12. 嵌入式WEB服务器BOA的建立13.界面设计、CGI程序和驱动程序编写33.2 CGI简介43.3 网页提交数据的两种方式:GET/POST53.4 CGI程序的编写63.5 驱动程序的编写83.5.1 传感器信息采集驱动83.5.2 模拟开关控制驱动104.WEB嵌入式只
3、能家居控制系统测试和应用124.1 软件系统测试125.总结与展望15参考文献16附 件171.智能家居控制系统总体方案设计1.1 系统总体架构设计本文中整个控制系统那个分为3个模块:中央处理器(ARM11),室内信号监测模块,控制执行模块。中央处理器所在的模块由于涉及到高频信号,普通制板均达不到要求,因此直接采用ARM核心板,设计相应的控制板,两者结合使用。从系统稳定性和搭建服务器难度上考虑,linux系统成为不二的选择。Linux系统平台下容易搭建服务器,linux系统也不断在被优化,它的稳定性更是经受住了时间检验。linux设备驱动都是用C语言编写的,对于学
4、过C语言的我们更有利于深入。下面是系统的整体结构图:传感器家居控制系统BOA服务器Linux控制客户端浏览器开关显示图2-1 系统结构图2. 嵌入式WEB服务器BOA的建立搭建BOA的主要步骤如下[2]:(1)下载BOA服务器源码,我们可以从网上下到boa-0.94.13.tar.gz。将压缩包解压到linux系统任意目录下。(2)打开BOA位于内核源码中Boa/src/define.h,查看其DocumentRoot后面的目录,默认为ect/boa。此目录为Boa服务器的根目录,当boa服务器运行后,会从该目录读取配置文件,配置文件中保存着服务器配置信息。用户可
5、根据需要对define.h中的根目录进行修改,一般情况下木有修改必要,本次设计也没有对该项进行修改。(1)生成makefile文件:在boa/src/目录下执行./configure命令。(2)修改该makefile文件:因为要在arm环境下建立BOA服务器,所以要将makefile中的编译器gcc改成arm-linux-gcc,在PC机上建立则无需修改。具体修改如下:找到CC=gcc改为CC=arm-linux-gcc;找到CPP=gcc-E改为CPP=arm-linux-gcc-E。(3)执行#make命令。make编译时用2.95.3以上的版本会出错:uti
6、l.c:100:1:pasting“t”and“->”doesnotgiveavalidpreprocessingtokenmake:[util.o]Error1。解决方法:修改compat.h中的#defineTIMEZONE_OFFSET(foo)foo##->tm_gmtoff为:#defineTIMEZONE_OFFSET(foo)foo->tm_gmtoff。(4)去除调试编译信息:#/boa程序所在目录/arm-linux-stripboa(5)配置BOA配置文件,配置文件中指定了网页和cgi程序所在目录等信息,具体如下[3]:lPort80//侦听端
7、口lUserroot//用户名lGrouproot//用户组lErrorLog/dev/console//错误日志lAccessLog/dev/null//访问日志lServerNamefriendly-arm//服务器名称lDocumentRoot/home/plg//指定文件根目录lDirectoryIndexindex.html//指定默认首页名称lKeepAliveMax1000//最大连接数lKeepAliveTimeout10//设置连接超时时间单位:SlMimeTypes/etc/mime.types//设置媒体类型路径lDefaultTypetex
8、t/pla
此文档下载收益归作者所有