版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
r~i基于单片机的火灾报警系统设计毕业设计口习不口习不、IE不白而rij不斗精品目录1刖言1.1课题的开发背景进入上世纪90年代后,我国经济步入高速发展的时期,城市化建设不断加快,城市建筑也由分散式低密度向集中式高密度过渡,林立的高层建筑成了城市的主要的标志。居民住进了高层塔楼,企业搬进了摩天大楼,高层建筑有效利用空间,节约了城市中本就十分紧张的土地资源。任何事物的发展都具有两面性,高层建筑中各种通讯线路、动力和照明线路、以及各种系统中线路纵横交错,致使火灾的发生概率也在大幅增加。加之现代建筑的密闭性较强,一旦发生火灾,整幢大楼就像一个大的火炉,而楼梯道、各种通风管道、线路竖井都是效果极佳的火筒,从而给灭火施救造成了巨大的难度,对火灾发生后及时发现、及时控制的要求促使了火灾报警产品应运而生。与此同时,现代计算机技术、通讯网络技术和自动控制技术的飞速发展又为人类实现更加理想化的生活提供了可能.智能小区应运而生了。在智能小区内安装智能型火灾报警控制系统是必不可少的。智能型火灾报警系统是一个集信号检测、传输、处理和控制于一体的控制系统,代表了当前火灾报警系统的发展方向。随着科学技术的迅猛发展以及国内外经济的迅速增长,市场上迫切需要一种容量大、性奸口僧而能优越、可靠性高、便于安装、使用和维护的智能型火灾报警控制系统。1.2课题设计的意义我国的火灾自动报警控制系统经历了从无到有、从简单到复杂的发展过程,其智能化程度也越来越高。目前,国产火灾自动报警系统均采用汉字显示,价格低廉,适合我国国情,但是火灾自动报警系统由于多数没有分布智能,可靠性低,且产品没有形成系列化、品种不全,产品的外观也较差,编程复杂,调试不方便,设备兼容性差。国外产品多数具有分布智能,可靠性高,产品具有系列化、品种齐全,产品外观美观,人机对话功能强。缺点是多数没有汉化,操作维护不便,价格较高,设备兼容性差。根据以上的分析,开发具有国际先进水平的火灾自动报警设备,价格介于进口设备和国产设备之间,从而具有很高的性能价格比,因此,研制一种结构简单、价格低廉的智能型火灾报警器是非常必要的。1.3课题完成的功能当报警器监测到火情信息后,将表征火灾参数的物理量转化为电信号,通过电子线路将其放大、变换、传输、处理,直接通过Modem经公用电话交换网迅速向消防指挥中心报告火情信息(包括火灾单位编码、单位名称、火情级别以及报警时间等),同时不盲而不盲而不盲而不盲而口产生声光报警信号,并按事先预留的电话号码自动拨号通知单位有关负责人。消防指挥中心根据接收到的火警信息,立即在消防信息数据库中查询单位位置、周围道路、交通、水源情况等基本信息,根据所获得的信息迅速确定最佳救火方案,通过网络将出警命令直接下达各消防中队。动探测报警装置,因此,研制一种结构简单、价格低廉的语音数字联网火灾报警器是非常必要的。:口:口:口:口2总体方案设计2.1方案比较方案一方案一的系统框图如下图2.1所示,分为两个部分,发送电路和接收电路两部分组成的,发射电路从传感器接收到的信号经过信号处理电路转化成单片机能接收的信号,单片机接收信号后经过单片机程序的算法,判断是否有火灾发生,如有火灾的时候则一级的声光报警电路发出报警信号,同时单片机将信号通过无线信号,将火灾信号向上位机,上位机总是在查询接收模块,是否有火灾信号的发送,接收电路将接收到的火灾信号传到上位机的单片机,通过单片机程序使上位机的报警电路报警,同时发射部分电路接收部分电路lr=h□EHffi显示火灾的地点通过LCD显示。图2.1方案一系统框图方案二方案二是通过传感器检测信号到下位机单片机通过RS-485总线传输给上位机通过上位机显示报警信息。图2.2方案二系统框图蛙口蛙口不盲而不盲而口2.2方案论证与选择综上所述,方案一无论是从电路的结构复杂程度的角度,还是在生活中应用都是的容易实现,采样无线传输在安装简单,布线相对复杂,在一些恶劣的环境中传输也会受到影响,所以我还是选择方案一。3单元模块设计3.1各单元模块功能介绍与电路设计3.1.1电路显示电路LCD1602DNGV5+bAVDNGccvDNGDNGV5+bAVDNGccvDNG72^±IROPpo^±IROP515616图3.1LCD接线图如图3.1是本设计的LCD显示电路,LCD将显示实时温度。LCD1602采用16脚DIP封装,他与单片机连接有11个I/O口,其中D0~D7并行数据端口,与单片机P0.0〜P0.7连接,LCD的E,R/W,RS分别与单片机P2.0〜P2.2连接。而LCD的E端为使能端,当E端由高电平跳变成低电平时液晶模块执行命令,液晶模块执行命令R/W脚为读写控制脚。R/W为高电平时为读操作;低电平时为写操作。RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度[3]。1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名口等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显,控制简单。由于LCD有两横数计显示位置,因此系统通电后,LCD有两种显示方式:LCD第一横显示"weidushi:"和当前温度值;(正常显示)LCD除显示第一种①方式外还在第二横显示"chuxianyichang"字样。(异常显示)当温度采集模块,红外、烟雾检测模块三项电路模块中任意两种检测电路发生异常时,LCD以显示第③方式显示,只有当两项出现异常的检测电路中任意一项电路异常排除时才恢复正常显示。当把手动控制模块中控制按键按下时,LCD异常显示,只有当按下复位键时才恢复正常显示。1602液晶模块内部的控制器共有11条控制指令,如下表3.1所示:表3.11602控制表序号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L**6置功能00001DLNF**7置字符发生存贮器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志或地址01BF计数器地址10写数到CGRAM或10要写的数据内容奸口僧而DDRAM)从CGRAM或 读出的数据内容11 +“ 1 1DDRAM读数表3.1:控制命令表1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为咼电平、。为低电平)[3]指令1:清显示,指令码01H,光标复位到地址00H位置。指令2:光标复位,光标返回到地址00H。指令3:光标和显示模式设置I/D:光标移动方向,高电平右移,低电平左移S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。指令4:显示开关控制。D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示C:控制光标的开与关,高电平表示有光标,低电平表示无光标B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。指令5:光标或显示移位S/C:高电平时移动显示的文字,低电平时移动光标。指令6:功能设置命令DL:高电平时为4位总线,低电平时为8位总线N:低电平时为单行显示,高电平时双行显示F:低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。指令7:字符发生器RAM地址设置。指令8:DDRAM地址设置。指令9:读忙信号和光标地址BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令10:写数据。指令11:读数据。
3.1.2无线传输模块+5V"TC1922pFC1922pFi—nbi 111.0592MR265.1k, 1I 122pFRXD(P3.0)C193.1.2无线传输模块+5V"TC1922pFC1922pFi—nbi 111.0592MR265.1k, 1I 122pFRXD(P3.0)C1922pFTXD(P3.1)C1922pFC1922pFINXC2VDDTXENVSSPWRFILT1VSSVCO1ANTIVCO2ANT2VSSVSSVDDVDDDINCSDOUTPERRF401PORT2J2PQRT21PODT2O62RIFP225.1k图3.2无线收发器件电路连接单片机与无线收发器件NRF401的连接电路图如下3.2所示,单片机的P2.1口接NRF401的频道选择端口,选择收发器件的工作频率,当P2.1为高电平的时候,选择的频率是434.33MHz的2通道,当P2.1为低电平的时候,选择的传输的频率是433.92MHz的1通道。在本设计都是选择通道2频率为434.33MHz的。PWR_UP是NRF401的节电控制当PWR_UP=1为NRF401的工作模式,当PWR_UP=0时为NRF401的待机模式,在待机模式下收发器件比较节电,所有如果没有数据传输的时候EHffiEHffiEHffiEHffilr=h□尽量选择待机模式,使P2.0为地电平。TX-EN引脚发射/接收选择端口,当TX-EN给高电平是为发射信号,当TX-EN给低电平是接收信号。所以下位机的NRF401为高电平的发射信号,上位机的NRF401为低电平的接收信号。DI为输入信号当接收的时候,同单片机的串口接收信号,经过单片机的RX传输到NRF401的DI。当接收模式的时候,无线接收模块,接收到的信号通过DO传给单片机,使单片机接收到无线信号。3.1.3声光报警模块图3.3声光报警模块本设计上下位机都有声光报警电路,上位机的报警电路如上图3.3所示,上位机与下位机的报警电路都是相同的,只是与单片机的连接的引脚不同,下位机是通过23和P2.4口发出声光报警信号的,上位机是通过P1.3和P1.4口发出报警信号的。上位机的P1.4口发出低电平是这时不报警,即三极管VT3不导通,发光二极管不点亮,当P1.4发出高电平时,使三极管VT3导通,从而使发光二极管点亮,即发出报警信号。在本设计中使用了语音芯片,发布火灾报警信号,使用的是KD9561的语音芯片,在KD9561的6脚与7脚接一个120K欧姆的电阻,单片机的P1.3口接1K欧姆的lr=h□电阻接三极管的基极,三极管的射极接地,集电极接KD9561的VSS端,当单片机P1.3口输出高电平是三极管导通,使输入到KD9561的VSS为地电平,使语音芯片工作,发出报警声。当单片机P1.3口输出地电平时,三极管不导通,使语音芯片不工作,即不发出报警声。关于语音芯片KD9561报警声的选择如下表3.2所示,这里要产生是火灾报警声,则在SEL1接电源VDD,SEL2不接。表3.2KD9561语音芯片输出声选择接线表SEL1SEL2输出声音不接不接警车声VDD不接火警声VCC不接救护车声任意接VDD机关枪声3.1.4复位、时钟电路IC1VCCK17LRESE,C112.2uFR242.2k1234567VCCK17LRESE,C112.2uFR242.2k12345678101112q_O141516Q-A7_^O22pFY1C1^^777j11.0592M19——r22pF18P1.0P0.0P1.1P0.1P1.2P0.2P1.3P0.3P1.4P0.4P1.5/MOSIP0.5P1.6/MISOP0.6P1.7/SCKP0.7RESETP2.0P2.1P3.0/RXDP2.2P3.1/TXDP2.3P3.2/INT0P2.4P3.3/INT1P2.5P3.4/T0P2.6P3.5/ZLP2.7P3.6/WRP3.7/RD'X2EA/VPALE/PX1PSENSTC89C52393837363534333221222324252627贸31 300^9R265.1k=—VCC不盲而不盲而不盲而不盲而口图3.4复位、时钟电路MCS-51的复位是由外部的复位电路来实现的。复位是使单片机或系统中的其他部件处于某种确定的初始状态。单片机的工作就是从复位开始的。当89C52的RST引脚加高电平复位信号(保持2个以上机器周期)时,单片机内部就执行复位操作。复位信号变低时,单片机开始执行程序。复位电路通常采用两种基本形式:一种是上电复位,另一种是上电与按键均有效的复位,本系统电路设计中采用的上电与按键复位电路。上电自动复位是通过外部复位电路的电容来实现的。当电源接通时只要Vcc的上升时间不超过1ms,就可以实现自动上电位。当时钟频率选用11.0592MHz时,C取22pF,R取2.2K。除了上电复位外,有时还需要按键手动复位。按键手动复位有电平方式和脉冲方
式两种。通常实际运用中大都采用的是按键与上电复位电路,电平复位是通过RST端
经电阻与电源Vcc接通而实现的。在单片机运行期间,还可以利用按键完成复位操
作。MCS-51单片机各功能部件的运行都是以时钟控制信号为基准,有条不紊地一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路设计有两种方式,一种是内部时钟方式,另一种方式为外部时钟方式,在本设计中使用的是内部时钟方式。电路中的电容C1和C2典型值通常选择为22pF左右。对外接电容的值虽然没有严格要求,但电容的大小会影响振荡器频率的高低、振荡器的稳定性和起振的快速性。晶振的振荡频率的范围通常是在1.2MHz~12MHz之间。晶振的频率越高,则系统的时钟频率也就越高,单片机的运行速:口:口:口:口:口:口度也就越快。但反过来运行速度快对存储器的速度要求也就相对高,对印制电路板(也称印刷电路板)的工艺要求也高,即要求线间的寄生电容要小;晶振和电容应尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证振荡器稳定、可靠地工作。为了提咼温度稳定性,应采用温度稳定性能好的电容。3.1.5程序下载模块J1RS232B162738495RXDC7H-104C5工F104104J1RS232B162738495RXDC7H-104C5工F104104C6VCCTR1OUTVVR1INR2OUT、VR2INT1OUTT1INT2OUTT2INC2+C1+C2-C1-62129~2511TXD10II'1C83口1048U1MAX232图3.5MAX232串口通信电路图3.2特殊器件的介绍3.2.1STC89C52单片机单片机(Microcontroller,又称微处理器)是在一块硅片上集成了各种部件的微型机,这些部件包括中央处理器CPU、数据存储器RAM、程序存储器ROM、定时器/计数器和多种I/O接口电路。8051单片机的基本结构见图图3.6单片机基8051是MCS-51系列单片机的一个产品。MCS-51系列单片机是Intel公司推出的通用型单片机,8051单片机系列指的是MCS-51系列和其他公司的8051衍生产品。这些衍生品是在基本型基础上增强了各种功能的产品。这些产品给8位单片机注入了新的活力,给它的开发应用开拓了更广泛的前景。8051系列的内部结构可以划分为CPU、存储器、并行口、串行口、定时器/计数器、中断逻辑几部分。(1)中央处理器8051的中央处理器由运算器和控制逻辑构成,其中包括若干特殊功能寄存器(SFR)。算术逻辑单元ALU能对数据进行加、减、乘、除等算术运算;“与”、“或”、“异或”等逻辑运算以及位操作运算。ALU只能进行运算,运算的操作数可以事先存放到累加器ACC或寄存器TMP中,运算结果可以送回ACC或通用寄存器或存储单元中,累加器ACC也奸口僧而可以写为a。B寄存器在乘法指令中用来存放一个乘数,在除法指令中用来存放除数,运算后B中为部分运算结果。程序状态字PSW是个8位寄存器,用来寄存本次运算的特征信息,用到其中七位。PSW的格式如下所示,其各位的含义是:PSWD7D6D5D4D3D2D1D0CYACF0RS1RS0OVPCY:进位标志。有进位/错位时CY=1,否则CY=0oAC:半进位标志。当D3位向D4位产生进位/错位时,AC=1,否则AC=0,常用于十进制调整运算中。F0:用户可设定的标志位,可置位/复位,也可供测试。RS1、RS0:四个通用寄存器组选择位,该两位的四种组合状态用来选择0~3寄存器组。OV:溢出标志。当带符号数运算结果超出-128~+127范围时OV=1,否则OV=0。当无符号数乘法结果超过255时,或当无符号数除法的除数为0时OV=1,否则OV=0。P:奇偶校验标志。每条指令执行完,若A中1的个数为奇数时P=1,否则P=0,即偶校验方式。控制逻辑主要包括定时和控制逻辑、指令寄存器、译码器以及地址指针DPTR和程序寄存器PC等。单片机是程序控制式计算机,即它的运行过程是在程序控制下逐条执行程序指令的过程:从程序存储器中取出指令送指令存储器IR,然后指令译码器ID进行译码,译码产生一系列符合定时要求的微操作信号,用以控制单片机的各部分动作。8051的控口习不口习不、IE不白而rij不斗口习不口习不、IE不白而rij不斗制器在单片机内部协调各功能部件之间的数据传送、数据运算等操作,并对单片机发出若干控制信息。这些控制信息的使用专门的控制线,诸如PSEN、ALE、EA以及RST,也有一些是和P3口的某些端子合用,如WR和RD就是P3.6和P3.7,他们的具体功能在介绍8051引脚是一起叙述。(2)存储器组织8051单片机的存储器结构特点之一是将程序存储器和数据存储器分开,并有各自的寻址机构和寻址方式,这种结构称为哈佛结构单片机。这种结构与通用微机的存储器结构不同,一般微机只有一个存储器逻辑空间,可随意安排ROM或RAM,访存时用同一种指令,这种结构称为普林斯顿型。8051单片机在物理上有四个存储空间:片内程序存储器和片外程序存储器、片内数据存储器和片外数据存储器。8051片内有256K数据存储器RAM和4KB的程序存储器ROM。除此之外,还可以在片外扩展RAM和ROM,并且各有64KB的寻址范围。也就是最多可以在外部扩展2*64KB存储器。8051的存储器组织结构如图2.3所示。64K字节的程序存储器(ROM)空间中,有4K字节地址区对于片内ROM和片外ROM是公用的,这4K字节地址是0000H~FFFH。而1000H~FFFFH地址区为外部ROM专用。CPU的控制器专门提供一个控制信号EA用来区分内部ROM和外部ROM的公用地址区:当EA接咼电平时,单片机从片内ROM的4K字节存储器区取指令,而当指令地址超过0FFFH后,就自动的转向片外ROM取指令。当EA接低电平时,CPU只从片外ROM取指蛙口蛙口蛙口蛙口EHffiEHffilr=h□程序存储器的某些单元是保留给系统使用的:0000H〜0002H单元是所有执行程序的入口地址,复位以后,CPU总是丛0000H单元开始执行程序。0003H~002AH单元均匀地分为五段,用做五个中断服务程序的入口。用户程序不应进入上述区域。0JFF0000FF00SFBFFFFRAH位寻址区外部0JFF0000FF00SFBFFFFRAH位寻址区外部RAM工作寄存器0000803020图3.7存储器组织结构图。256个字节被分为两8051的RAM虽然字节数不很多,但却起着十分重要的作用个区域:00H-7FH时真正的RAM区,可以读写各种数据。而80H~FFH是专门用于特殊功能寄存器(SFR)的区域。对于8051安排了21个特殊功能寄存器,每个寄存器为8位,所以实际上128个字节并没有全部利用。。256个字节被分为两内部RAM的各个单元,都可以通过直接地址来寻找,对于工作寄存器,则一般都直接用R0~R7,对特殊功能寄存器,也是直接使用其名字较为方便。8051内部特殊功能寄存器都是可以位寻址的,并可用“寄存器名.位”来表示,如ACC.0,B.7等。本设计采用51系列中的STC89C52单片机。3.2.2温度传感器DS18B20DS18B20是美国DALLAS半导体公司生产的单总线可组网数字式温度传感器。它的测量范围为-50°C至+125°C,精度可达0.1°C不需A/D转换电路,直接将温度值转换
成数字量。DS18B20遵循严格的单线串行通信协议,每一个DS18B20在出厂时都用激光进行了调较,并具有唯一的64位序列号,所以多个DS18B20可以共存与同一条线上。DS18B20的内部使用了在板(ON-BOARD)专利技术。封装为TO-92的DS18B20将全部传感元件及转换电路集成在形如一只三极管的集成电路内如图2.3。其外围电路简单,可广泛应用于温度控制,温度测量,工作系统及任何热敏感系统中。弓I啣七韻明GMDDOV弓I啣七韻明GMDDOV口D-地翅据工/■口RTdAVDD图3.8DS18B20引脚DS18B20的内部主要包括寄生电源、温度传感器、64位激光ROM、单线接口、存放中间数据的高速暂存器(内含便笺式RAM)用于存储用户设定的温度上下限值的TH和TL触发器存储与控制逻辑、8位循环冗余校验码(CRC)发生器等七部分DS18B20的内部结构如图3.9所示。EHffiEHffi不盲而不盲而64位皺灵御牛电源检测ROM和接口高速存懺64位皺灵御牛电源检测ROM和接口高速存懺高融蜷器IE配置霄存器SfcCEC生图3.9DS18B20内部结构DS18B20测量温度时使用特有的温度测量技术。DS18B20内部的低温度系数振荡器能产生稳定的频率信号f。,高温度系数振荡器则将被测温度转换成频率信号f。当计数门打开时,DS18B20对f。计数,计数门开通时间由高温度系数振荡器决定。芯片内部还有斜率累加器,可对频率的非线性予以补偿。测量结果存入温度寄存器中。一般情况下的温度值应为9位(符号占1位),但因符号位扩展成高8位,故以16位补码形式读出,表3.3给出了温度和数字量的关系。表3.3DS18B20输出数据与温度关系g18输出数恥温度的对应关系温度温度数据输出領进制)温度.数据输出锵逬制)4125^000003]111010000OTROii+85tmoo10103oiflfloo055011*+25.0625Cmoooflonoo104)01019!H+旧1釦*CoaooooooiojooowC0A2H+0.5沱onoooflflmoooifiotj。邮】1orOOOOOflflOOOOOflflOO0000H1HIHHHIHOOOFFF8H-IttL25*C1111111扣101110DKhSKII-25l0625jCiinHioniinsmi-5S牝111LllOOUMHOOTa
lr=h□DS18201作过程分三步,如下:初始化单总线上的所有处理均从初始化开始ROM操作命令总线主机检测到DS1820的存在便可以发出ROM操作命令之一,如表3.4。表3.4DS18B20ROM操作命令拾令功能代码说 明读ROM3311读产品編鸣.序列号和CRC校验鸣匹配ROM5311后筮(54位ROM序列对总螃上的DSISB20铮址搜索ROM对总线上的害个IJS1SB20诳行HOM编仍的搜索嘛过ROMCCH在単点测温中,跳过荊出朋编玛的搜索苫瞥搜索ECH搜索有报瞥的1記20的測温山(3)存储器操作命令存储器命令如表3.5。表3.5DS18B20存储器操作命令指令功能代蝸说 明温度变換4411启动温度转態崖暂存繇HKII崖9个字节温度值和CRC值写暫存嚣4KII写1:下限循到暫存器宜制暂存器4SII将哲存器上限和下限值籠制到EXPROM中膜KKPhOM1盘II将KKPUOM的上限和下跟債调入暫存將中絞电源B4II检测雕电方式DS1820使用中注意事项较小的硬件开销需要相对复杂的软件进行补偿,由于DS1820与微处理器间采用串行数据传送,因此,在对DS1820进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。对DS1820操作部分最好采用汇编语言实现。在DS1820的有关资料中均未提及单总线上所挂DS1820数量问题,容易使人误认为可以挂任意多个DS1820,在实际应用中并非如此。当单总线上所挂DS1820超过口8个时,就需解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以/王^意。(3) 连接DS1820的总线电缆是有长度限制的。当采用普通信号电缆传输长度超过50m时,读取的测温数据将发生错误。当将总线电缆改为双绞线带屏蔽电缆时,正常通讯距离可达150m,这种情况主要是由总线分布电容使信号波形产生畸变造成的。因此,在用DS1820进行长距离测温系统设计时要充分考虑总线分布电容和阻抗匹配问题。(4) 在DS1820测温程序设计中,向DS1820发出温度转换命令后,程序总要等待DS1820的返回信号,一旦某个DS1820接触不好或断线,当程序读该DS1820时,将没有返回信号,程序进入死循环。这一点在进行DS1820硬件连接和软件设计时也要给予一定的重视。3.2.3烟雾传感器QM-N5QM-N5型气敏元件是金属氧化物SnO2为主要材料的N型半导体气敏元件,当元件接触还原性气体时,其电导率随气体的浓度增加而迅速升高。特点:用于可燃性气体的检测(CH4、C4H10、H2、烟雾等)灵敏度咼响应速度快输出信号大寿命长,工作稳定可靠lr=h□图3.10MQ—N5的外形原理:在200-300度时,它吸附空气中的氧,形成的氧的负离子吸附,使半导体中的电子密度减少,从而使其电阻值增加,当遇到有能供给电子的可燃气体(如CO等)时,原来吸附的氧托附,而由可燃气体以正离子状态吸附在金属氧化物半导体表面;氧脱附放出电子,可燃性气体以正离子状态吸附也要放出电子,从而使氧化物半导体带电子密度增加,电阻值下降,可燃性气体不存在了,金属氧化物半导体优惠自动回复放的负离子吸附,使电阻值升高到初始状态。这就是半导体气敏元件检测可燃性气体的基本原理。技术指标:表3.6QM-N5参数表加热电压(Vh)AC或DC5±0.2V响应时间(tree)<10S回路电压(Vc)最大DC24V恢复时间(tree)<30S负载电阴(R1)2KQ元件功耗<0.7W清洁空气中电阻(Ra)<2000KQ检测范围50—10000ppm灵敏度(S=Ra/Rdg)>4(在1000ppmC4H10中)使用寿命2年技术指标::口:口:口:口加热电压(VH)回路电压加热电压(VH)回路电压(VC)负载电阻(RL)清洁空气中电阻(Ra)灵敏度(S=Ra/Rdg)响应时间(tres)恢复时间(tree)检测范围VAC或DC5±0.5V最大DC24V2KQ<4000KQ>4(在1000ppmC4H10中)<10S<30S50-10000ppm图3.11基本测试电路使用方法及注意事项元件开始通电工作时,没有接触可燃性气体,其电导率也急剧增加1分钟后达到稳定,这时方可正常使用,这段变化在设计电路时可采用延时处理解决.加热电压的改变会直接影响元件的性能所以在规定的电压范围内使用为佳元件在接触标定气体1000ppmC4H10后10秒以内负载电阻两端的电压可达到(Vdg-Va)差值的80%(即响应时间);脱离标定气体1000ppmC4H1030秒钟以内负载电阻两端的电压下降到(Vdg-Va)差值的80%(即恢复时间).不盲而不盲而不盲而不盲而口符号说明检测气体中电阻-Rdg检测气体中电压-VdgRdg与Vdg的关系:Rdg=RL(VC/Vdg-1)负载电阻可根据需要适当改动,不影响元件灵敏度.使用条件:温度-15〜35°C;相对湿度45~75%RH;大气压力80~106KPa环境温湿度的变化会给元件电阻带来小的影响,当元件在精密仪器上使用时,应进行温湿度补偿,最简便的方法是采用热敏电阻补偿之.避免腐蚀性气体及油污染,长期使用需防止灰尘堵塞防爆不锈钢网.TGS2611可燃气体传感器TGS2611可燃气体传感器是由敏感素子由集成的加热器以及在氧化铝基板上形成的金属氧化物半导体构成。当可检知的气体存在时,空气中该气体的浓度越高,传感器的电导率就越高。使用简单的电路就可以将这种电导率的变化变换为与气体浓度对应的输出信号。TGS2611对甲烷有很高的灵敏度。因为对挥发性酒精(居住环境中的干扰气体)的灵敏度很低,所以是最适合用于家用燃气泄漏报警器。因为敏感素子很小,所以TGS2611的加热电流只有56mA就够了。另外,这种传感器的敏感部分被装入标准的T0-5的金属封装中。3.2.4NRF401nRF401是一个为433MHzISM频段设计的真正单片UHF无线收发芯片它采用FSK调制解调技术NRF401最高工作速率可以达到20K发射功率可以调整最大发射功率是+10dBm。口天线接口设计为差分天线以便于使用低成本的PCB天线nRF401还具有待机模式这样可以更省电和高效功能描述:真正的单片FSK收发芯片非常少的外围元件无需进行初始化和配置不需要对数据进行曼彻斯特编码最高速率20Kbps2个工作频道宽工作电压范围低功耗待机模式表3.7nRF401管脚描述管脚名称功能说明1XC1输入晶振输入2VCC电源电源+3-5V3VSS地电源地4FILT1输入环路滤波器5VCO1输入VCO电感6VCO2输入VCO电感7VSS地电源地8VDD电源电源+3-5V9DIN输入数据输入10DOUT输出数据输出11RFPWR输入发射功率设置EHffiEHffilr=h□12CS输入频道选择CS=O—433.92MHz(Channel#1)CS=1—434.33MHz(Channel#2)13VDD电源电源+3-5V14VSS地电源地15ANT2输入/输出天线终端16ANT1输入/输出天线终端17VSS地电源地18PWR_UP输入节电控制PWR_UP=1--Powerup(Operatingmode)PWR_UP=0一Powerdown(Standbynode)19TXEN输入发射/接收控制XEN=1—TransmitmodeXEN=0—Receivemode20XC2输出晶振输出TX一RX的切换当从RX—TX模式时数据输入脚DIN必须保持为高至少1ms才能发送数据时序如图3.11a所示当从TX—RX模式时数据输出脚DOUT要至少3ms以后有数据输出如图4b所示图3.11nRF401TX一RX的切换时序图Standby—RX的切换
从待机模式到接收模式当PWR_UP输入设成1时经过tSR时间后DOUT脚输出数据才有效nRF401来说tST最长的时间是3ms如图3.12a所示Standby—TX的切换从待机模式到发射模式所需稳定的最大时间是tSTPWRUP(a)StdbytoTXTXEN DIN1manmePWRUP(a)StdbytoTXTXEN DIN1manmeAma-图3.12nRF401Standby图3.12nRF401Standby—TXStandby—RX的切换时序图PowerUp—TX的切换从加电到发射模式过程中为了避免开机时产生干扰和辐射在上电过程中TXEN的输入脚必须保持为低以便于频率合成器进入稳定工作状态当由上电进入发射模式时TXEN必须保持1ms以后才可以往DIN发送数据见图3.13aPowerUp—RX的切换从上电到接收模式过程中芯片将不会接收数据DOUT也不会有有效数据输出直到电压稳定达到2.7V以上并且至少保持5ms如果采用外部振荡器这个时间可以缩短到3ms见图3.13b
VDOilIBTXPWRUP7XEN图3.13PowerUpTTX的切换VDOilIBTXPWRUP7XEN图3.13PowerUpTTX的切换PowerUp^RX的切换时序图ANTI和ANT2是接收时LNA的输入以及发送时功率放大器的输出连接nRF401的天线是以差分方式连接到nRF401的在天线端推荐的负载阻抗是400欧姆。A1TT2ANT]13tiHCAP尹寸outSOohmA1TT2ANT]13tiHCAP尹寸outSOohm图3.14采用单端天线时匹配网络的设计:口:口图图4.1火灾检测子程序流程图:口:口图图4.1火灾检测子程序流程图4软件设计4.1下位机程序流程图4.1.1火灾检测子程序流程图判断可燃气体判断烟雾是否判断温度是否NYYN设置堆栈NY读温度子程发出报警信号::口:口:口:口调用WRITE子程调用WRITE子程关闭所有中断,调用RESET子程序调用READ子程调用WRITE子程读出温度值低字节存入R7,,读出谩度调用WRITE子程序RET温度转化完,调用RESET子程序再次初调用WRITE子程图4.2温度获取子程序流程图lr=h□EHffi初始采样传感器信号单片机程序算法有火情Y经NRF401发送探声光报警N图4.3信号采集、处理、报警程序流程图lr=h□EHffi4.2上位机程序流程图图4.4主机报警处理程序流程图奸口僧而5调试5.1调试的步骤(1)源文件的建立:使用菜单"File-New"或者点击工具栏的新建文件按钮,即可在项目窗口的右侧打开一个新的文本编辑窗口,在该窗口中输入汇编语言源程序(4.2小节所示)。保存该文件,加上扩展名(.asm或a51),这里将文件保存为examl1.asmo建立工程文件:点击"Project-NewProject"菜单,出现以个对话框,要求给工程起一个名字,我们输入examl1,不需要扩展名,点击保存按钮,出现第二个对话框。这个对话框要求选择目标CPU(即我们所使用的芯片型号80C51)点击ATMEL前面的“+”号,展开该层,点击其中的80C51,然后点击确定按钮。回到主界面,此时,在工程窗口的文件页中,出现了“Target1",前面有"+"号,点击"+"展开,可以看到下一层的“SourceGroup1",这时的工程还是一个空工程,里面什么文件也没有,需要手动把刚才编写好的源程序加入,点击“SouceGroup"使其反白显示,然后,点击鼠标右键,出现一个下拉菜单。选中其中的“AddfiletoGroup"SouceGroup1",对话框,要求寻找源文件,注意该对话框下面的“文件类型“默认为CSoucefile(*.c),也就是以C为扩展名的文件,而我们的文件是以asm为扩展名的,所以在列表框中找不到examl1.asm,要将文件类型该掉,点击对话框中”文件类型‘后的下拉列表,找到并选中“AsmSouceFile(*.asm,*.a51)",这样,在列表框中就可以找到examl1.asm文文件了。双examlLasm文件,将文件加入项目,注意,在文件加入项目后,该对话框并不消失,等待继续加入其他文件,但初学时常会认为操作没有成功而再次双击同一文件,这时会出现对话框,提示你所选的文件以在列表中,此时点击确定,返回前一对话框,然后,点击”Close”即可返回主界面,返回后,点击“SouceGoup1"前的加号,会发现examlLasm文件以在其中。双击文件名,即打开源程序。工程的详细设置:首先点击左边Project窗口的Target1,然后使用菜单“Proget-Optionfortarget‘target1'"即出现对工程设置的对话框,对这个对话框可谓非常复杂,共有8个页面,要全部高清可不容易,好在绝大部分设置项取默认值就行了。设置完成以后安确认返回主界面,工程建立、设置完毕。编译、连接:在设置好工程后,既可以进行编译、连接。选择菜单Project-Buildtarget,对当前工程进行连接,如果当前文件已修改软件会先对该文件进行比阿尼,然后在连接以产生目标代码。编译过程中的信息将出现在输出窗口中的Build页中,如果源程序有语法错误,会有错误报告出现,双击该行,可以定到出错的位置,
对源程序反复修改后,最终会得到如图5.1所示的结果,提示获得了名为examll.hex的文件,该文件即可被编程器读入并写到芯片中,同时还产生了一些其他相关文件可被用于KEIL的仿真与调试。囹昌囹昌|心|忸|嚟.B)cheng::u.cg|AT89K52.HBuildtarget图5.1正确连接、编译之后的结果5.2调试过程中遇到的问题及解决方法在进入环境以后,遇到了很多问题,总结如下: 提示无图5.1正确连接、编译之后的结果5.2调试过程中遇到的问题及解决方法在进入环境以后,遇到了很多问题,总结如下: 提示无asm文件编译时候提示:F:\...\XX.asmFilehasbeenchangedoutsidetheeditor,reload?解决方法:重新生成项目,产生examll.asm即可。 在进入Keil的调试环境以后,发现程序有错解决方法:将光标定位于需要修改的程序上,用菜单,Debug》InlineAssambly...即可出现对话框,EnterNew后面的编辑框内直接输入需要修改的程序语句,输入完之后键入回车将自动指向下一条语句,可以继续修改,如果不在需要修改,可以点击右上角的关闭按钮关闭窗口。程序调试时,一些程序必须满足一定的条件才能被执行到解决方法:这些条件往往是异步发生或难以预先设定的,这类问题使用的单步实行方法是很难调试的,这时就要使用发哦程序调试中的另一种非常重要是方法---断点设置。断点设置的方法有多种,常用的是在某一程序行设置断点,设置好断点后可以全速运行程序,一旦执行到该程序行即停止,可在此观察有关变量值,以确定问题所在。在程序行设置/移除断点的方法是将光标定位于需要设置断点的程序行,使用菜单Debug/Insert/RemoveBreakPoint设置或移除断点(也可以用鼠标在该行双击实现同样的功能);Debug/Enable/DisableBreakPoint是开启或暂停光标所在懂行的断点功能;Dubug/DisaleAllBreakPoint暂停所有断点;Debug/KillAllBreakPoint清除所有的断点设置。这些功能也可以用工具条上的快捷键进行设置。Kdata=0code=213chengxu"...□Warning(s).ProgramSize:data=16.0creatinghexfilefr-om"chengxu"-Kdata=0code=213chengxu"...□Warning(s).I|\Build/\tCommand_\FindinFiles_]奸口僧而输入程序时,有中文标点,用keil编译时出现错误解决方法:程序里有带中文标点,用英文重输入一遍汇编出现数字、字母混淆解决方法:字母“0”和数字“0”。主要错在这里。注意细节!奸口僧而6使用软件介绍Protel99SE是Protel公司近10年来致力于Windows平台开发的最新结晶,能实现从电学概念设计到输出物理生产数据,以及这之间的所有分析、验证和设计数据管理。因而今天的Protel最新产品已不是单纯的PCB(印制电路板)设计工具,而是一个系统工具,覆盖了以PCB为核心的整个物理设计。Protel设计系统是一套建立在IBM兼容PC环境下的EDA电路集成设计系统,由于其高度的集成性与扩展性,一经推出,立即为广大用户所接受,很快就成为世界PC平台上最流行的电子设计自动化软件。从Protel98开始,Protel公司将所有应用程序代码从16位升级为32位,使性能大大提高。1999年初,Protel公司推出了Protel99,其最大的改变是引入了设计数据库文件和设计团队的概念,而后又推出了Protel99的改进版一Protel99SE。Protel99SE(SecondEdition)在原理图设计和电路仿真方面增加了许多小的功能,而其最主要的改进体现在电路板设计系统方面。使用Protel99SE,你将赞叹其强大的功能和应用的弹性。据说Protel99SE的部分最新功能将兼容举世瞩目的图形制作,编辑和处理软件CORELDRAW。当初欧元硬币的设计解决方案由CorelDRAW来完成,CORELDRAW图形套件中,它集位图编辑处理,网页动画,网页发布,页面布局,向量动画等各种必要功能于一身。将会使您〃大大地〃提高专业创作的效率。Protel99SE共分5个模块,分别是原理图设计、PCB设计(包含信号完整性分析)、自动布线器、原理图混合信号仿真、PLD设计。以下介绍一些Protel99SE的部分最新功能:不盲而不盲而不盲而不盲而口♦可生成30多种格式的电气连接网络表;♦强大的全局编辑功能;♦在原理图中选择一级器件,PCB中同样的器件也将被选中;♦同时运行原理图和PCB,在打开的原理图和PCB图间允许双向交叉查找元器件、引脚、网络♦既可以进行正向注释元器件标号(由原理图到PCB),也可以进行反向注释(由PCB到原理图),以保持电气原理图和PCB在设计上的一致性;♦满足国际化设计要求(包括国标标题栏输出,GB4728国标库);方便易用的数模混合仿真(兼容SPICE3f5);♦支持用CUPL语言和原理图设计PLD,生成标准的JED下载文件;PCB可设计32个信号层,16个电源-地层和16个机加工层;♦强大的“规则驱动”设计环境,符合在线的和批处理的设计规则检查;♦智能覆铜功能,覆铀可以自动重铺;♦提供大量的工业化标准电路板做为设计模版;♦放置汉字功能;♦可以输入和输出DXF、DWG格式文件,实现和AutoCAD等软件的数据交换;♦智能封装导航(对于建立复杂的PGA、BGA封装很有用);♦方便的打印预览功能,不用修改PCB文件就可以直接控制打印结果;♦独特的3D显示可以在制板之前看到装配事物的效果;♦强大的CAM处理使您轻松实现输出光绘文件、材料清单、钻孔文件、贴片机文件、测试点报告等;不盲而不盲而不盲而不盲而口♦经过充分验证的传输线特性和仿真精确计算的算法,信号完整性分析直接从PCB启动;♦反射和串扰仿真的波形显示结果与便利的测量工具相结合;♦专家导航帮您解决信号完整性问题口7总结与体会火灾报警器可保障生产与生活的安全,避免火灾和爆炸事故以及煤气中毒的发生,它是防火、防爆和安全生产所必备的仪器,具有广阔的市场空间与发展前景。根据设计要求、使用环境、成本等因素,选用QM-N5型半导体电阻式烟雾传感器。该传感器是对以烷类烟雾为主的多种烟雾有良好敏感特性的广谱型半导体敏感器件。它的灵敏度适中,具有响应与恢复特性好,长期工作稳定性、重现性、不易受环境影响及抗温湿度影响等优点。在本论文研制的报警器的基础上,可以再做适当的功能扩展,使可燃性烟雾报警器的功能更加完善,安全性更高,使用更加方便等。为了能够进一步提高安全性,可以在自动声光报警的基础上,实现带动烟雾管道关断等功能。口不盲而8致谢时光如梭,光阴似箭,毕设转眼之间就来到了终点,我一直都认为能够在大学的终点自己亲手完成自己的毕业设计,自己尽情的发挥自己在这几年所学到的东西,把自己不能理解的理论知识用于实践是一件非常快乐的事,所以我一直非常期待它的到来。事实也是这样,在整个毕业设计的过程中我学会了很多东西,毕业设计让我学会了发现问题,提出问题,分析问题,解决问题的能力。这些将对我以后的工作和人生产生深远的影响。本次毕业设计我首先要感谢指导老师###老师,特别是毕业设计的开始,当我对自己的课题毫无头绪的时候,是###老师仔细的给讲解我的课题的思路,以及如何才能更好的实现,在后续的设计余老师也都给予了细心的指导,他那严谨的治学态度,认真负责的工作作风,朴实无华的生活态度都给我留下了深刻的印象,这些也将成为我今后学习生活中永远学习的楷模。在设计制作的过程中,也得到了其他老师的热心指导和周围同学的真诚帮助,感谢他们提供了良好的环境,使我在设计中避免了许多麻烦,少走了不少弯路。在此向他们表示衷心的感谢。奸口僧而9参考文献谢自美.电子线路设计、实验、测试[M].华中科技大学出版社.2009.7李文仲.C8051F系列单片机与短距离无线数据通信.北京航空航天大学出版社.2007.7杨金岩、郑应强.8051单片机数据传输接口扩展技术与应用实例.人民邮电出版社2007.7孙传友著.感测技术与系统设计[M].科学出版社.2008.6张毅刚.单片机技术及应用.高等教育出版社.2009.7张迎新著.单片微型计算机原理、应用及接口技术[M].国防工业出版社.2007.1康华光.电子技术基础模拟部分(第五版)[M].北京:高等教育出版社.2006.1康华光.电子技术基础数字部分(第五版)[M].北京:高等教育出版社.2006.1程德福、林君.智能仪器(第2版)[M].北京:机械工业出版社.2009.8胡汉才.单片机原理及其接口技术[M].北京:清华大学出版社.1999赵新民.智能仪器设计基础[M].哈尔滨:哈尔滨工业大学出版社.1999资料蛙口精品附录1电路原理图117c3-SARUP2_^AKUP3Z1rdo,$AKUPlz7&AKUP6&AKUP54-X5J3&JKUP■Z9J2ttJKUPbh.1&AKUPottAKUPII—h']l"NEfirP^ECAc>ftE70-60-4d-3d-OTftr4BIB dra/ RW&—1mdxta—
dxraukcsa/LauM/CJzclCCV■■---•31*C3(TN_■?1--o—-87__+lRUP76-i-hcop65■nip54J+1^-_JFORI?21--OAOP1O?8PN1TOpDii——ii-Fii-()TOpWPDNXTMocRGEsODbKJ2TOp丄M口9MH”DNGCCVDNG1王T45_6 7 —五2_2TROP& 1_2TROP()_2TROP"010_0TROP"1_0TROP_()TROP0TROP0TROP000■2—2313TT51614567DNGV5+JDAVW/R0Ddmc/aaAD3D4D5D6D7DADELKDELCCV僧而僧而僧而僧而奸口附录2:设计程序下位机程序:TEMPER_LEQU36H;存放读出温度低位数据TEMPER_HEQU35H;存放读出温度高位数据TEMPER_NUMEQU60H;存放转换后的温度值FLAG1BIT00HJIESHOUEQU50H;接收上位机数据FLAGGEQU51h;FLAGG为00H时,485处于接收状态.;FLAGG为01H时,485处于发送状态DQBITP1.0;一线总线控制端口ORG0000HLJMP MAINORG0023H;转串口中断服务程序实现收发数据AJMPSHOUFAORG0100HMAIN:MOVSP,#70H;以下程序实现出口通信MOVTMOD,#20H;定时器设置为模式2MOVTL1,#0FDH;定时器送初值MOVTH1,#0FDHSETBTR1;启动定时器MOVSCON,#50H;串口设置为方式1,REN=1MOV61H,#00H不盲而不盲而不盲而不盲而;开中断;开中断;FLAGG为0时,485处于接收状态;是否接收状态,不是,跳转;使485处于接收状态;置位P0.1,使485处于发送状态;从DS18B20读出温度数据;转换读出的温度数据并保存口SETB ESSETB EAMOV FLAGG,#00HMAIN1:MOV R2,#02HMOV A,flaggCJNE A,#00h,NEXT1CLR P0.1jmpbbNEXT1:SETBP0.1BB: LCALLGET_TEMPERLCALL TEMPER_COVMOV A,TEMPER_NUMMOV P2,A;以下程序实现烟雾测量和报警功能JBP1.1,aacallbaojingaa:AJMPMAIN1;实现报警子程序TOC\o"1-5"\h\zBAOJING:PUSH ACCCLR P1.3MOV A,#01HMOV 61H,APOP ACCret;收发数据子程序口SHOUFA:JNBRI,SEND;RI=1,为接收中断ACALLSIN;TI=1,为发送中断SJMPFANHUISEND:DJNZR2,CCACALLSOUT;调用发送子程序FANHUI:RETI;发送子程序SOUT:CLRTI;清发送中断标志movflagg,#00hRET;接收子程序SIN:MOVR0,#60HCLRRI;清接收中断标志MOVA,SBUFMOVJIESHOU,ACJNEA,#32h,OVER;如果JIESHOU不符合要求,则跳转overMOVflagg,#01hSETBP0.1CC:CLRTIMOVA,@R0INCR0MOVSBUF,Aover:RETI不盲而不盲而不盲而不盲而口; 读出转换后的温度值GET_TEMPER:SETBDQ;定时入口BCD:LCALLINIT_1820JBFLAG1,S22LJMPBCD;若DS18B20不存在则返回S22:clr p1.'4LCALLDELAY1MOVA,#0CCH;跳过ROM匹配 0CCLCALLWRITE__1820MOVA,#44H;发出温度转换命令LCALLWRITE__1820NOPLCALLDELAYLCALLDELAYLCALLDELAYCBA:LCALLINIT_1820JBFLAG1,ABCLJMPCBAABC:LCALLDELAY1MOVA,#0CCH;跳过ROM匹配LCALLWRITE__1820MOVA,#0BEH;发出读温度命令LCALLWRITE__1820LCALLREAD_18200;READ_1820RET; 写DS18B20的程序WRITE_1820:不盲而不盲而不盲而不盲而口MOVR7,#08HTA5:JBACC.0,TA_3;判断是否为写〃1〃还是写"0〃时序CLRDQ;是写〃0"时序口MOVR7,#08HTA5:JBACC.0,TA_3;判断是否为写〃1〃还是写"0〃时序CLRDQ;是写〃0"时序TA3:TA4:MOVR6,#70DJNZR6,$SETBDQSJMPTA_4CLRDQNOPNOPNOPNOPSETBDQMOVR6,#66DJNZR6,$RRA;是写"1"时序DJNZR7,TA_5RET; 读DS18B20的程序,从DS18B20中读出两个字节的温度数据READ_18200:MOVR4,#2 ;将温度高位和低位从DS18B20中读出MOVR1,#36H;低位存入36H(TEMPER_L),高位存入35H(TEMPER_H)RE00: MOV R2,#8RE01: CLR CSETBDQNOP口NOPCLRDQNOPNOPNOPSETBDQNOPMOVR3,#7DJNZR3,$MOVC,DQMOVR3,#23DJNZR3,$RRCADJNZR2,RE01MOV@R1,ADECR1DJNZR4,RE00RET; 将从DS18B20中读出的温度数据进行转换TEMPER_COV:MOVA,#0F0Hanla,temper_l;舍去温度低位中小数点后的四位温度数值SWAPAMOVTEMPER_NUM,AMOVA,TEMPER_LJNBACC.3,TEMPER_COV1;四舍五入去温度值INCTEMPER_NUMTEMPER_COV1:MOVA,TEMPER_HANLA,#07H口SWAPAADDA,TEMPER_NUMMOVTEMPER_NUM,A;保存变换后的温度数据LCALLBIN_BCDRET; 将16进制的温度数据转换成压缩BCD码BIN_BCD:MOVDPTR,#TEMP_TABMOVA,TEMPER_NUMMOVCA,@A+DPTRMOVTEMPER_NUM,ARETTEMP_TAB:DB00H,01H,02H,03H,04H,05H,06H,07HDB08H,09H,10H,11H,12H,13H,14H,15HDB16H,17H,18H,19H,20H,21H,22H,23HDB24H,25H,26H,27H,28H,29H,30H,31HDB32H,33H,34H,35H,36H,37H,38H,39HDB40H,41H,42H,43H,44H,45H,46H,47HDB48H,49H,50H,51H,52H,53H,54H,55HDB56H,57H,58H,59H,60H,61H,62H,63HDB64H,65H,66H,67H,68H,69H,70H,71HDB72H,73H,74H,75H,76H,77H,78H,79HDB80H,81H,82H,83H,84H,85H,86H,87HDB88H,89H,90H,91H,92H,93H,94H,95HDB96H,97H,98H,99H; DS18B20初始化程序INIT_1820:SETBDQNOP不盲而不盲而不盲而不盲而口CLRDQTSR1:DJNZR0,TSR1;延时512微秒SETBDQMOVR0,#25H;延时60微秒,判断18B20返回信号TSR2:JNBDQ,TSR3DJNZR0,TSR2LJMPTSR4;延时TSR3:SETBFLAG1;置标志位,表示DS18B20存在LJMPTSR5TSR4:CLRFLAG1;清标志位,表示DS18B20不存在LJMPTSR7TSR5:MOVR0,#0FFH;512USTSR6:DJNZR0,TSR6;延时TSR7:SETBDQRETMOVR0,#0FFH; 延时子程序DELAY:MOVR7,#00HMIN: DJNZR7,YS500RETYS500:LCALLYS500USLJMPMINYS500US:MOVR6,#00HDJNZR6,$RETDELAY1:MOVR7,#20H不盲而不盲而不盲而不盲而口DJNZR7,$RETEND上位机程序:LCD1602显示程序此程序实现,完成液晶的驱动程序,可以显示任意的ASCII字符****************************************************************************/#include<reg52.h>〃调用头文件(单片机内部的寄存器定义)/******本段为硬"f牛I/O口定义********/sbitsbitsbitKEY0=P00;KEY1=P0“1;KEY2=P0“2;KEY3sbitsbitsbitKEY0=P00;KEY1=P0“1;KEY2=P0“2;KEY3=P0“3;DIG0=P0“4;sbit〃数码管位0sbitDIG1sbitsbitsbitsbitBUZZLCD_RSLCD_EP33;//key和发光管复用,请将跳线插到KEY端//蜂鸣器sbitLCD_RW=P3P06;5;〃数码管位1P3P37;4;#defineLED_SEGP1//数码管#defineLCD_DATAP2//LCDDATA#defineLCD_BUSY0x80//用于检测LCD的BUSY标识(本程序中用的延时,未检测)//LCD显示内容,定义到代码段口unsignedcharcodeLcdBuf1[]=("welcom!"};unsignedcharcodeLcdBuf2[]=("MCU-STUDY-BOARD"};〃函数声明voidlcd_init(void);voiddisplay_string(unsignedcharx,unsignedchary,unsignedchar*s);voiddisp_selec(unsignedcharbit_selec,unsignedcharseg);/****************************************************函数名称:dellay**入口参数:h(unsignedint型)**出口参数:无**功能描述:短暂延时,使用11.0592晶体,约0.01MS****************************************************/voiddellay(unsignedinth)(while(h--);//0.01MS}/ f—1I~Z7 //************^-^程\^^**************/main()(lcd_init();display_string(3,0,LcdBuf1);〃显示第一行,从第3个位置开始display_string(0,1,LcdBuf2);〃显示第二行,从第0个位置开始while(1); //单片机待机}/****************************************************函数名称:WriteDataLcd**入口参数:wdata(unsignedchar型)口**出口参数:无**功能描述:写数据到LCD****************************************************/voidWriteDataLcd(unsignedcharwdata)(LCD_DATA=wdata;LCD_RS=1;LCD_RW=0;LCD_E=0;dellay(100); 〃短暂延时,代替检测忙状态LCD_E=1;}/****************************************************函数名称:WriteCommandLcd**入口参数:wdata(unsignedchar型)**出口参数:无**功能描述:写命令到LCD****************************************************/voidWriteCommandLcd(unsignedcharwdata)(LCD_DATA=wdata;LCD_RS=0;LCD_RW=0;LCD_E=0;dellay(100); 〃短暂延时,代替检测忙状态LCD_E=1;}//LCD初始化voidlcd_init(void){ —LCD_DATA=0;WriteCommandLcd(0x38);口dellay(1000);WriteCommandLcd(0x38);//显示模式设置WriteCommandLcd(0x08);//关闭显示WriteCommandLcd(0x01);〃显示清屏WriteCommandLcd(0x06);//显示光标移动设置WriteCommandLcd(0x0c);〃显示开及光标移动设置}/****************************************************函数名称:display_xy**入口参数:x(unsignedchar型),y(unsignedchar型)**出口参数:无**功能描述:设置光标位置,x是列号,y是行号****************************************************/voiddisplay_xy(unsignedcharx,unsignedchary){—if(y==1)x+=0x40;x+=0x80;WriteCommandLcd(x);}/**********************************************************************函数名称:display_char**入口参数:x(unsignedchar型),y(unsignedchar型),dat(unsignedchar型)**出口参数:无**功能描述:在具体位置显示单个字符,x是列号,y是行号*********************************************************************/voiddisplay_char(unsignedcharx,unsignedchary,unsignedchardat){display_xy(x,y);口WriteDataLcd(dat);}/***********************************************************************函数名称:display_string**入口参数:x(unsignedchar型),y(unsignedchar型),s(指针型)**出口参数:无**功能描述:在具体位置显示字符串,以/0结束,x是列号,y是行号**********************************************************************/voiddisplay_string(unsignedcharx,unsignedchary,unsignedchar*s){ —display_xy(x,y);while(*s){WriteDataLcd(*s);s++;}}口习不口习不、IE不白而rij不斗口习不口习不、IE不白而rij不斗附录3:外文资料翻译译文:火灾报警传统电子安全报警系统主要是通过传感器自动检测,产生报警信号,从现场发出报警信号或通过专门电缆近距离报警,从而引起人们的警觉。通过多年的研究和发展,现在的报警器可以说是门类众多。由于报警器的飞速发展和社会各个领域的急切需要,能应用的领域越来越多,特别是在民用领域更是急速发展。近年来,红外线报警器已经成为报警领域的一个热点,由于其采用的是不可见的红外线探测,所以具有隐蔽性好、安全等特点。红外线传感器按机理不同可以分为光探测型和热探测型。光探测传感器是利用光子效应的红外探测器。这类传感器响应速度快、灵敏度咼、检测特性好,但需要冷却,使用不方便。而且器件的检测灵敏度与红外波长有关。热探测传感器是利用热释电效应的红外探测器。在接收到目标的红外辐射后温度升高,温度的升高又引起传感器内部某些物理量的变化,通过检测物理量的变化来确定红外线辐射。这类传感器在室温条件下工作,检测灵敏度也很高,响应速度也很快,而且与红外线辐射波长无关,可探测功率只受背景辐射的限制,应用很方便。本文设计的是被动式热释电红外探测器。文中主要论述了热释电的原理、热释电探测器的特性、BISS0001传感信号处理器、555定时器组成的多谐振荡报警电路等内容。最后设计完成了热释电红外探测报警器的硬件电路。随着现代家庭用火、用电量的增加,家庭火灾发生的频率越来越高。家庭火灾一旦发生,很容易出现扑救不及时、灭火器材缺乏及在场人惊慌失措、逃生迟缓等不利因素,最终导致重大生命财产损失。探讨家庭火灾的特点及防火对策,对于预防家庭EHffiEHffiEHffiEHffilr=h□火灾,减少火灾损失具有现实意义 在现代城市家庭里,许多人因不懂家庭安全常识引起火灾事故,使好端端的幸福家庭转眼间毁于一旦,有的导致家破人亡,而且一旦发生居民家庭火灾,处置不当、报警迟缓,是造成人员受害的原因。人们应该积极了解家庭火灾的主要起因,掌握防止发生火灾的知识和万一发生火灾时保护自己的方法,及时消除隐患。英国每年发生50000起以上的严重家庭火灾,其中大部分火灾造成人员伤亡和重大的家庭财产损失,有的还连累左邻右舍,火灾损失更加惨重。在调查火灾起因的时候,绝大多数发生火灾家庭的当事人
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030民办大数据培训行业投资价值及未来趋势预测报告
- 2025-2030民办国学教育市场文化需求与推广策略研究报告
- 2025-2030民办亲子活动市场社群运营及用户留存策略报告
- 2025-2030民办中小学校校园文化建设与价值观塑造报告
- 2025年国防教育理论考试试题及答案
- 2025-2030民办STEM教育行业发展现状与未来前景预测报告
- 2025-2030母猪繁殖性能提升饲料关键技术开发进展
- 2025-2030母婴社区平台内容变现路径与用户生命周期管理研究报告
- 小学道法笔试试题及答案
- 2025年社团部长面试题库及答案
- 屋面防水安全技术交底
- 典范英语7-4中英文对照翻译Oh,otto!Oh,otto
- 火车站站场改造工程施工方案
- 《中外民俗》第三章课件
- 了凡四训-(课堂PPT)课件(PPT 33页)
- 领导干部压力管理与心理调适PPT通用课件
- 古诗韵律操歌词
- 工作分析(第二版)付亚和
- 浅析拉维莱特公园
- 材料的制备PPT课件
- 土壤成分分析标准物质(GSS1-8)
评论
0/150
提交评论