基于无线技术的智能小区防盗报警系统毕业设计

上传人:无*** 文档编号:45049148 上传时间:2021-12-06 格式:DOC 页数:29 大小:1.90MB
收藏 版权申诉 举报 下载
基于无线技术的智能小区防盗报警系统毕业设计_第1页
第1页 / 共29页
基于无线技术的智能小区防盗报警系统毕业设计_第2页
第2页 / 共29页
基于无线技术的智能小区防盗报警系统毕业设计_第3页
第3页 / 共29页
资源描述:

《基于无线技术的智能小区防盗报警系统毕业设计》由会员分享,可在线阅读,更多相关《基于无线技术的智能小区防盗报警系统毕业设计(29页珍藏版)》请在装配图网上搜索。

1、目录目录I摘 要:II前 言11、硬件的设计与制作11.1、控制器(cpu)的选择11.2、传感器的选择21.3、编解码电路方案设计51.4、发射与接收电路的设计方案81.5、基于GSM网络的无线报警111.6、显示电路的选择121.7、整机电路的安装与调试142、软件的设计与编写162.1、软件(程序)控制分析162.2、软件(程序)的实现16致谢18参 考 文 献19附 录20附录1: 仪器设备清单20附录2: 部分系统程序20附录3:作品实物图26- 26 -基于无线技术的智能小区防盗报警系统摘 要:现在的小区都实现了智能管理。这样可以避免火灾、盗贼带来的危害,同时。在住户有困难时,可以

2、利用报警系统呼叫管理室,从而帮助住户解决实际问题,从而实现人性化的管理。现在有很多企业专门研究和生产报警系统。他们研究的防盗报警系统有一定的先进性。但存在一定的缺陷。即通常需要重新布线,这使得报警系统的推广有一定的局限性。任何一种系统如果超简单,其适用面应该越广,所以,小区无线报警系统应该是未来的发展方面。关键词: STC89C52RC;GSM ;LCD_1602字符型液晶;无线发射接收;编/解码Burglar Alarm System Based on Wireless Technology in Intelligent Residential DistrictAuthor:Chen Ron

3、g FuTutor:Gu GangAbstractNowadays there are a lot of sub districts applying intelligent management, which can avoid disaster from fire and theft. Moreover, householders can call management room for help with alarm system when they had difficulties. So that problems can be solves and humanized manage

4、ment can be realized.Now there are a lot of companies studying and producing alarm system specially. Their study has its advantage as well as deficiency. Like wise, it is a limitation for the development of the alarm system that to fix up lines again in sub districts. The easier the system it is, th

5、e wider the aptitude it is, so the wireless alarm system in sub district has good prospects for the future.Key words: STC89C52RC;GSM; char type 1602 LCD; wireless Tran receive; coding, decode.前 言随着家居设施与管理的现代化,各种家居系统也越来越朝着智能化,网络化方向发展,报警系统作为智能家居系统的一个重要组成部分,其性能的好坏直接关系到整个智能家居系统的优劣。本人根据无线网络技术和智能家居的特点,设计了

6、一种基于无线网络技术的家居无线报警系统。把无线网络技术应用到家居报警系统中,通过各种传感器实时采集家居的环境信息,通过无线的方式将信息传输给家居控制中心,无线报警系统与普通的布线的报警系统有着明显的优势。该报警系统是一种实用型的电路,同时也是单片机技术、传感检测技术、无线发射接收技术、数字编码控制电路等技术的一种合成体。该无线报警系统可以对整个家居的安全环境进行实时监控。监控的范围包括室内防盗、火灾报警、煤气泄露、水管破裂等一系列不安全因素。一旦有上述安全事故的发生,该报警系统就会发出相应的报警信息,发送给户主以及保卫处。可以使户主在得到报警信息后,立即采取有效的应急措施,对事故进行紧急处理。

7、制作这一系统,对制作者的能力具有一定的挑战性。同时,开发出这一系统,可以在一定范围内推广使用。 1、硬件的设计与制作1.1、控制器(cpu)的选择基于系统的复杂程度和处理数据的速度等要求,选择FPGA或者ARM都有点浪费,所以选择51系列单片机作为主控芯片,在51系列单片机中最终选择STC89C52RC。因为它完全兼容传统的8051,8031的指令系统和引脚,但他的运行速度要比8051快得多,据资料最高支持达40MHz的晶体震荡器,其最大的优点是支持isp在线编程,结束了调试程序需要把片子拔来拔去的烦恼,这使得我们自己在程序的调试过程中更得心应手。加上其具有超强抗干扰,可使系统更稳定

8、。1.2、传感器的选择气体和烟雾报警方面,选用MQ-2A型气体传感器。MQ2A型半导体气敏元件是锡类半导体元件。采用对可然气体有感度的SnO2材料制成的,使用于丁烷、酒精、烟雾、液化石油气等易燃易爆的检测。MQ2A型元件具有灵敏度高、稳定性好、响应恢复特性好、重复性良好、适用范围广等优点。其电路如图1.0所示图1.0 MQ-2A型气敏传感器 灵敏度调整:MQ-2A型气敏元件对不同种类、不同浓度的气体有不同的电阻值。 因此,在使用此类型气敏元件时,灵敏度的调整是很重要的。 厂家建议用1000ppm氢气或1000ppm丁烷校准传感器。图1.1 气体和烟雾报警采样电路气体和烟雾报警采样电路如图1.1

9、,先用运放LM324对采集到的微弱信号进行放大。然后再用LM324够成的比较器电路,对放大后的信号进行比较,进而输出合适的电平驱动后续电路。而电路的灵敏度可对比较基准电压采样电位器RV1进行调整来实现。作为气体传感和作为烟雾传感的灵敏度要求不一样,因此此电路对两个信号进行监控的时候可以采用最严格标准,或者采用两个电路分别对信号进行采集。由于没有测量气体浓度的设备。所以在实际制作调试中采用模拟现场的方式来测试。门窗报警方面,采用被动式热释电红外探头作传感器,其本身不发任何类型的辐射,器件功耗很小,隐蔽性好。价格低廉。它的工作原理及特性如下:在自然界,任何高于绝对温度(- 273度)时物体都将产生

10、红外光谱,不同温度的物体,其释放的红外能量的波长是不一样的,因此红外波长与温度的高低是相关的。传感器电路有两个关键性的元件 1、热释电红外传感器(PIR),它能将波长为8一12um之间的红外信号变化转变为电信号,并能对自然界中的白光信号具有抑制作用,因此在被动红外探测器的警戒区内,当无人体移动时,热释电红外感应器感应到的只是背景温度,当人体进人警戒区,通过菲涅尔透镜,热释电红外感应器感应到的是人体温度与背景温度的差异信号,因此,红外探测器的红外探测的基本概念就是感应移动物体与背景物体的温度的差异。2、菲涅尔透镜,菲涅尔透镜有两种形式,即折射式和反射式。菲涅尔透镜作用有两个:一是聚焦作用,即将热

11、释的红外信号折射(反射)在PIR上,第二个作用是将警戒区内分为若干个明区和暗区,使进入警戒区的移动物体能以温度变化的形式在PIR上产生变化热释红外信号,这样PIR就能产生变化的电信号。人体都有恒定的体温,一般在37度,所以会发出特定波长10微米左右的红外线,被动式红外探头就是靠探测人体发射的10微米左右的红外线而进行工作的。人体发射的10微米左右的红外线通过菲泥尔滤光片增强后聚集到红外感应源上。红外感应源通常采用热释电元件,这种元件在接收到人体红外辐射温度发生变化时就会失去电荷平衡,向外释放电荷,后续电路经检测处理后就能产生报警信号。红外线热释电传感器对人体的敏感程度还和人的运动方向关系很大。

12、红外线热释电传感器对于径向移动反应最不敏感, 而对于横切方向 (即与半径垂直的方向)移动则最为敏感。电路原理及信号流程框图如图1.2:图1.2 人体传感电路框图其输出接口与图1.3接在一齐,就可以实现无线传感,把检测到的信号通过无线的方式传送给从机接收。还有一些其它的传感器也一样道理,这些传感器买回来后可以挂接在控制器(单片机)上。温度传感器方面。本电路利用DS18B20对保卫室内进行温度测量,可测温范围为-55到+125。控制器使用STC89C52RC单片机做数据处理和显示,用液晶显示屏实现温度显示。DS18B20的性能特点:采用单总线专用技术,既可通过串行口线,也可通过其它I/O口线与微机

13、接口,无须经过其它变换电路,直接输出被测温度值(9位二进制数,含符号位),测温范围为-55-+125,测量分辨率为0.0625,内含64位经过激光修正的只读存储器ROM,适配各种单片机或系统机,用户可分别设定各路温度的上、下限,内含寄生电源。DS18B20内部结构: 图1.3 DS18B20内部结构DS18B20内部结构如图1.3所示,主要由四部分组成:64位光刻ROM,温度传感器,非挥发的温度报警触发器TH和TL,高速配置暂存器。64位光刻ROM是出厂前被光刻好的,它可以看作是该DS18B20的地址序列号。不同的器件地址序列号不同。 DS18B20高速暂存器共9个存存单元,如表1所

14、示:序号寄存器名称作用序号寄存器名称作用0温度低字节以16位补码形式存放4、5保留字节1、21温度低字节6计数器余值2TH/用户字节存放温度上限7计数器/3HL/用户字节存放温度下限8CRC表1以12位转化为例说明温度高低字节存放形式及计算:12位转化后得到的12位数据,存储在18B20的两个高低两个8位的RAM中,二进制中的前面5位是符号位。如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625才能得到实际温度。高8位SSSSS262524低8位232221202-12-22-32-4DS18B

15、20控制方法:在硬件上,DS18B20与单片机的连接有两种方法,一种是Vcc接外部电源,GND接地,I/O与单片机的I/O线相连;另一种是用寄生电源供电,此时UDD、GND接地,I/O接单片机I/O。无论是内部寄生电源还是外部供电,I/O口线要接5K左右的上拉电阻。 DS18B20有六条控制命令,如表2所示:指    令 约定代码 操      作    说      明 温度转换 44H 启动DS18B20进行温度转换 读暂存器 BE

16、H 读暂存器9个字节内容 写暂存器 4EH 将数据写入暂存器的TH、TL字节 复制暂存器 48H 把暂存器的TH、TL字节写到E2RAM中 重新调E2RAM B8H 把E2RAM中的TH、TL字节写到暂存器TH、TL字节 读电源供电方式 B4H 启动DS18B20发送电源供电方式的信号给主CPU 表2根据DS18B20的通讯协议,主机控制DS18B20完成温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待16

17、60微秒左右,后发出60240微秒的存在低脉冲,主CPU收到此信号表示复位成功。1.3、编解码电路方案设计方案一:使用单片机直接编码和解码。此方案使用单片机发出的波形或者频率实现编码和解码,主要在软件上实现,可减少硬件电路。但此方案的稳定性不太好。故不采用此方案。方案二:采用单片机配合集成锁相环路芯片LM567进行编解码。LM567性能优良和价格低廉,并且内部集成锁相环路,中心频率调节从0.01Hz到500kHz 可调。可采用用单片机控制其振荡电路的电阻从而使其产生不同频率实现编码功能。当接收电路接收到的信号频率与其内部的压控振荡器振荡频率一致,经LM567内部的正交相位检测电路比较

18、,在LM5678脚输出低电平,作为执行信号。稳定性较好,但由于此编码方式所能产生的码较少,不能适应系统的要求。故不采用此方案。方案三:采用专用编解码芯片(如PT2262、PT2272等),结合单片机进行编解码。虽然此方法编解码相对采用锁相环编解码电路较为简单,容易调试,结合单片机进行编解码,其稳定性和保密较好。故采用此方案。PT2262/2272是台湾普城公司生产的一种CMOS工艺制造的低功耗低价位通用编解码电路,PT2262/2272最多可有12位(A0-A11)三态地址端管脚(悬空,接高电平,接低电平),任意组合可提供531441地址码。其电路连接图图如图1.4和1.5所示。图1.4 无线

19、发射和硬件编码部分电路图1.5无线接收和硬件编码部分电路编码芯片PT2262发出的编码信号由:地址码、数据码、同步码组成一个完整的码字,解码芯片PT2272接收到信号后,其地址码经过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也输出高电平,如果发送端一直按住接通(高电平),编码芯片也会连续发射。当发射机没有按键接通时,PT2262不接通电源,其17脚为低电平,所以315MHz的高频发射电路不工作,当有报警信号产生时,PT2262得电工作,其第17脚输出经调制的串行数据信号,当17脚为高电平期间315MHz的高频发射电路起振并发射等幅高频信号,当17脚为低平期间315MHz的高频发射

20、电路停止振荡,所以高频发射电路完全收控于PT2262的17脚输出的数字信号,从而对高频电路完成幅度键控(ASK调制)相当于调制度为100的调幅。地址码和数据码都用宽度不同的脉冲来表示,两个窄脉冲表示“0”;两个宽脉冲表示“1”;一个窄脉冲和一个宽脉冲表示“F”也就是地址码的“悬空”。图1.6波形图 图1.6是我们从超再生接收模块信号输出脚上截获的一段波形,可以明显看到,图上半部分是一组一组的字码,每组字码之间有同步码隔开,所以我们如果用单片机软件解码时,程序只要判断出同步码,然后对后面的字码进行脉冲宽度识别即可。图下部分是放大的一组字码:一个字码由12位AD码(地址码加数据码,比如8位地址码加

21、4位数据码)组成,每个AD位用两个脉冲来代表:两个窄脉冲表示“0”;两个宽脉冲表示“1”;一个窄脉冲和一个宽脉冲表示“F”也就是地址码的“悬空”    2262每次发射时至少发射4组字码,2272只有在连续两次检测到相同的地址码加数据码才会把数据码中的“1”驱动相应的数据输出端为高电平和驱动VT端同步为高电平。因为无线发射的特点,第一组字码非常容易受零电平干扰,往往会产生误码,所以程序可以丢弃处理。1.4、发射与接收电路的设计方案目前比较流行的发射接收电路主要有红外、蓝牙、无线电,由于红外的方向性强,距离短,蓝牙的距离也比较短,因此我们采用无线电的方式,

22、其传输距离远、抗干扰能力强、无方向性。下面来讨论一下如何实现无线通信。方案一:使用图1.7所示的调频发射电路,本电路元件不太多,虽然调试比单管的要难一点,但其发射频率比较稳定。输入的信号先在BG1完成混频、产生调频波。再经过C6耦合到后级BG2高频功率放大后经天线发送。图1.7 调频发射电路而此时接收部分相对采用集成电路制作。现在具有FM解调功能的芯片技术已经非常成熟。而且外围电路相对采用分立元件的要简单,调试也容易,适合在短时间内制作调试好。如SONY公司的CAX1911芯片,该芯片性能良好。但考虑到此方案发射的频率为广播电台附近的频率,会受到干扰,并且此频段的无线电发射是受到限制的。如果把

23、频率调得太偏的话,接收芯片制作的接收电路的稳定性会变差。因为不选用些方案。方案二: 早期的发射机较多使用LC振荡器,频率漂移较为严重。声表器件的出现解决了这一问题,其频率稳定性与晶振大体相同,而其基频可达几百兆甚至上千兆赫兹。无需倍频,与晶振相比电路极其简单。图1.8发射机电路,由于使用了声表器件,电路工作非常稳定,即使手抓天线、声表或电路其他部位,发射频率均不会漂移。图1.8 采用声表器件的发射电路 接收机可使用超再生电路或超外差电路,超再生电路成本低,功耗小可达100uA左右,调整良好的超再生电路灵敏度和一级高放、一级振荡、一级混频以及两级中放的超外差接收机差不多。然而,超再生电路的工作稳

24、定性比较差,选择性差,从而降低了抗干扰能力。图1.9为典型的超再生接收电路。 图1.9 超再生接收电路而方案二由于性能良好,我们选用方案二,并且此方案市面上已经有模块出售。所选的模块参数以及测试结果如下:主要技术指标:1、通讯方式:调幅AM2、工作频率:315MHZ 3、频率稳定度:±75KHZ4、发射功率:500MW5、静态电流:0.1UA6、发射电流:350MA7、工作电压:DC 312V 在电路中使用5V供电,用高频毫伏表实测其发射电压约为:0.8V ,由于其天线阻抗是50欧,所以其发射功率约为 0.8*0.8/5012.8MW。由于测试条件的限制。发射距离80米效果依然比较好

25、(因此推断发射距离应该可以更远)。如果不满足实际要求,对于实际产品中可以采用提提高电压的方法增加发射距离。或者换用功率更大的模块。1.5、基于GSM网络的无线报警近年来,短信息作为一种新的信息业务,获得极为快速的发展。短信息业务是通过存贮转发、实时监测的机制,提供可靠的、低开销的无线数据业务,不仅是现阶段最重要、最方便的无线数据接人手段,未来随着无线网络的发展,短信息的机制同样也可适用于GPRS直到3G网络。基于短信息的智能SIM 卡技术的成熟更是从业务上大大方便了用户的使用。行业应用应该是未来短信发展的主要方向。所以本系统中加入了短信报警功能,短信报警系统采用了wavecom芯片的GSM M

26、odem, 其主要特性有:支持EGSM900和GSM1800双频支持数据、语音、短消息和传真服务采用电路交换最高速率为14.4kbps支持的电压范围:6V30V低功耗,全部采用工业接口用于显示工作状态的LED符合GSM Phase 2/2+的标准认证支持标准的RS-232串行接口GSM第四类收发器(最大2瓦)短信息服务(SMS),支持PDU和Block模式,符合GSM07.05标准符合GPRS CLASS 10标准,上行26.8Kbits/S,下行53.6Kbits/SAT命令集,符合GSM07.07,GSM07.05和V25短信息系统要通过AT指令来控制GSM Modem发送短消息,而对SM

27、S的控制共有3种实现途径:BlockMode、基于AT命令的Text Mode和基于AT命令的PDU Mode。使用Block Mode需要手机生产厂家提供驱动支持。Text Mode比较简单,但这种模式只能发送AsCII码,不能发送中文的Unicode码。PDU模式是发送或接收手机SMS信息的一种方法,短信息正文经过十六进制编码后被传送,PDU模式不仅支持中文短信,也能发送英文短信。目前,PDU 已取代Block Mode,因此采用PDU的方式进知短信发送。该GSM Modem支持标准的RS-232串行接口,因此单片机采用串行接口与其通信。要GSM Modem实现中言语短信的发送,须要了解一

28、些基本AT指令之外,PDU短信格式的编码也是必不可少的。下面简单介绍一下PDU模式中的短信编码:PDU模式收发短信可以使用3种编码:7-bit、8-bit和UCS2编码。7-bit编码用于发送普通的ASCII字符,8-bit编码通常用于发送数据消息,UCS2编码用于发送Unicode字符。一般的PDU编码由A B C D E F G H I J K L M十三项组成。A:短信息中心地址长度,2位十六进制数(1字节)。B:短信息中心号码类型,2位十六进制数。C:短信息中心号码,B+C的长度将由A中的数据决定。D:文件头字节,2位十六进制数。 E:信息类型,2位十六进制数。F:被叫号码长度,2位十

29、六进制数。G:被叫号码类型,2位十六进制数,取值同B。H:被叫号码,长度由F中的数据决定。I:协议标识,2位十六进制数。J:数据编码方案,2位十六进制数。K:有效期,2位十六进制数。L:用户数据长度,2位十六进制数。M:用户数据,其长度由L中的数据决定。J中设定采用UCS2编码,这里是中英文的Unicode字符。需要注意的是,PDU串的用户信息长度(TP-UDL),在各种编码方式下意义有所不同。7-bit编码时,指原始短消息的字符个数,而不是编码后的字节数。8-bit编码时,就是字节数。UCS2编码时,也是字节数,等于原始短消息的字符数的两倍。1.6、显示电路的选择方案一:采用数码管指示号码,

30、二极管指示信号。些方案制作方便,但对信号的来源说明不够直接。故不采用。方案二:采用液晶屏,液晶屏显示模块与数码管相比,它显得更为专业、漂亮。液晶显示屏有着微功耗、体积小、显示内容丰富、超薄轻巧、使用方便等诸多优点用其显示各信号和号码。这样的话可以直观的指示出各种信息。因些采用此方案。在制作中选用了TC_1602的字符型液晶,1602采用标准的16脚接口,其中:第1脚:VSS为地电源第2脚:VDD接5V正电源第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度第4脚:RS为寄存器选择,高电平时选择

31、数据寄存器、低电平时选择指令寄存器。第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。 第1516脚:空脚在使用过程中要注意V0对比度控制脚的调整,如果设置不正确的话,会显示不出正常的字符。其连接图如图1.10所示。图1.10液晶与主控CPU的连接电路图1602液晶模块内部的控制器共有11条控制指令,如表3所示。它的读写操作、屏幕和光标的

32、操作都是通过指令编程来实现的。表3指令表指令1:清显示,指令码01H,光标复位到地址00H位置指令2:光标复位,光标返回到地址00H 指令3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效 指令4:显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁 指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标 指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8

33、位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符 (有些模块是 DL:高电平时为8位总线,低电平时为4位总线)指令7:字符发生器RAM地址设置 指令8:DDRAM地址设置 指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。 指令10:写数据 指令11:读数据1.7、整机电路的安装与调试本系统设计与制作过程采以模块化设计为主。即把主电路分为各个模块来设计,各模块设计好后,再拼凑成一个完整的电路。把以上各模块电路进行设计和调试好后。就来进行总体的组合与调试。从机部分主要

34、由:各传感器、STC89C52RC单片机、GSM模块、PT2262编码芯片、发射电路模块组成。组成框图如图1.11。图1.11 从机硬件组成框图主机部分主要由:接收电路模块、PT2272解码芯片、PT2272解码芯片、STC89C52RC单片机、LCD_1602液晶显示电路模块组成。组成框图如图1.12。图1.12 主机硬件组成框图在组合模块之前调试主要是功能模块电路的调试,汇总组成完整功能电路后硬件调试相对较少,组合后主要为软件调试。2、软件的设计与编写2.1、软件(程序)控制分析考虑系统的稳定性和安全性。编码部分采用了由编码芯片和单片机结合的一种编码方式。从机程序分析:初始化时读取设置好的

35、房间号。传感器的信号传到单片机采用中断触发方式,当中断到来后单片机对带传感器的接口进行读取。之后单片机STC89C52RC和编码芯片PT2262把读取到的房间号和传感器信号进行编码,最后通过AT指令,送到GSM模块中发射到主人手机上去;以及送到无线发射模块中去,发送到主机上去。主机程序分析:程序初始化时把液晶显示屏进行初始化,显示欢迎屏幕。之后等待中断事件,当接收模块接收到有报警信息时,触发单片机的中断处理,此时单片机开始读取信号并与解码芯片PT2272对其进行解码处理。把报警信号解码识别出来后送到LCD_1602液晶进行显示,同时触发报警响铃。2.2、软件(程序)的实现在单片机编程方面,首先

36、要考虑的是程序语言的选择。在51方面的编程主要使用的有汇编和C语言,以下对两种语言进行对比,以进行选择。汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的CPU,其汇编语言可能有所差异,所以不易移植。 C语言是一种结构化的高级语言。其优点是可读性好,移植容易,是普遍使用的一种计算机语言。缺点是占用资源较多,执行效率没有汇编高。 对于目前普遍使用的RISC架构的8bit MCU来说,其内部ROM、RAM、STACK等资源都有限,如果使用C语言编写,一条C语言指令编译后,会变成很多条机器码,很容易出现ROM空间不够、堆栈

37、溢出等问题。而汇编语言,一条指令就对应一个机器码,每一步执行什幺动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起来也比较方便。 而C语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能。C语言有功能丰富的库函数、运算速度快、编译效率高、有良好的可移植性,而且可以直接实现对系统硬件的控制。C语言是一种结构化程序设计语言,它支持当前程序设计中广泛采用的由顶向下结构化程序设计技术。此外,C语言程序具有完善的模块程序结构,从而为软件开发中采用模块化程序设计方法提供了有力的保障。因此,使用C语言进行程序设计已成为软件开发的一个主流。用C语言来编写目标系统软件,会大大缩

38、短开发周期,且明显地增加软件的可读性,便于改进和扩充,从而研制出规模更大、性能更完备的系统。本系统主要采用模块化设计,由于程序长度并不太大(大概几百行),单片机的内部ROM已经足够应付。而我们需要的是程序以后的可读性较好,移植、改进和扩充比较方便。以便于系统性能更强大,更稳定。所以我选择了C语言编程。程序的编写是根据硬件的支持下完成的,所以要编出程序必须有硬件的接口资料,此系统用的接口资料如下:/*接收部分*/液晶:D0D7P0.0P0.7RSP2.7R/WP2.6ENP2.52272:D3P2.0D2P2.1D1P2.2D0P2.3报警器控制口:p3.7GSM通信采用串口通信收报警信号:01

39、火警,02门警/*发射部分*/发射EN端:p2.4房号编码:P0口,01为房号2262:D0P2.0D1P2.1D2P2.2D3P2.3布防无线接口:P1.0撒防无线接口:P1.1手动报警无线接口:P1.3门控检测:P1.2气体检测:INT1程序的编写主要根据图2.1的软件流程图来编写。详细程序见附件二。图2.1 软件流程图致谢本系统在设计与制作的过程中遇到不少问题,感谢老师提供了些方法和方案来解决这些问题。由于个人能力有限,此系统还不尽完善,以后会努力把它完善的。谢谢!参 考 文 献1. 全国大学生电子设计竞赛组委会. 全国大学生电子设计竞赛获奖作品汇编.北京理工大学出版社,2004年8月,

40、第1版2. 黄智伟. 全国大学生电子设计竞赛训练教程.电子工业出版社,2005年1月,第1版3. 高吉祥.高频电子线路. 电子工业出版社,2005年3月,第1版4. 曾兴雯,刘乃安,陈健.高频电路原理与分析.西安电子科技大学出版社, 2001年8月,第3版5. 肖洪兵,胡辉,郭速学.跟我学用单机.北京:北京航空大学出版社, 2004年4月,第3版6. 谭浩强,张基温,唐永炎.C语言程序设计教程教程.高等教育出版社,1998年7月第二版7. 曹天汉,宁凡,张雪娟.单片机原理与接口技术.电子工业出版社,2006年8月第二版8. 林德杰,林均淳,曾宪云.电气测试技术.机械工业出版社,2007年10月

41、第二版附 录附录1: 仪器设备清单² TH2811C型LCR数字电桥.常州市同惠电子有限公司.1台² TH2618B型电容测试仪. 常州市同惠电子有限公司. 1台² HFJ-8D超高频毫伏表. 上海爱仪电子设备有限公司.1台² GDS-820S数字示波器(150MHz).固伟电子实业有限公司. 1台² GOS-620普通示波器(20MHz). 固伟电子实业有限公司. 1台² GAG-810音频信号发生器. 固伟电子实业有限公司. 1台附录2: 部分系统程序/*报警系统发射程序更新日期: 2008-11-18作者: crf*/#incl

42、ude<reg52.h>/#include<Intrins.h>#define uchar unsigned char#define uint unsigned intsbit waring=P26; /*报警响铃控制*/sbit senden=P24; /*低电平有效*/sbit start=P10; /*布防键*/sbit no_start=P11; /*消防键*/sbit door=P12; /*有人进入*/sbit m_war=P13; /*手机报警按键*/sbit TX_power=P27; /*发射电路电源*/uchar code at= "atx

43、0Dx0a"uchar code cmgf0= "AT+cmgf=0x0Dx0a"uchar code cmgs0= "at+cmgs=49x0Dx0a"uchar code cmgs1= "at+cmgs=43x0Dx0a"uchar code fire_msg= "0011000D91683167602927F3000801225BB691CC53D1751F6C144F5376D163A762A58B66FF01FF01FF018BF76CE8610FFF01x1a" uchar code door

44、_msg= "0011000D91683167602927F3000801225BB691CC53D1751F95E87A9776D163A762A58B66FF018BF76CE8610F5B895168FF01x1a" uchar floor,num,k=0,sing,sn=0,door_msm=1,fire_msm=1;void delay(unsigned int i);void delayNs(uchar s);void SendASC(uchar ASC);void SendToGsm(uchar* p);void int_Initial();void send

45、_data(); /*主程序*/void main() int_Initial();delay(1000); senden=1; floor=(P0>>4)&0x0f;delay(10); num=P0&0x0f;loop: waring=0;delay(8000);waring=1;while(start=0 && m_war=0) /*没有布防也没有手动报警*/k=0;door_msm=1;fire_msm=1;TX_power=1;EX1=1;waring=0;delay(30000);waring=1;while(1) if(no_start

46、=1) goto loop; /*撤防按键是否按下去?*/ if(m_war=1)/*手动报警按下去*/ TX_power=0;for(sn=0;sn<3;sn+) sing=0x00; delay(20); P2=0x40; delay(10); senden=0; delay(8000); senden=1; send_data(); if(door=1)/*门控报警按下去*/ TX_power=0; for(sn=0;sn<3;sn+) P2=0x42; delay(10); senden=0; delay(8000); senden=1; send_data(); dela

47、y(100); if(door_msm=1) door_msm=0; SendToGsm(at); delay(500); SendToGsm(cmgf0); delay(800); SendToGsm(cmgs0); delay(60000); delay(60000); delay(60000); SendToGsm(door_msg); waring=0; delay(8000); waring=1; while(k!=0)/*火警中断来了并且按了启动*/ TX_power=0; for(sn=0;sn<3;sn+) P2=0x41; delay(10); senden=0; de

48、lay(8000); senden=1; send_data(); delay(100); if(fire_msm=1) fire_msm=0; SendToGsm(at); delay(500); SendToGsm(cmgf0); delay(800); SendToGsm(cmgs0); delay(60000); delay(60000); delay(60000); SendToGsm(fire_msg); waring=0; delay(8000); waring=1; waring=1; /k=0; /*中断初始化*/void int_Initial() PCON |= 0x80

49、; /PCON: power control , SMOD=1 SCON = 0x50; /SCON: serial control TMOD = 0x20; /TMOD: timer model TH1 = 0xFA; /Bps: 9600 TR1 = 1; EA = 1; ES = 1; TI = 0; RI = 0;/ EX0=1; EX1=1; / IT0=1; IT1=1; /*/void es_server() interrupt 4 if(RI) while(RI = 0 ); RI=0; else TI=0; /* 发送子程序*/void SendASC(uchar ASC)

50、bit es; es=ES; ES=0;/关闭中断 TI=0; SBUF=ASC; while(!TI); TI=0; ES=es;/* 发送字符串程序*/void SendToGsm(uchar* p) while(*p!='0') SendASC(*p+); /*中断服务程序*/void ex0_sever() interrupt 0 /sing=0x02;TX_power=0; k=1; void ex1_sever()interrupt 2 /*fire*/ /sing=0x01; /TX_power=0; EX1=0; k=2; /*发送315M报警信号子程序*/vo

51、id send_data() /TX_power=0; for(sn=0;sn<3;sn+) delay(200); P2=P2&0xf0|floor; delay(10); senden=0; delay(8000); senden=1; for(sn=0;sn<4;sn+) delay(200); P2=P2&0xf0|num; delay(10); senden=0; delay(8000); senden=1; delayNs(1); /*延时子程序*/void delay(unsigned int i) while(i-);void delayNs(uch

52、ar s) uchar loop; uint j; while(s-) /loop=10; loop=5; while(loop-) j=8375; while(j-); /*报警系统接收程序更新日期: 2008-11-18作者: crf*/#include<reg51.h>#define uchar unsigned char#define uint unsigned int/*引脚定义*/sbit LCD1602_EN =P25; /SCLK H ENABLEsbit LCD1602_RW =P26; /R/ W(STD) 1:READ0 :WRITEsbit LCD1602_

53、RS =P27; / 1:DATA0 :COMMANDsbit Warning =P37;uchar num=0,sing=3,m=0,n=0,l=0,k=1,temp1=0xff;uchar table10=48,49,50,51,52,53,54,55,56,57;uchar table116=0,8,4,12,2,10,6,14,1,9,5,13,3,11,7,15;uchar s3;uchar z1;/*函数定义*/void LCD1602_Command (uchar tt);void LCD1602_XY(uchar y,uchar x,uchar *p);void LCD1602

54、_Init(void);void LCD1602_show(uint tt);void Delay(uint i);/*主程序*/void main() uchar temp=1; EA=1; EX0=1; IT0=1; LCD1602_Init(); LCD1602_XY(0,0," nomral! "); LCD1602_XY(1,0,"-by XLX and CRF! ");loop: if(k!=temp) /*K判断有没有数据接收 */ LCD1602_show(num); temp=k; goto loop;/*显示子程序(处理接收到的信号)

55、*/void LCD1602_show(uint tt) if(tt<8) m=tt&0x03; z0=tablem%10+1; /楼层信号 else s0='0' /房间信号 s1=table(tt&0x03%10)+1; z0=tablem%10+1; LCD1602_XY(0,0," Warning! "); LCD1602_XY(1,7," num: "); if(temp1!=sing) if(sing=0x01) LCD1602_XY(1,0,"Fire "); else if(sin

56、g=0x02) LCD1602_XY(1,0,"door "); else if(sing=0x00) LCD1602_XY(1,0,"manual"); else if(sing=0x03) LCD1602_XY(1,0," wait "); temp1=sing; Warning=0;/*报警声响*/ LCD1602_XY(1,13,z); LCD1602_XY(1,14,s);/*写指令*/void LCD1602_Command (uchar tt) Delay(20) ; /* 以确保上一指令/数据模块已经接收处理完 */ LCD1602_EN = 1 ; LCD1602_RS = 0 ; /* RS=0写指令寄存器,RS=1写数据寄存器 */ LCD1602_RW = 0 ; /* RW=0表示写,RW=1表示读 */ Delay(20); P0 = tt ; Delay(20); LCD1602_EN = 0 ; Delay(20);/*设置坐标和写数据*/void LCD1602_XY(uchar y,uchar x,uchar *p) uchar addr,i; for(i=x;(*p!=0)&&(i<16);p+,i+) if(y

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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