智能家居毕业论文(DOC 48页)44932.docx

上传人:jix****n11 文档编号:63061490 上传时间:2022-11-23 格式:DOCX 页数:48 大小:1.23MB
返回 下载 相关 举报
智能家居毕业论文(DOC 48页)44932.docx_第1页
第1页 / 共48页
智能家居毕业论文(DOC 48页)44932.docx_第2页
第2页 / 共48页
点击查看更多>>
资源描述

《智能家居毕业论文(DOC 48页)44932.docx》由会员分享,可在线阅读,更多相关《智能家居毕业论文(DOC 48页)44932.docx(48页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、广西工学院毕业设计(论文)摘 要随着嵌入式技术的发展和高速宽带网络的普及, 利用网络实现远程监控已为人们广泛接受, 嵌入式网络监控技术正是在此条件下逐步发展成熟起来的. 用户使用Web 浏览器, 通过以太网远程访问内置Web 服务器的监控摄像机, 不但可以实现对现场的远程视频监控, 而且可以向监控现场发送指令. 在整个系统的实现过程中, 嵌入式Web 服务器起着十分重要的作用, 因此, 在嵌入式网络视频监控系统中,Web 服务器的设计对监控系统的整体性能具有直接的影响, 只有有了高效率的Web 服务器, 监控系统的性能才能得到充分的发挥。 实现智能化离不开运算和控制单元,本系统采用MCU(S3

2、C2410)作为主控器件,单片机应用系统由硬件和软件组成。硬件由单片机扩展的存储器、输入/出设备以及各种实现单片机系统控制要求的接口电路和有关的外围电路芯片或部件组成;软件由单片机应用系统实现其特定控制功能的各种工作程序和管理程序组成。在单片机应用系统开发的过程中,应不断调整软、硬件,协调地进行软、硬件设计,以提高工作效率,当系统硬件和软件紧密配合、协调一致,就可以组成高性能的单片机应用系统。本课题完成了单片机应用系统其开发过程的系统的总体设计、硬件设计、软件设计和系统调试,根据开发的实际需要,相互协调、交叉,有机的进行。随着Internet 向普通家庭生活不断扩展,消费电子、计算机、通讯一体

3、化趋势日趋明显,现代智能家居由于其安全、方便、高效、快捷、智能化等特点在21 世纪将成为现代社会和家庭的新时尚。当家庭智能网关将家庭中各种各样的家电通过家庭总线技术连接在一起时,就构成了功能强大、高度智能化的现代智能家居系统。而基于嵌入式系统的家庭智能系统在国内才刚刚出现,随着嵌入式技术更加广泛的应用,随着成本的逐步降低,中国的智能家居最终将走向嵌入式。关键词:嵌入式;智能;监控;web服务器- I -AbstractWith the development of embedded technology and high-speed broadband networks, using remo

4、te monitoring network has been widely accepted, of embedded network monitoring technology is evolving in this condition, mature up. Users to use Web browser, through Ethernet remote access built-in Web server, surveillance cameras, not only can be achieved on the field of remote video monitoring, an

5、d can send commands to the monitoring site. Throughout the system implementation process, the embedded Web server plays an important role, so , in the embedded network video monitoring system, Web server design of the monitoring system has a direct impact on overall performance, only with efficient

6、Web server, monitoring performance of the system to get full play.Intelligent computing and control unit can not be separated, the system uses the MCU (S3C2440) as the master device, SCM application system consists of hardware and software. Extended by a single chip hardware memory, input / output d

7、evices and a variety of requirements to achieve single chip system control interface circuit and the external circuit chips or components; software by the microcomputer application system to achieve its specific control of various work processes and management procedures composition. In the MCU appl

8、ication development process, should continue to adjust the software and hardware, and coordinated software and hardware designed to improve efficiency, when the system closely with hardware and software, and coordinated, can form high-performance microcontroller applications. The subject completed t

9、he Application System the development process of system design, hardware design, software design and system debugging, according to the actual needs of the development, coordination, cross, organic conduct.With the Internet expanding to ordinary family life, consumer electronics, computer, communica

10、tions integration becomes increasingly apparent, modern smart home because of its safe, convenient, efficient, fast, intelligent and so on in the 21st century will become a modern society and the family Xin fashion. When the family home in the smart gateway to a wide range of home appliances through

11、 the bus technology to connect families together, constitute a powerful, highly intelligent, modern smart home system. The family-based intelligent system for embedded systems in the country only just emerging, with the embedded technology is more widely used, with gradually lower the cost of Chinas

12、 intelligent home will eventually be embedded into.Key Words:Embedded; Intelligent;Monitoring;Web server- 43 -目 录1. 绪论11.1 课题背景11.2 智能家居系统概述11.3 课题研究目的及意义21.4 系统设计主要任务22. 方案设计32.1 系统总体设计和分析32.2 系统框图42.3 实现效果图53. 硬件电路设计83.1 CPU-S3C2440介绍83.2 GPRS模组介绍93.3 SHT10温湿度传感器113.3 摄像头介绍114. 软件平台134.1 LINUX操作系统

13、介绍134.2 BOA简介144.3 CGI简介144.4 AT命令集简介154.5 BOA服务器的搭建164.6 CGI程序的编写174.7 GPRS的编程174.8 温湿度传感器程序174.9 摄像头程序模块175. 系统制作与调试185.1 系统硬件调试185.2 软件及联机调试185.2.1 主控程序调试185.2.2 GPRS程序调试185.2.3 BOA服务器调试195.2.4 远程控制调试205.2.5 CGI程序调试225.2.6 摄像头调试23结 论24参考文献25致 谢26附录A CGI程序27附录B UART和GPRS初始化程序36附录C 发送和接收短信程序38附录D 远

14、程控制开发板程序441. 绪论1.1 课题背景21 世纪是信息时代,各种电信新技术推动了人类文明的进步。自从1876 年Alexander Graham Bell(贝尔)发明电话以来,世界各国的电话网络发展非常迅速,近十年来,中国的固定电话业务呈现出举世瞩目的快速增长。1997 年8 月局用电话交换机总容量突破1 亿门,网络规模跃居世界第二位,2006 年初固定电话用户总数达到35539.2 万户,移动电话用户达到40407.2 万户,现代电话网络是由程控交换机进行交换传输,移动通信也从模拟时代走向了高度数字化时代,它们的性能已经有了很大的进展,而且可靠性非常高。正是因为通信技术、计算机技术、

15、网络技术、控制技术的迅猛发展与提高,促使了家庭实现了生活现代化,居住环境舒适化、安全化。这些高科技已经影响到人们生活的方方面面,改变了人们生活习惯,提高了人们生活质量,家居智能化也正是在这种形势下应运而生的。智能家居控制系统的主要功能包括通信、设备自动控制、安全防范三个方面。随着新技术和自动化的发展,传感器的使用数量越来越大,功能也越来越强,各种传感器都已经标准化、模块化这给智能家居控制系统的设计提供极大方便。嵌入式的智能家居使系统的处理能力大大增强,可以带来更加逼真的图象以及更加真实的语音等。根据系统定制的实时操作系统不仅可以最大限度的利用硬件资源而且还避免了过于庞大的系统造成的系统冗余。一

16、般只有一颗主处理芯片,系统架构更加清晰简捷。软件采用分层设计,方便维护和升级,大大提高了代码利用率,缩短开发周期。因为嵌入式技术是伴随着Internet 而生的,所以它具有更加卓越的网络性能,可以增加更多的网络应用,很显然嵌入式类智能家居产品在应用方面具有相当的优势,应该是未来中国家庭智能化技术主流发展方向。家居生活的智能化是当今计算机网络与通讯技术最人性化的应用,给人们的家居生活带来了全新的感受。今天,借助电话控制或互联网,您几乎可以在任何地方、任何时候监控您的家居状况,为您的家居生活带来前所未有的方便。随着社会全面的信息化、智能化和自动化,家庭智能化必将成为未来家居装饰潮流发展的最新方向!

17、1.2 智能家居系统概述 随着社会信息化的加快,人们的工作、生活和通讯、信息的关系日益紧密。信息化社会在改变人们生活方式与工作习惯的同时,也对传统的住宅提出了挑战,社会、技术以及经济的进步更使人们的观念随之巨变。人们对家居的要求早已不只是物理空间,更为关注的是一个安全、方便、舒适的居家环境。家居智能化技术起源于美国,它是以家为平台进行设计的。智能家居控制系统是以HFC、以太网、现场总线、公共电话网、无线网的传输网络为物理平台,计算机网络技术为技术平台,现场总线为应用操作平台,构成一个完整的集家庭通信、家庭设备自动控制、家庭安全防范等功能的控制系统。智能家居控制系统的总体目标是通过采用计算机技术

18、、网络技术、控制技术和集成技术建立一个由家庭到小区乃至整个城市的综合信息服务和管理系统,以此来提高住宅高新技术的含量和居民居住环境水平。大型的智能家居控制系统通常由系统服务器、家庭控制器(各种模块)、各种路由器、电缆调制解调器头端设备CMTS、交换机、通讯器、控制器、无线收发器、各种探测器、各种传感器、各种执行机构、打印机等主要部分组成。1.3 课题研究目的及意义智能家居控制系统可以定义为一个过程或者一个系统。利用先进的计算机技术、网络通讯技术、综合布线技术、将与家居生活有关的各种子系统,有机地结合在一起,通过统筹管理,让家居生活更加舒适、安全、有效。与普通家居相比,智能家居不仅具有传统的居住

19、功能,提供舒适安全、高品位且宜人的家庭生活空间。还将原来的被动静止结构转变为具有能动智慧的工具,提供全方位的信息交换功能,帮助家庭与外部保持信息交换畅通,优化人们的生活方式,帮助人们有效安排时间,增强家居生活的安全性,甚至为各种能源费用节约资金。系统的网络化功能可以提供遥控、家电(空调,热水器等)控制、照明控制、室内外遥控、窗帘自控、防盗报警、电话远程控制、可编程定时控制及计算机控制等多种功能和手段。使生活更加舒适、便利和安全。因智能家居控制系统简单、功能灵活,扩展容易而被人们广泛接受和应用。家居生活的智能化是当今计算机网络与通讯技术最人性化的应用,给人们的家居生活带来了全新的感受。今天,借助

20、电话控制或互联网,您几乎可以在任何地方、任何时候监控您的家居状况,为您的家居生活带来前所未有的方便。随着社会全面的信息化、智能化和自动化,家庭智能化必将成为未来家居装饰潮流发展的最新方向!1.4系统设计主要任务本文利用凌阳ARM9嵌入式实验箱,S3C2440 CPU核心板和装有Linux系统或装有Linux虚拟机的PC机一台。本设计包括:系统硬件的设计与调试和控制软件的编写与调试。硬件部分:智能家居控制系统其硬件部分主要由五大部分构成,即GPRS模组、以太网模块、SHT11温湿度传感器、摄像头、S3C2440 、CPU板模块与接口和电源部分。用户可以通过GPRS模组上的RS232接口和PC机直

21、接相连接使用,通过SHT11温湿度传感器检测温度变化,电源部分则为各个部分提供工作电源。软件部分:软件设计部分主要由五大部分构成:即Boa服务器搭建、CGI程序编写,AT命令集,GPRS初始化与驱动、摄像头驱动及各个驱动程序编写。2. 方案设计2.1 系统方案论证(1)控制部分: 方案一: 采用普通MCS-51单片机作为总的控制元件。 方案二: 采用凌阳单片机SPCE061A作为总的控制元件。 方案三: 采用ARM作为总的控制元件。 比较论证: 方法一MCS-51单片机功能较少,不含有模数转换等功能,因此需增加一些外围电路来实现一些功能,使电路复杂化,精确度不高,采样速率偏低。而方法二简化了电

22、路,增加了系统稳定性。凌阳SPCE061A在设计方面提供了极大的方便,它的好处在于,功能较多,因为它不仅囊括了普通单片机的所有功能,更增加了许多新的功能,如: A/D、D/A转换, 语音等,另外又提供了便利的编程环境。方法三更加智能,它可以移植LINUX系统到CPU中,对于处理我们的多媒体和网络更胜一筹,而且LINUX下的资源非常丰富,可以运用LINUX下的资源完善我们的系统,与外网的联系变得更加简单。(2)显示部分: 方案一: 采用LED发光管。 (3)服务器部分: 方案一: 采用TCP或UDP服务器。 方案二:采用boa服务器。比较论证:方案一虽然可行,但搭建容易,移植和执行困难,而方案二

23、则不同,Boa服务器和普通Web 服务器一样, 能够很容易完成接收客户端请求、分析请求、响应请求、向客户端返回请求结果等。2.2 系统总体设计和分析本设计属于嵌入式应用系统。确定嵌入式控制系统总体方案,是进行系统设计最重要、最关键的一步。总体方案的好坏,直接影响整个控制系统的性能及实施细则。总体方案的设计主要是根据被控对象的任务及工艺要求而确定的。设计方法大致如下:根据系统的要求,首先确定出系统类型。选择检测元件,在确定总体方案时,必须首先选择好被测参数的测量元件,它是影响控制系统精度的重要因素之一。选择执行机构,执行机构是微控制系统的重要组成部件之一。执行机构的选择一方面要与控制算法匹配,另

24、一方面要根据被控对象的实际情况确定。选择输入/输出通道及外围设备。选择时应考虑以下几个问题:被控对象参数的数量;各输入/输出通道是串行操作还是并行操作;各通道数据的传递速率;各通道数据的字长及选择位数;对显示、打印有何要求。2.3系统框图本系统是ARM在系统检测以及工程控制方面的应用,其特点是体积小,成本低,功能强,功耗低,是微机应用产品化的最佳机种之一,它已广泛地应用在产品智能化和工业自动化上。而把ARM面向工控领域对象,嵌入到工控应用系统中,实现嵌入式应用的计算机称之为嵌入式计算机系统,简称嵌入式系统。本设计系统框图如图2.1所示:S3C2440GPRS模组LED显示摄像头SHT11温湿度

25、CGI接口Boa服务器PC端网页浏览器图2.1 系统框图2.4 实现效果图在开发板上移植boa服务器,并通过CGI编程实现一个Web在线远程监控。实现效果如图 2.3 等待界面2、2.3、2.4、2.5、2.6、2.7所示:图2.2 登录界面图 2.3 等待界面图 2.4 主界面图 2.5 简介界面 图 2.6 温湿度界面图2.7 执行led1图2.8 执行摄像头效果图图2.9 执行手机报警效果图3. 硬件电路设计3.1 CPU-S3C2440介绍S3C2440A是韩国三星公司推出的16/32位RISC微控制器,其CPU采用的是ARM920T内核。特点:具有PLL时钟发生器,主频最高可达533

26、M。内核1.2V供电最高400M,1.3V供电最高533M。存储器支持1.8V、2.5V、3.0V、3.3V。I/O均支持3.3V供电。s3c2440为单机器周期执行指令集。具有电源管理功能,可以使系统以普通方式、慢速方式、空闲方式和掉电方式工作,降低产品功耗。内核结构:采用ARM920T内核,具有16KB指令Cache、16KB数据Cache和存储器管理单元MMU,指令高速存储缓冲器(I-Cache),数据高速存储缓冲器(D-cache)提高指令执行效率及数据存储效率,减少主存带宽和响应性带来的影响,加强的ARM体系结构MMU,用于支持winCE、linux等操作系统,内部高级微控制总线(A

27、MBA)体系结构(AMB2.0,AHB/APB)。存储器控制器特性:S3C2440采用总线结构管理片上外设及内存。S3C2440的存储器管理器提供访问外部存储器的所有控制信号。27位地址信号、32位数据信号、8个片选信号、以及读/写控制信号等。总共有8个存储器bank(bank0bank7),其中,bank0-bank5为固定128MBbank6和bank7的容量可编程改变,可以是2、4、8、16、32、64、128MB,最大共1GB。bank0可以作为引导ROM,其数据线宽只能是16位和32位,其它存储器的数据线宽可以是8位、16位和32位。8个存储器bank:bank0-bank5:SRA

28、M、ROM(NOR FLASH)。Bank6bank7:SRAM、ROM SDRAM(NOR FLASH)。s3c2440支持两种启动方式:NOR FLASH启动,即代码直接写入NOR FLASH,运行时直接在NOR FLASH上运行。NAND FLASH启动方式,即代码烧到NAND FLASH中,借助片内4K的sram,将代码由NAND FLASH烤到SDRAM中,在SDRAM中运行。所使用s3c2440试验仪如图3.1所示。图3.1 s3c2440试验仪3.2 GPRS模组介绍GPRS模组采用SIM300通讯芯片(如图 3.3),利用无线移动网络实现语音传输和点对点数据传输。同时,模组内具

29、备TCP/IP协议栈,可以直接利用它实现无线上网。模组使用标准的UART串行通信接口(如图3.4)与主芯片进行通信,可以与任何带有通用UART串行通信接口的控制器进行连接。该模组具有以下特性:(1)支持EGSM900M,DCS1800M,PCS1900M三种频段,兼容GSM Phase 2/2+。(2)集成PAP协议,可供PPP连接使用。(3)集成TCP/IP协议,方便实现上网功能。(4)支持包交换广播控制通道(PBCCH)。(5)无限制的辅助服务数据支持(USSD)。GPRS模组使用标准串口与主控制器进行通讯。模组带有一个10针的接口,该接口可以直接和MCU相连接。或者用户可以通过模组上的R

30、S232接口和PC机直接相连接使用。GPRS模组需通过J4的电源开关信号(PWRKEY)输入引脚向GPRS模组输入如图3.2所示的上电时序GPRS才能被启动,启动后GPRS的信号指示灯会闪烁。也可以手动按下GPRS模组上的ON/OFF按键,大约2秒之后松开,GPRS模组亦可以被启动。图3.2 GPRS模组启动时序图GPRS模组启动之后,即可通过UART接口发送AT指令来控制语音或数据收发。图 0.3 GPRS 模组SIM300核心部分电路图图3.4 GPRS 模组接口部分电路图连接GPRS模组到实验箱的J8(GPRS)接口上,注意一定要按顺序(实验箱的12V接模组的VCC,IOB0接PWRKE

31、Y,GND接GND)插接,且不可插反或错位;断开JP7、JP8的所有跳线;断开手柄接口与手柄的连接;如图3.5配置GPRS;如连接耳麦和天线。图3.5 GPRS模组跳线配置3.3 SHT10温湿度传感器本系统采用SHT10数字温湿度传感器对温湿度进行测量。SHT11因其相对湿度和温度一体测量,精确露点测量,全量程标定,无需重新标定即可互换使用,超快时间,两线数字接口,尺寸小,可靠性高,稳定,低功耗,精度高。VDDSCKDATAGNDS3C2440开发板3.3VGPF0GPF1GND图3.6 温湿度模组3.4 摄像头介绍本系统的设计还涉及到摄像头的监控。选用一款免驱的摄像头,而且可以在非PC机上

32、自动安装驱动的摄像头。选择一款遵循v4l协议的摄像头,V4L,其全称是Video4Linux(Video for Linux),是在linux内核中关于视频设备的API接口,涉及开关视频设备、采集并处理视频图像信息。V4L从2.1.x版本的内核中开始出现。在Linux中,视频设备是设备文件,可以像访问普通文件一样对其进行读写。特别要注意,选择摄像头的时候要选择一款不仅在windows下免驱的,而且在LINUX下面也要免驱。我这里选择的是韩国的YUNDAI 500 ,USB接口。S3C2440芯片提供了一个USBHOST接口,但是对于目前的众多USB设备来讲不太够用,所以S3C2440实验仪扩展

33、了USBHUB接口,可以扩展四路USB设备,方便USB键盘、USB鼠标、USB摄像头、USB无线网卡等USB设备同时使用,但是由于S3C2440实验仪本身外扩了SATA硬盘,该硬盘在正常使用时需要占用一个USB主通道,板子只预留了三路USB接口图3.7 USB主接口部分电路图S3c2440芯片本身自带了USBSlave接口,可以方便的跟PC通过USB接口进行高速数据通信,本实验仪在烧写linux镜像时,可以通过此接口进行高速数据传输。图3.8 USB从接口的部分电路图4. 软件平台4.1 linux操作系统介绍Linux 是一套 Unix-like 的操作系统,是 Unix 的一种,它控制整个

34、系统基本服务的核心程序 (kernel) 是由 Linus 带头开发出来的,Linux这个名称便是以Linuss unix来命名,Linus 选择用大众公有版权 (GPL)的方式来发行这份程序,这个版权允许任何人以任何形式复制与散布 Linux 的原始程序,换句话说,Linux 实际上是免费的,使用者在网络上就可以抓到 Linux 的原始程序代码,随心所欲的复制与更改 Linux 的原始程序,在因特网的日渐盛行以及 Linux 开放自由的版权之下,吸引了无数计算机高手投入开发、改善 Linux 的核心程序,使得 Linux 的功能日见强大,所以今日我们可以在网络上免费下载 Linux 使用,或

35、者花很少的一点费用就可以取得 Linux 光盘,这都是因为 Linux 是 GPL 版权的缘故。除了核心程序以外,一个操作系统还需要其它的系统程序跟应用程序才有实用性,Linux 系统中常用的系统程序大部份是美国自由软件基金会 (Free Software Foundation) 开发出来的软件,而且也有不少机构或个人为 Linux 开发应用程序,这些程序一样大多都是自由软件,任何人都可以免费的在网络上取得,不过自行去取得这些程序再一一安装非常不便,于是有些公司或团体就会去搜集、整合 Linux 上的程序,把核心-系统程序-应用程序总合起来构成一个完整的操作系统,让一般使用者可以简便的安装完整

36、个系统,这就是所谓的安装软件包(distribution),我们一般讲的 Linux 系统便是针对这些安装软件包而言,同样是 Linux 系统,却分成不同公司、机构整合出来的不同安装软件包,这就是大家常常在网络上看到 Linux 有那么多种的原因。近几年的发展,已使得Linux成为微软、升阳的另一大敌手。Linux挟其价格低廉、品质良好与稳定的竞争优势,正无形无影地扩散至众多以PC为主的工作 平台上。早期因缺乏商业性应用软件,单凭学术味道浓厚的工具程序,是无法打入一般商家的主流操作系统的。然而,今日的Linux已非吴下阿蒙,KDE、 Gimp、Gnome等计划相继地开展,为X提供了更多图形接口

37、的桌面操作环境和应用软件。 约1993年左右,Linux首先以发行软 体(distribution)的型态出现。这是一群完整的软件,包含安装程序、核心、应用软件、X、驱动程序等的软件包,经由Internet下载至磁 盘片进行安装。那时的安装程序简陋,难以成功地安装妥当,接口亲和力不足和硬件支持不良是最大的障碍。4.2 boa简介Boa 是一款单任务的HTTP 服务器, 与其他传统的Web 服务器不同的是当有连接请求到来时, 它并不为每个连接单独创建进程, 也不通过复制自身进程来处理多链接, 而是通过建立HTTP 请求列表来处理多路HTTP 连接请求, 同时它只为CGI 程序创建新的进程, 这样

38、就在最大程度上节省了系统资源, 这对嵌入式系统来说至关重要. 同时它还具有自动生成目录、自动解压文件等功能, 因此, Boa 具有很高的HTTP 请求处理速度和效率, 在嵌入式系统中具有很高的应用价值。Boa服务器和普通Web 服务器一样, 能够完成接收客户端请求、分析请求、响应请求、向客户端返回请求结果等任务. 它的工作过程主要包括:(1)完成Web 服务器的初始化工作, 如创建环境变量、创建TCP 套接字、绑定端口、开始侦听、进入循环结构, 以及等待接收客户浏览器的连接请求;(2)当有客户端连接请求时,Web 服务器负责接收客户端请求, 并保存相关请求信息;(3)在接收到客户端的连接请求之

39、后,分析客户端请求, 解析出请求的方法、URL 目标、可选的查询信息及表单信息, 同时根据请求做出相应的处理;(4)Web 服务器完成相应处理后, 向客户端浏览器发送响应信息, 关闭与客户机的TCP 连接。Boa服务器根据请求方法的不同, 做出不同的响应. 如果请求方法为HEAD, 则直接向浏览器返回响应首部; 如果请求方法为GET, 则在返回响应首部的同时, 将客户端请求的URL 目标文件从服务器上读出, 并且发送给客户端浏览器; 如果请求方法为POST, 则将客户发送过来的表单信息传送给相应的CGI 程序, 作为CGI 的参数来执行CGI 程序, 并将执行结果发送给客户端浏览器。 Boa

40、的功能实现也是通过建立连接、绑定端口、进行侦听、请求处理等来实现的。4.3 CGI简介CGI 是 Common Gateway Interface 的缩写,是服务器端和用户沟通的程序, 它可以使你的网页更生动,网络上很多工具例如搜索引擎、留言板、BBS等都是 CGI 程序。 CGI是用来沟通HTML表单和服务器端程序的接口(interface)。CGI并不是一种语言,而是可以被其他语言所应用的一个规范集。理论上讲,你可以用任何的程序语言来编写CGI程序,只要在编程的时候符合CGI规范所定义的一些东西就可以了。由于C语言在平台无关性上表现不错(几乎在任何的系统平台下都有其相应编译器),而且对大多

41、数程序员而言都算得上很熟悉,因此,C是CGI编程的首选语言之一。CGI是: “公共网关接口”(Common Gateway Interface)的简称,是HTTP服务器与其它程序进行“交谈”的一种工具,其程序须运行在网络服务器上。CGI是一段程序,它运行在Server上,提供同客户端 Html页面的接口。1CGI的功能:(1)通常情况下CGI程序被用来解释处理来自表单的输入信息,在服务器产生相应的处理,并将相应的信息反馈给浏览器。(2)CGI程序使网页具有交互功能。2CGI处理步骤:(1)通过Internet把用户请求送到服务器。(2)服务器接收用户请求并交给CGI程序处理。(3)CGI程序把

42、处理结果传送给服务器。(4)服务器把结果送回到用户。3CGI可以用任何一种语言编写,只要这种语言具有标准输入、输出和环境变量。(1)CGI程序的输出:CGI程序中的标准输出是经过重定向了的。CGI程序并不会在服务器上产生任何的输出内容,而是被重定向到客户浏览器。这样,如果编写一个C的CGI程序的时候,把一个HTML文档输出到它的stdout上,这个HTML文档会被在客户端的浏览器中显示出来。这也是CGI程序的一个基本原理。CGI程序第一行输出的内容必须是:Content-Type:text/html这个输出作为HTML的文件头。因为CGI不仅可以像浏览器输出HTML文本,而且可以输出图像,声音

43、之类的东西,http服务器向远程发送文件时要说明文件类型。(2)两个重要的CGI环境变量:QUERY-STRING:GET方法表单输入的数据,URL中间号后的内容。CONTENT-LENGTH:POST方法输入的数据的字节数。4.4 AT命令集简介AT即Attention,AT 命令集是从TE(Terminal Equipment )或DTE(Data Terminal Equipment)向TA(Terminal Adapter)或DCE(Data Circuit Terminating Equipment)发送的。通过TA,TE 发送AT 命令来控制MS(Mobile Station)的功

44、能,与GSM 网络业务进行交互。用户可以通过AT 命令进行呼叫、短信、电话本、数据业务、补充业务、传真等方面的控制。SIM300可设置的AT命令包括GSM07.05、GSM07.07、ITU-T介绍的AT命令,除此之外,SIM300还支持SIM公司扩展的AT命令。每个AT命令行必须以“AT”为前缀开始,以r结束。AT命令通常跟随其回应,回应的格式为:rn+回应+rn。下文中r或rn都被省略。SIM300常用的AT命令表1.1。详细的AT命令说明请参考SIM300 AT Command Set。表1.1 常用AT命令命令命令格式功能描述ATAT测试连接是否正常。AT+CMIC=?AT+CMIC=

45、,设置MIC的通道及增益。AT+CMGF=?AT+ CMGF =设置短消息格式。AT+CHFA=?AT+CHFA=切换声音通道。AT+CLVL=?AT+CLVL=喇叭音量调节。AT+CSCS=?AT+CSCS=选择TE 字符集。ATDATD;拨号,建立会话、数据或传真等业务。ATHATH0呼叫挂起。ATAATA呼叫应答。AT+VTS=?AT+VTS=发送DTMF 拨号音。AT+CMGS=?AT+CMGS= , AT+CMGS= 发送短消息。AT+CMGR=?AT+CMGR=,读取短消息。4.5 boa服务器的搭建1配置boa(修改配置文件boa.conf)(1)建立/etc/boa目录, 并复

46、制boa.conf到该目录。(2)修改访问权限:修改User nobody 为 User 0修改Group nogroup 为 Group 0(3)设定日志目录:建立/var/log/boa目录并设置为可读写权限;修改boa.conf文件;ErrorLog /var/log/boa/error_logAccessLog /var/log/boa/access_log(4)设置html文件目录:DocumentRoot /var/www(5)设置默认索引文件(主页):DirectoryIndex index.html(6)设置cgi脚本目录:ScriptAlias /cgi-bin/ /var/(7)根据4、5、6步的设置建立相关文件夹并放入文件。(8)运行boa程序,观察现象。2boa配置相关目录:(1)boa.conf的存放目录:默认boa.conf是在/etc/boa.conf目录的,boa运行时会自动去找/etc/bon.conf目录。这个设定是在defines.h文件中定义的,可在编译之前进行修改。(2)log目录:Boa的日志分为Errorl

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁