




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 07级本科毕业设计(论文)题 目: 家庭安防系统的软硬件设计与实现 系 别: 数学与计算机科学系 班 级: 07计算机科学与技术(嵌入式方向)学 号: 20070861108 姓 名: 伍臣周 指导教师: 王聪 职 称 助教 起讫日期: 2010年9月28日-2011年3月4日 家庭安防系统的软硬件设计与实现伍臣周(三明学院 07级 计算机科学与技术(嵌入式方向) 福建三明 365004)摘要: 系统是由LPC2132 ARM7和自行设计的传感器信号处理和模拟的51单片机共同组成。其中以ARM7为控制核心,外接摄像头、GPRS模块以及外部电器,51单片机连接外部传感器(红外线传感器、烟雾传感
2、器、煤气传感器)并把传感器采集到的异常信号处理后传送给ARM7。当ARM7接收到异常信号时可以控制GPRS模块发送短信通知多个用户,随后能够把摄像头捕获到的发生异常现场的图片通过彩信的方式发送给多个用户,从而实现异常报警功能。主控用户能够用手机向系统发送短信来远程控制家中电器的开关和报警器报警,从而实现远程控制功能。经过实验,此系统稳定性较高,功能较为齐全能够满足大部分用户需求。关键字:GSM/GPRS模块 传感器 51单片机 ARM7 远程控制Family Security System Hardware and Software Design and ImplementationWu ch
3、en zhouSanming University,07 Computer Science and Technology Major(embedded direction), Fujian sanming,365004Abstract:System is made up of the LPC2132 ARM7 and the 51 SCM of self-designed by the sensor signal processing and simulation. With ARM7 as control core, external camera, GPRS module and exte
4、rnal electric appliances, 51 SCM connection external sensor such as infrared sensors、 smoke sensors、 gas sensor and so on , and deal with the abnormal signal then send to ARM7. When ARM7 receives anomalous signals can control GPRS module send SMS notice multiple users, then take the camera captures
5、the anomalies scene images through the MMS way to send multiple users, so as to realize the abnormal alarm function. The master can use cell phones to send SMS to remote control system of home appliance switches and alarm alarm, so as to realize the remote control function. Through experiment, the s
6、ystem stability is higher and complete function which can satisfy the most users demand. Key words:GSM/GPRS Module Sensor 51 SCM ARM7 Remote control 目 录第一章 绪论11.1 系统的背景及意义11.2 系统的国内外概况11.3 系统的应用前景2第二章 系统环境32.1 软件编译环境32.1.1 ADS集成开发环境32.1.2 Keil C51集成环境42.2 系统硬件组成5第三章 LPC2132 ARM7与GPRS技术简介53.1 ARM7内核简
7、介53.1.1 LPC2132 ARM7介绍63.1.2 LPC2132 ARM7管脚寄存器描述63.1.3 LPC2132 ARM7控制寄存器描述73.1.4 LPC2132 ARM7向量中断控制器描述83.1.5 LPC2132 ARM7部分引脚功能使用介绍93.2 GPRS技术简介93.3 系统中使用的AT指令10第四章 51单片机的硬件设计与实现114.1 51单片机的设计思路114.2单片机的报警功能114.3 单片机的控制功能12第五章 系统程序设计135.1 系统功能的分配135.2 程序的总流程图145.3 51单片机控制程序155.4 ARM7扩展口引脚寄存器的设置155.3
8、 中断初始化函数165.4 报警中断处理函数165.5 短信控制处理函数175.6 GPRS图像发送程序18第六章 系统总结19致 谢21参考文献22第一章 绪论随着经济和科技的发展,人们的生活水平逐渐提高、财物逐年积累、住房条件不断改善。家中防盗、防火和自身安全等问题越来越受到人们的重视。为了迎合人们的需求,智能家居、防盗系统、家庭安防系统等产品逐渐上市。然而那些系统针对的问题和人们需求的不同使得它们的有缺点也很明显。本系统以ARM7和自己设计的51单片机外加GPRS等模块实现家庭安全的短信、彩信报警和远程控制家电等功能。1.1 系统的背景及意义自从改革开放以来,我国国民经济和人民生活水平不
9、断的提高,全国出现了许许多多的现代化住宅小区。我国工业的快速发展使得城市外来人口的增加以及煤气和大量家用电器设使用中的不安全因素等,对小区居民的生命和财产造成了很大的威胁。其威胁主要包括两大方面,一方面是犯罪分子趁居民不在家时入室偷窃;另一方面就是意外事故(如当居民不在家时发生意外火灾,或者煤气泄漏)。因此,人们越来越迫切要求采用有效的措施,以满足日益增长的安全防范要求。为了更有效地保证居民的生命和财产安全,在家中和小区内引入了智能化的手段-家庭安防系统来进行安全防范管理。家庭安防系统(home security system)是指通过各种报警探测器、报警主机、摄像机、读卡器、门禁控制器、接警
10、中心及其它安防设备为住宅提供入侵报警系统服务都一个综合性系统。该安全防范系统是家庭、住宅小区防范外来侵害和自然灾害的一种最重要的、最有效的手段,它大大提高了居民自身的安全感,业已成为社会治安的一个重要组成部分。目前市场上较为流行的家庭安防系统产品就是智能家居了。1.2 系统的国内外概况在网络经济时代的大潮中,智能社区的安防建设显得越来越重要,国外的许多大公司己进入到该领域中,如微软公司投资一家ltran公司,专业从事家庭安防和家庭自动化方法的开发设计;IBM公司与建筑商合作,为用户提供装备有先进的安防系统的智能化住宅。美国联邦政府和以IBM、AT&T等大型IT民间企业为首,投资4000亿美元,
11、为全国500万个小区和9000万个家庭提供全面的小区和家庭的安全防护和信息服务1。“安全技术防范”作为一个专业领域,在国内已经历了二十多年的发展历程。它的发展历程分为三个阶段:1979-1983年为起步阶段:19841996年为发展阶段;1997年后为提高阶段,即探索安全技术防范的发展规律和方向的阶段。近两年来,安防行业又有了进一步的发展。在我国即将加入WTO的形势下,积极探讨安防行业的发展问题,对于维护社会治安稳定,促进经济的繁荣,保障人民生活的幸福,具有非常重要而深远的意义。我国安防行业是随着社会主义市场经济的发展而逐步成长起来的,改革开放以来,在国民经济迅速发展,人民生活水平日益提高的推
12、动下,安防行业呈现了一个蓬勃发展的势头。尤其九五期间,我国住宅产业异军突起,极大地促进了安防行业扩大产业规模。1998年起年产值近10亿元的大型安防企业集团上市公司不断涌现。迄今,已有专营或兼营的从业单位数千家,产品种类发展到10余大类,100多个品种,从业人员数万人。1999年初,统计部门针对7类安防产品生产企业进行了初步统计,其中入侵探测器13家,防盗报警控制器74家,汽车防盗报警器22家,楼宇对讲104家,防盗安全门1366家,防盗保险柜245家,机械防盗锁42家,其它类124家。最近几年统计数字显示:中国安防产品行业平均以15一30的年增长率迅速成长。目前,安防产品在市场结构方面呈现三
13、个特点:第一是地区分布不均衡。北京、上海、江苏、浙江、广东和山东六个省市的安防企业占43左右。第二是防产品差别程度不大,国内安防产品企业,生产同类产品的差异性不大。这意着产品容易替代,垄断程度低。第三是在市场进入障碍上呈现弱势。安防产品是境外企业争相进入的热点,进入障碍的高低,影响着市场内已有企业优势的大小。境外安防产品的成熟程度比中国至少早20到30年,就电视监控设备而言,在中国市场上日本产品占有率为45,美国产品25,台湾产品20。安防产品在市场行为方面也具有三个特点:第一是价格竞争不力。由于卖方众多,市场透明度较差,价格定位使企业间相互受到制约,形成了国外产品价位高出国内产品的13倍的局
14、面。第二是产品开发不平衡。在1900多家企业生产的7类产品中,防盗类的企业占65,而入侵探测器企业只占0.5。第三是产品销售不畅。销售组织在围绕扩大市场份额,增加利润,为企业开辟渠道,建立大规模的销售及其信息网络方面,受到现有企业规模,外来经营产品和企业类型等因素的多方面影响。1.3 系统的应用前景本系统是基于GPRS的报警系统将现代通讯技术与ARM7和51单片机结合起来,充分利用发达的无线通讯网络。该系统具有较强的扩展性,可应用于单一家庭、小区物业、电力、交通、石油、煤炭、铁道、市政、公安、银行等部门行业的安防装置系统,只有在有警情的情况时才会发送短信报警,平时不会收取任何费用。所使用的网络
15、是公共无线通讯网络,与使用手机完全相同,每月只需交付SIM的月租费用和适量的报警通信费用,系统的性价比高。居住小区是安防系统产品最大的市场,因为居住小区往往是案件的多发生区,居民对自身财产的保护意思也越来越强。现在就以居住小区为例来说明安防系统的重要作用。白天人们为了自己的生活事业外出工作,这时小偷就有机会趁机闯入小区,进行偷窃。因为白天小区人少,这样就不能及时的抓住小偷。每当人们回家后才知道自己家里被盗,然后去报警。这样即使抓住了小偷也没有办法挽回自己的财产损失了。为此我们设计了智能无线报警系统,就是在发生警情的情况下,如有小偷进入房间,系统可以及时的发送报警短息通知房主,房主接收到短信后可
16、以及时的通知保安人员去查看自己的房间,检查是否真的有小偷闯入。此外,本系统还有煤气泄漏报警和火灾报警。尤其是生产可燃气体公司,一旦有气体泄漏而没有及时发现的话那就非常危险了。本系统可以检测到当空气中某气体含量超过一定时,及时通过手机短信通知保卫人员,从而防止意外事故发生。第二章 系统环境2.1 软件编译环境因为本系统使用了ARM和单片机两种不同类型的开发板,所以程序所需用的编译器就有两种ADS集成开发环境和KeilC 51集成开发环境。2.1.1 ADS集成开发环境ADS集成开发环境是ARM公司推出的ARM内核控制器集成开发工具2,英文全称为ARM Developer Suite,成熟版本为A
17、DS1.2。ADS1.2支持ARM10之前的所有ARM系列微控制器,支持软件调试及JTAG硬件仿真调试,支持汇编、C、C+源程序,具有编译效率高、系统库功能强等特点,可以在Windows98、Windows XP、Windows2000以及RedHat Linux上运行。ADS1.2集成开发环境由6个部分组成,如表2-1所示。表2-1 ADS1.2集成开发环境的6个组成部分名称描述使用方式代码生成工具ARM汇编器ARM的C、C+编译器Thumb的C、C+编译器ARM连接器由CodeWarrior IDE调用集成开发环境CodeWarrior IDE工程管理,编译连接调试器AXDADW/ADUA
18、rmsd仿真调试指令模拟器ARMulator由AXD调用ARM开发包一些底层的例程实用程序(如fromELF)一些实用程序由CodeWarrior IDE 调用ARM应用库C、C+函数库等用户程序使用2.1.2 Keil C51集成环境Keil C51 Vision2集成开发环境是Keil Software,Inc/Keil Elektronik GmbH开发的基于80C51内核的微处理器软件开发平台,内嵌多种符合当前工业标准的开发工具,可以完成从工程建立到管理、编译、链接、目标代码的生成、软件仿真、硬件仿真等完整的开发流程3,尤其是C编译工具在产生代码的准确性和效率方面达到了较高的水平,而且
19、可以附加灵活的控制选项,在开发大型项目时非常理想。Keil C51集成开发环境的主要功能有以下几点:(1)Vision2 for Windows:是一个集成开发环境,它将项目管理、源代码编辑和程序调试等组合在一个功能强大的环境中。;(2)C51国际际准化C交叉编译器:从C源代码产生可重定位的目标模块。(3)A51宏汇编器:从80C51汇编源代码产生可重定位的目标模块。(4)BL51链接器/定位器:组合由C51和A51产生的可重定位的目标模块,生成绝对目标模块。(5)LIB51库管理器:从目标模块生成连接器可以使用的库文件。(6)OH51目标文件至HEX格式的转换器,从绝对目标模块生成Intel
20、 Hex文件。(7)RTX-51实时操作系统:简化了复杂的实时应用软件项目的设计。这个工具套件是为专业软件开发人员设计的,但任何层次的编程人员都可以使用,并获得80C51单片机的绝大部分应用。Keil Software提供了一流的80C51系列开发工具软件,下面描述每个套件及其内容:(1)PK51专业开发套件。PK51专业开发套件提供了所有工具,适合专业开发人员建立和调试80C51系列微控制器的复杂嵌入式应用程序。专业开发套件可针对80C51及其所有派生系列进行配置使用。(2)DK51开发套件。DK51开发套件是PK51的精简版,它不包括RTX51 Tiny实时操作系统。开发套件可针对80C5
21、1及其所以派生系列进行配置使用。(3)CA51编译器套件。如果开发者只需要一个C编译器而不需要调试系统,则CA51编译器套件就是最好的选择。CA51编译器套件只包含Vision2 IDE集成开发环境,CA51不提供Vision2调试器的功能。这个套件包括了要建立嵌入式应用的所有工具软件,可针对80C51及其所有派生系列进行配置使用。(4)A51汇编器套件。A51汇编器套件包括一个汇编器和创建嵌入式应用所需要的所有工具。它可针对80C51及其所有派生系列进行配置使用。(5)RTX51实时操作系统(FR51)。RTX51实时操作系统是80C51系列微控制器的一个实时内核。RTX51 Full提供R
22、TX51 Tiny的所以功能和一些扩展功能,并且包括CAN通信协议接口子程序。2.2 系统硬件组成本系统在ARM7开发板上完成,采用嵌入式C语言作为系统的开发语言。信息的收发过程主要是采用GPRS的AT指令进行程序设计。通过对ARM7寄存器的设置来选择其引脚的功能,ARM7采用中断的方式响应传感器采集的信号。本系统的程序设计主要采用模块分划的方法。其分为GPRS模块、摄像头模块、ARM7设置模块和51单片机模块等,然后通过文件包含和主函数连接各个模块,使系统能够顺利的运行。GPRS模块主要是完成GPRS的初始化、信息的收发;摄像头模块主要完成摄像头初始化、图片捕获、图片编码;ARM7控制模块主
23、要完成ARM7寄存器设置、串口设置与初始化、系统的整体控制;51单片机模块主要完成自身的初始化、信号采集与识别、把高电平信号转换成低电平信号传送给ARM7处理器。家庭安防系统的硬件组成如图2-1所示。ARM751单片机红外线传感器煤气传感器烟雾传感器外部电器报警器外部电器用户GSM/GPRS摄像头电源图2-1家庭安防系统的硬件组成图第三章 LPC2132 ARM7与GPRS技术简介3.1 ARM7内核简介ARM的设计精髓是结构简单。ARM7内核采用了精简指令集计算机(RISC)设计思想,所用逻辑门数较少,硅片面积小,但具有高性能、低功耗的特点,这使得ARM7成为嵌入式系统的理想选择4。ARM7
24、内核包括ARM7TDMI(-S)、ARM720T等,ARM7TDMI处理器内核已经许可给许多世界顶级半导体公司,它是第一个包括Thumb指令集、快速乘法指令和嵌入式ICE调试技术的内核。3.1.1 LPC2132 ARM7介绍本系统使用的LPC2132微控制器是基于一个支持实时仿真和嵌入式跟踪的16/32位ARM7TDMI-CPU,最大操作时钟为60MHz。并带有64kB嵌入的高速Flash存储器和16kB的片内SRAM大大简化了整体应用系统的复杂程度。128位宽度的存储器接口和独特的加速结构使32位代码能够在最大时钟速率下运行。对代码规模有严格控制的应用可使用16位Thumb模式将代码规模降
25、低超过30%,而性能的损失却很小。超小的LQFP64封装很低的功耗使得LPC2132非常适合通信网关,协议转换器,软件MODEM,语音识别,低端成像等应用,为这些应用提供大规模的缓冲区和强大的处理功能。多个32位定时器,两个标准UART口,10位DAC,PWM通道,SPI通讯接口,47个GPIO以及多达9个边沿或电平触发的外部中断使得他也特别适用于工业控制应用以及医疗系统5。LPC2132 ARM7的硬件组成图3-1所示。图3-1 LPC2132 ARM7的硬件组成图3.1.2 LPC2132 ARM7管脚寄存器描述LPC2132的引脚一般是多个功能复用的,可以通过管脚连接模块在多个功能之间进
26、行选择。管脚连接模块通过配置寄存器控制多路开关来连接管脚与片内外设。管脚连接模块的用途是将管脚配置为需要的功能,可实现独立的管脚配置。外设在激活和任何相关中断使能之前必须连接到适当的管脚6。任何使能的外设功能如果没有映射到相关的管脚,则被认为是无效的。芯片复位时PINSEL0、PINSEL1和PINSEL2会自动设置为默认值,所以复位后芯片引脚的功能是确定的。当管脚选择一个功能时,其它功能无效。管脚对应的寄存器如表3-1、表3-2、表3-3所示。表3-1 管脚连接模块对应的寄存器名称描述访问复位值地址PINSEL0管脚选择寄存器0读/写0x000000000xE002C000PINSEL1管脚
27、选择寄存器1读/写0x154000000xE002C004PINSEL2管脚选择寄存器2读/写依情况而定0xE002C014表3-2 LPC2131管脚选择寄存器0PINSEL0管脚名称00011011复位值1:0P0.0P0.0TxD0PWM1保留003:2P0.1P0.1RxD0PWM3EINT0007:6P0.3P0.3SDA0MAT0.0EINT1009:8P0.4P0.4SCK0CAP0.1AD0.60011:10P0.5P0.5MISO0MAT0.1AD0.70013:12P0.6P0.6MOSI0CAP0.2保留0015:14P0.7P0.7SSEL0PWM2EINT20017:
28、16P0.8P0.8TxD1PWM4保留0023:22P0.11P0.11保留CAP1.1SCL10025:24P0.12P0.12保留MAT1.0保留0031:30P0.15P0.15保留EINT2保留00表3-3 LPC2131管脚选择寄存器1PINSEL1管脚名称00011011复位值1:0P0.16P0.16EINT0MAT0.2CAP0.2003:2P0.17P0.17CAP1.2SCK1MAT1.20031:30P0.31P0.31保留保留保留003.1.3 LPC2132 ARM7控制寄存器描述LPC2131具有多达47个通用I/0口,分别为P031:0、P131:16。由于口线
29、与其它功能复用,因而需要进行相关的管脚连接模块(PINSEL0、PINSEL1、PINSEL3)选择连接GPIO,然后通过IODIR进行输入/输出属性设置后才能操作。当管脚选择GPIO功能时,有3个寄存器用于控制GPIO的使用,IOSET、IOCLR和IOPIN。IOSET用于口线置1,而IOCLR则用于口线清零,IOPIN则反映当前IO口的状态,读回IOSET则反映当前IO口设定状态。其有单个位的方向控制、单独控制输出的置位和清零、所有I/O口在复位后默认为输入三个特性。LPC2132 控制寄存器描述如表3-4所示。表3-4 LPC2132 控制寄存器描述通用名称描述访问复位值PORT0地址
30、&名称PORT1地址&名称IOPINGPIO管脚值寄存器 不管方向和模式如何设定,管脚的当前状态都可以从该寄存器中读出。不能使用IOPIN寄存器来监控非GPIO配置管脚。IO0PIN的位0对应与P0.0位31对应与P0.31只读未定义0xE0028000IO0PIN0xE0028010IO1PINIOSETGPIO 输出位置寄存器, 该寄存器和I0CLR寄存器一起控制输出管脚的状态,写入1使对应管脚输出高电平,写入0无效。如果一个管脚被配置为输入或第二功能,写入IOSET无效。IO0SET的位0对应与P0.0位31对应与P0.31读/写0x000000000xE0028004IO0SET0xE
31、0028014IO1SETIODIRGPIO 方向控制寄存器, 该寄存器单独控制每个I/0口的方向。只有当管脚选择GPIO时,IODIR设置才有意义。方向控制位0=输入,1=输出,IO0DIR的位0控制P0.0位31控制P0.31.读/写0x000000000xE0028008IODIR0xE0028018IO1DIR3.1.4 LPC2132 ARM7向量中断控制器描述向量中断控制器(VIC,Vectored Interrupt Controller)具有32个中断请求输入,可将其编程分为3类:FIQ、向量IRQ和非向量IRQ。可编程分配机制意味着不同外设的中断优先级可以动态分配并调整。快速
32、中断请求(FIQ,Fast Interrupt reQuest)要求具有最高优先级。如果分配给FIQ的请求多于1个,VIC将中断请求“相或”后向ARM处理器产生FIQ信号。当只有一个中断被分配为FIQ时可实现最短的FIQ等待时间,因为FIQ服务程序只要简单地启动器件的处理就可以了。但如果分配给FIQ级的中断多于1个,FIQ服务程序需要读取FIQ状态寄存器来识别产生中断请求的FIQ中断源7。向量IRQ(Vectored IRQ)具有中等优先级。该级别可以分配32个请求中的16个。32个请求中的任意一个都可分配到16个向量IRQ slot中的任意一个,其中slot0具有最高优先级,而slot15则
33、为最低优先级。非向量IRQ(Non-vectored IRQ)的优先级最低。VIC将所有向量和非向量IRQ“相或”向ARM处理器产生IRQ信号。IRQ服务程序可通过读取VIC的一个寄存器立即启动并跳转到相应地址。如果有任意一个向量IRQ发出请求,VIC则提供最高优先级请求IRQ服务程序的地址,否则提供所默认程序的地址。该默认程序由所有非向量IRQ共用。默认程序可读取另一个VIC寄存器以确定哪个IRQ被激活。VIC中所有的寄存器都为字寄存器。不支持字节和半字的读和写操作。VIC寄存器描述如表3-5所示。表3-5 VIC寄存器描述名称功能VICSoftInt软件中断寄存器1:强制产生与该位相关的中
34、断请求。0:不强制产生中断请求。向VICSoftInt写入0无效VICSoftIntClear软件中断清零寄存器1:写入1清零软件中断寄存器的相应位,并解除强制的中断请求。0:写入0不会影响VICSoftInt中的相应为VICRawIntr所用中断状态寄存器1:对应为的中断请求或软件中断声明。0:对应位的中断请求或软件中断未声明。VICIntEnable中断使能寄存器当读取该寄存器时,1表示中断请求使能为FIQ或IRQ.写入1使能中断请求或软件中断分配为FIQ或IRQ,写入0无效。VICIntEnClr中断使能清零寄存器1:写入1清零中断使能寄存器中的对应位并禁止对应的中断请求。0:写入0不影
35、响中断使能寄存器中的位。VICIntSelect中断选择寄存器1:对应的中断请求分配为FIQ0:对应的中断请求分配为IRQVICIRQStatusIRQ状态寄存器1:对应位的中断请求使能并分配为IRQ并且声明。VICFIQStatusFIQ状态寄存器1:对应位的中断请求使能并分配为FIQ并且声明。3.1.5 LPC2132 ARM7部分引脚功能使用介绍本系统主要是用LPC2132 ARM7开发板上预留的I/O用作GPIO口来连接外部电器、报警器和接收51单片机传送来的信号,从而实现安防报警和远程控制的功能。其引脚使用如下:(1)输出引脚外接电器、报警器,使用的引脚有P0.5、P0.7、P0.1
36、2。其控制原理是当引脚为高电平时外接电器打开或报警器报警,当引脚为低电平时外接电器关闭或报警器停止报警。(2)输入引脚信号采集,使用的引脚有P0.4、P0.16、P1.23、P1.24、P1.25。其原理是给P0.4、P1.24、P1.25引脚接上4.7欧的上拉电阻,P1.23为高电平提供3.3V的上拉电压,P0.16为中断功能引脚。当51单片机有接收到传感器的报警信号时传送一个高电平给P0.16的引脚触发ARM7的中断,并传送一个低电平给ARM7相对应的引脚,从而实现异常中断报警的功能。3.2 GPRS技术简介GPRS(General Packet Radio Service,通用无线分组业
37、务),是一种基于GSM系统的无线分组交换技术,提供端到端的、广域的无线IP连接。通俗地讲,GPRS是一项高速数据处理的技术,方法是以“分组”的形式传送资料到用户手上8。虽然GPRS是现有GSM网络向第三代移动通信演变的过渡技术,但是它在许多方面都具有显著的优势。GPRS是欧洲电信协会GSM系统中有关分组数据的标准。它采用信道捆绑(目前GPRS 的设计可以在一个载频或8 个信道中实现捆绑) 和增强数据速率的方法实现高速接入,理论上可提供高达115 kbps的空中接口传输速率,使若干移动用户能够同时共享一个无线信道,一个移动用户也可以使用多个无线信道。实际发送或接收数据包的用户仅占很少一部分网络资
38、源,并且网络容量只有在实际传输时才被占用。GPRS与现有的GSM语音系统最根本的区别是: GSM是一种电路交换系统,而GPRS是一种分组交换系统。因此,GPRS特别适用于间断的、突发的或频繁的、少量的数据传输,也适用于偶尔的大数据量传输。这一特点正适合大多数移动互联和设备对传输数据的要求。3.3 系统中使用的AT指令AT命令作为ARM7开发板与GPRS模块通信的协议语言。GPRS通信系统使用AT命令通过串口向GPRS模块发送控制命令9。GSM规范对短消息传输定义了三种控制协议:即二进制协议(块模式),基于字符的AT命令接口协议(文本模式)和基于字符的十六进制编码二进制传输块接口协议(PDU 模
39、式)。块模式 (Block mode) 是使用二进制编码来传输用户数据的接口协议。 为了提高可靠性,它带有差错保护,适合于链接不完全可靠的地区,尤其是要求控制远程设备的情况。它属于GSM第一阶段的短消息传输接口协议。目前,PDU已取代了块模式。文本模式(Text mode)是使用 AT命令传输文本数据的接口协议。该模式适合于非智能终端 、终端仿真器等。PDU模式相当于计算机网络中的分组交换接口协议。这种传送方式能够很平稳地过渡到GPRS,因此GSM规范要求用户尽可能地使用PDU模式处理短消息。所以本系统采用的是PDU模式来编码和解码10。系统中所使用到的AT指令如表3-6所示。表3-6 系统中
40、使用的部分AT指令指令名称功能ATD136OK31401248拨打电话ATH挂断电话AT+ESIMS?测试SIM卡是否正常AT+CSQ测试信号强度AT+CNMI=2,2,0,0,1短信息自动提醒AT+CMGF=0短消息模式,PDU模式AT+CSCS=GSM设置为GSM模式AT+CPBS?询问现在有多少个条目AT+CMGD=1,4删除SIM卡内存上第1到第4条的短信第四章 51单片机的硬件设计与实现4.1 51单片机的设计思路本系统所使用的单片机主要由STC89C52RC控制芯片、晶振、MAX232CPE(串口)、电平转换器、光电耦合器、继电器、电源、电阻、电容、发光二极管、外扩接口等元件组成。
41、其电路功能是:传感器通过外扩接口与单片机相连,当传感器采集到异常信号时向单片机传送一个高电平,此高电平经过光电耦合器转换成低电平,单片机相应的引脚接收到低电平时,经过处理后把它传送给ARM7。此外,单片机还可以直接通过串口连接GSM模块并控制它向用户发送报警短信息(注:单片机的通信功能在本系统中未使用,因此不作详细介绍)。为了方便软件测试,电路中增加了模拟传感器功能的电路。在功能测试时,只要按一下单片机上的按钮就向电路中发送一个高电平来模拟传感器采集到异常信号11。单片机还有预留外接电器的接口,其功能原理是单片机向对应的电路中发送一个弱电,此弱电经过继电器来控制强电,从而控制外接电器的开与关。
42、单片机硬件实物如图4-1所示。图4-1 单片机的硬件实物图4.2单片机的报警功能把各种报警传感器分别安装在不同位置,当出现异常情况时,相应的传感器会的异常信号将由单片机安防报警电路检测到,控制模块通过软件判断出异常情况的类型12,通过串行口控制GSM模块发送相应的报警短信,几秒钟后,用户的手机上就可以接收到报警短信,提醒用户采取措施。当用户知道报警信息后可通过发送短信使报警功能复位报警功能。其部分电路原理图如图4-3,J1可以接不同的传感器引脚,通过光电耦合器将传感器采集到的模拟信号转换为数字信号13,从而转换为单片机能处理的数字信号。单片机接根据接收到的数字信号控制串口向GSM模块发送不同信
43、息,最终实现不同的安全监控。传感器信号采集电路如图4-2所示。图4-2 单片机的异常信号采集电路图4.3 单片机的控制功能单片机的控制电路是通过单片机由弱电控制继电器的开/关,从而完成控制强电的接通/断开。控制系统可以根据GSM模块收到的不同短信信息命令,由单片机控制哪一路电路接通/断开,从而实现对不同外接电器设备进行控制14。其部分原理图如图4-4,J5、J6、J7、J8可以接不同的外部电器,从而实现远程控制多路电路系统。远程控制电路原理如图4-3所示。图4-3 单片机的控制电路图 第五章 系统程序设计5.1 系统功能的分配第四章已经介绍过本系统使用的51单片机可以和GSM模块组合成一个报警
44、系统,但为什么还要使用ARM7呢?主要原因是51单片机在处理图像数据时较为困难,因此在设计时没有设计摄像头接口。其次是因为51单片机和GSM模块组合成的报警系统只能实现短信报警,并不能发送彩信报警信息16。而我们实验室现有的ARM7有集成GSM/GPRS模块能够通过无线网络发送短信和彩信,并且它有预留10个扩展口。因此我们可以使用这些扩展口外接控制电器和传感器实现安防报警和远程控制功能。但是ARM7板上所预留的扩展口对应ARM7芯片上的引脚不同,其所实现的功能就有些不同了。经过测试,只有一个扩展口可以外接传感器,七个扩展口可以外接电器。为了实现一个比较完善的家庭安防报警系统,本系统把ARM7和
45、51单片机各自的优点相结合。51单片机实现传感器信号接收处理后传送给ARM7,ARM7接收51单片机发送来的异常信号控制摄像头捕获异常现场并控制GSM/GPRS模块发送短信信息和彩信信息通知用户。系统的功能模块如图5-1所示,系统的运行组合如图5-2所示。ARM7传 感 器GSM/GPRS摄像头外接电器拍 照控制信号传送用 户通 信控制51单片机信号采集图5-1 系统功能模块图图5-2系统的运行组合图5.2 程序的总流程图程序总流程图如图5-3所示。系统 复位串口初始化读取SIM信息LED1常亮蜂鸣器长鸣关闭中断摄像头初始化GPRS初始化收到控制信息信息处理打开中断YNYYLED2常亮蜂鸣器长
46、鸣NN关闭中断发送相应的报警短信与彩信控制摄像头拍照打开中断中断触发中断返回异常信号分类处理图5-3 程序的流程图5.3 51单片机控制程序void Signal_acquisition()/传感器信号处理函数if(k5=0)/ k5=P20 接收红外线传感器采集到的信号 k1=0;/ k1=P11 传送一个低电平给ARM7的P1.24引脚 delayx1ms(500);/延时1毫秒 k0=1;/ k0=P10 传送一个高电平给ARM7的P0.16触发中断 delayx1ms(500); /延时1毫秒if(k6=0)/ k6=P21 接收烟雾传感器采集到的信号 k2=0;/ k2=P12 传送
47、一个低电平给ARM7的P0.4引脚 delayx1ms(500); /延时1毫秒 k0=1; / k0=P10 传送一个高电平给ARM7的P0.16触发中断 delayx1ms(500); /延时1毫秒if(k7=0)/ k7=P22 接收煤气传感器采集到的信号 k3=0;/ k3=P13 传送一个低电平给ARM7的P1.25引脚 delayx1ms(500); /延时1毫秒 k0=1; / k0=P10 传送一个高电平给ARM7的P0.16触发中断 delayx1ms(500); /延时1毫秒5.4 ARM7扩展口引脚寄存器的设置PINSEL1=PINSEL1 & 0xFFFF3FFF;/设
48、置P1.23为GPIO口IO1DIR = IO1DIR | (1 23);/设置P1.23为输出引脚IO1SET = IO1SET | (1 23);/设置P1.23输出高电平PINSEL0=PINSEL0 & 0xFFFFF3FF;/设置P0.5为GPIO口IO0DIR = IO0DIR | (1 5);IO0CLR = IO1CLR | (1 5); /设置P0.5输出低电平PINSEL0=PINSEL0 & 0xFFFF3FFF; /设置P0.7为GPIO口IO0DIR = IO0DIR | (1 7);IO0CLR = IO0CLR | (1 7);PINSEL0=PINSEL0 &
49、0xFFCFFFFF; /设置P0.12为GPIO口IO0DIR = IO0DIR | (1 12);IO0CLR = IO0CLR | (1 12);PINSEL0=PINSEL0 & 0xFFFFFCFF;/设置P0.4为GPIO口IO0DIR = IO0DIR & 0xFFFFFFEF;/设置P0.4为输入引脚PINSEL1=PINSEL1 & 0xFFFCFFFF;/设置P1.24为GPIO口,IO1DIR = IO1DIR & 0xFEFFFFFF;/ 设置P1.24为输入引脚PINSEL1=PINSEL1 & 0xFFF3FFFF;/设置P1.25为GPIO口IO1DIR = IO
50、1DIR & 0XFDFFFFFF;/ 设置P1.2为输入引脚5.3 中断初始化函数void eint0_init()/中断初始化函数PINSEL1 = PINSEL1 | 0x01;/ 设置管脚连接,P0.16为EINT0EXTMODE = 0x01;/设置EINT0为下降沿触发。/ 打开EINT0中断(使用向量中断)VICIntSelect = 0x00000000;/ 设置所有中断分配为IRQ中断VICVectCntl0 = 0x20 | 0x0e;/ 分配外部中断0到向量中断0VICVectAddr0 = (uint32)IRQ_Eint0;/* 设置中断服务程序地址EXTINT =
51、0x01;/ 清除EINT0中断标志VICIntEnable = 1 0x0e;/ 使能EINT0中断,写入0是无效的5.4 报警中断处理函数void _irq IRQ_Eint0(void) IRQDisable();/先关闭中断,防止自身嵌套和其它中断影响int_led_on();gprs_wakeup();/唤醒GRPSif(IO1PIN&(124) =0 )/判断异常信号是不是红外线传感器采集的led_on(); beep(1000); led_off();delay(1000);send_all_customs(XT);/向用户发送“小偷进入”短信报警和彩信报警delay(1000)
52、; wait_led_on();else /如果是系统误差造成中断则不向用户发送报警短信 led_on(); beep(1000); led_off();delay(1000); photo_buf0 = 0;EXTINT = 0x01;/清除中断标志VICVectAddr = 0;/ 向量中断向量地址寄存器wait_led_on();IRQEnable(); /重新开启中断5.5 短信控制处理函数/处理短信函数,此时gprs接收到的消息已经在gprs_buf里面uint32 handle_message(void).else if (!strcmp(message, 004F00500031
53、)/如果接收到的信息是“OP1”时打开外接电器1 led_on(); beep(1000); led_off(); PINSEL0=PINSEL0 & 0xFFFFF3FF;/P0.5 IO0SET = IO0SET|(1 5); wait_led_on(); send_mut_message(adm_num, 004F00500031);/向主控用户回复外接电器打开 else if (!strcmp(message, 0043004C0031)/如果GSM/GPRS模块接收到的信息是“CL1”时关闭外接电器1 led_on(); beep(1000); led_off(); IO0CLR = IO1CLR|(1 5);wait
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 隧道施工雨季风险控制措施
- 湘教版二年级美术知识点复习计划
- 北师大版七年级下册数学线上教学计划
- 医疗行业职业暴露应急处理流程
- 2025年人教版八年级下册英语教学策略计划
- 基于深度学习的用户评论多粒度情感分析研究与系统实现
- 新警入警培训心得体会
- 环保企业绿色并购对企业绿色创新的影响研究-以高能环境为例
- 水产品加工器具施用苯扎氯铵消毒的效果、风险及风险控制研究
- 资金审批流程
- 2024年山西文旅集团招聘笔试参考题库含答案解析
- 全国流感监测技术指南
- 溶血尿毒综合征-2
- 驾驶员月度安全会议签到表模板
- 第八章仿生原理与创新设计
- Unit5 A party (1) 课件 牛津译林版六年级下册英语
- 王阳明与心学
- 城镇土地使用税减免税申请审批表
- 11楼11月份工程施工月进度计划表
- 高处作业安全监理实施细则
- 运用PDCA血透室导管感染率
评论
0/150
提交评论