1、课程设计说明书 第 III页热释电检测报警电路设计摘 要本系统采用了热释电红外传感器,它的制作简单、成本低、安装比较方便,而且防盗性能比较稳定,抗干扰能力强、灵敏度高、安全可靠。这种防盗器安装隐蔽,不易被盗贼发现,同时它的信号经过单片机系统处理后方便和PC机通信,便于多用户统一管理。本设计包括硬件和软件设计两个部分。硬件部分包括单片机控制电路、红外探头电路、驱动执行报警电路、LED控制电路等部分组成。处理器采用51系列单片机AT89C51,整个系统是在系统软件控制下工作的。关键词: AT89C51,红外传感器,数据采集,报警电路目 录1 绪论11.1 课题描述11.2 基本工作原理及框图12
2、相关芯片及硬件电路设计22.1 AT89C51芯片22.1.1 AT89C51的功能特性32.1.2 AT89C51的主要性能参数32.1.3 时钟电路的设计72.1.4 复位电路的设计72.1.5 数码管显示报警电路的设计82.1.6 声音报警电路的设计92.2热释电红外传感器原理92.3调整电路的设计102.4 系统硬件电路的选择及说明103 系统软件及程序设计103.1 Proteus软件简介及使用103.2 中断程序主要流程133.3 程序设计133.2.1初始化程序:133.2.2延时程序:143.2.3报警显示程序:144 系统软件及程序设计144.1 Keil软件简介144.2应
3、用Keil进行软件仿真15总 结17致 谢18参考文献19附录一A 原理图20附录一B PCB打样图21附录二 仿真原理图22附录三 源程序23课程设计说明书 第28页1 绪论1.1 课题描述 随着时间的推移,计算机革命的完成,信息高速公路的发展,人们生活水平得到很大的提高,对私有财产的保护意识在不断的增强,因而对防盗措施提出了新的要求。本设计就是为了满足现代住宅防盗的需要而设计的家庭式电子防盗系统。本次设计所用的这种热释电红外传感器能以非接触形式检测出人体辐射的红外线,并将其转变为电压信号,同时,热释电红外传感器既可用于防盗报警装置,也可用于制动控制、接近开关、遥测等领域。经过本次课程设计会
4、使我们进一步对单片机有个感观认识,增强动手能力。使理论与实际相结合。1.2 基本工作原理及框图本课程设计包括硬件和软件设计两个部分。模块划分为数据采集、键盘控制、报警等子模块。电路结构可划分为:热释电红外传感器、报警器、单片机控制电路、LED控制电路及相关的控制管理软件组成。用户终端完成信息采集、处理、数据传送、功能设定、本地报警等功能。就此设计的核心模块来说,单片机就是设计的中心单元,所以此系统也是单片机应用系统的一种应用。单片机应用系统也是有硬件和软件组成。硬件包括单片机、输入/输出设备、以及外围应用电路等组成的系统,软件是各种工作程序的总称。单片机应用系统的研制过程包括总体设计、硬件设计
5、、软件设计等几个阶段。从设计的要求来分析该设计须包含如下结构:热释电红外传感探头电路、报警电路、单片机、复位电路及相关的控制管理软件组成;它们之间的构成框图如图1总体设计框图所示: AT89S51复位电路传感器报警执行电路LED发光显示调整电路驱动驱动驱动发光二极管图1基本工作原理框图处理器采用51系列单片机AT89S51整个系统是在系统软件控制下工作的。设置在监测点上的红外探头将人体辐射的红外光谱变换成电信号,经放大电路送出TTL 电平至AT89S51单片机。在单片机内,经软件查询、识别判决等环节实时发出入侵报警状态控制信号。1驱动电路将控制信号放大并推动声光报警设备完成相应动作。当报警延迟
6、10s一段时间后自动解除,当警情消除后复位电路使系统复位 4 。2 相关芯片及硬件电路设计2.1 AT89C51芯片AT89S51单片机是美国Atmel公司生产低电压,高性能CMOS 8位单片机,片内含4k bytes的可反复擦写的只读程序存储器(EPROM)和128 bytes的随机存取数据存储器(RAM),器件采用Atmel公司的高密度、非易失性存取技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash 存储单元,功能强大。图2 AT89S51 功能方块图图2为AT89S51片机的基本组成功能方块图。由图可见,在这一块芯片上,集成了一台微型计算机的主要组成部
7、分,其中包括CPU、存储器、可编程I/O口、定时器/计数器、串行口等,各部分通过内部总线相连。下面介绍几个主要部分。2.1.1 AT89C51的功能特性AT89C51提供以下标准功能:4K字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个十六位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其他所有部件工作直到下一个硬件复位。2
8、.1.2 AT89C51的主要性能参数1主要特性:与MCS-51 兼容 4K字节可编程闪烁存储器 寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24Hz三级程序存储器锁定128*8位内部RAM32可编程I/O线两个16位定时器/计数器5个中断源 可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路2管脚说明:图3 AT89C51引脚图VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0
9、口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或
10、16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /IN
11、T0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作
12、外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLA
13、SH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3振荡器特性:XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。4芯片擦除:整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任
14、何非空存储字节被重复编程以前,该操作必须被执行。此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止 3 。2.1.3 时钟电路的设计XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。因为一个机器周期含有6个状态周期,而每个状态周期为2个振荡周期,所以一个机器周期共有12个振荡
15、周期,如果外接石英晶体振荡器的振荡频率为12MHZ,一个振荡周期为1/12us,故而一个机器周期为1us。如图4所示为时钟电路。LM35的主要性能参数。图4 时钟电路图2.1.4 复位电路的设计复位方法一般有上电自动复位和外部按键手动复位,单片机在时钟电路工作以后, 在RESET端持续给出2个机器周期的高电平时就可以完成复位操作。例如使用晶振频率为12MHz时,则复位信号持续时间应不小于2us。该复位电路连接单片机的RESET引脚,如图5示为复位电路 5 。图5 复位电路图2.1.5 数码管显示报警电路的设计由2个数码管接上电阻后连上单片的P0,P2输入输出口的引脚,外接VCC,当单片机的相应
16、引脚被置低电平后,数码管显示相应的数字,起到报警作用。注:当P0口输出0F9H时,数码管DS1显示数字1,当P2口输出025H时,数码管DS2显示数字2。6图6所示为数码管报警电路。图6 发光二极管报警电路图2.1.6 声音报警电路的设计如下图所示,用一个Speaker和三极管、电阻接到单片机的P2.0引脚上,构成声音报警电路,低电平触发,如图7示为声音报警电路 7 。图7 声音报警电路图2.2热释电红外传感器原理本设计所用的热释感器就采用这种双探测元的结构。其工作电路原理及设计电路如图8所示, 在VCC电源端利用C1和R2来稳定工作电压,同样输出端也多加了稳压元件稳定信号。当检测到人体移动信
17、号时,电荷信号经过FET放大后,经过C2,R1的稳压后使输出变为高电位,再经过NPN的转化,输出OUT为低电平 2 。图8 热释电红外传感器原理图2.3调整电路的设计如图9所示为最基本的调整电路,图中1为输出,接单片机的P0.7,P0.6输入输出口。图9 调整电路电路图2.4 系统硬件电路的选择及说明硬件电路的设计见附录一A、B示,从以上的分析可知在本设计中要用到如下器件: AT89C51、热释电红外传感器、LED、发光二极管、蜂鸣器等一些单片机外围应用电路。3 系统软件及程序设计3.1 Proteus软件简介及使用Protues软件是英国Labcenter electronics公司出版的E
18、DA工具软件(该软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsP
19、IC33、AVR、ARM、8086和MSP430等,在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。该软件具有4大功能模块一智能原理图设计(ISIS) 丰富的器件库:超过27000种元器件,可方便地创建新元件;智能的器件搜索:通过模糊搜索可以快速定位所需要的器件;智能化的连线功能:自动连线功能使连接导线简单快捷,大大缩短绘图时间;支持总线结构:使用总线器件和总线布线使电路设计简明清晰;可输出高质量图纸:通过个性化设置,可以生成印刷质量的BMP图纸,可以方便地供WORD、POWERPOINT等多种文档使用。 二完善的电路仿真功能(Prospice) 1 ProSPICE混合仿真:基
20、于工业标准SPICE3F5,实现数字/模拟电路的混合仿真;2 超过27000个仿真器件:可以通过内部原型或使用厂家的SPICE文件自行设计仿 真器件,Labcenter也在不断地发布新的仿真器件,还可导入第三方发布的仿真器件。3 多样的激励源:包括直流、正弦、脉冲、分段线性脉冲、音频(使用wav文件)、指数信号、单频FM、数字时钟和码流,还支持文件形式的信号输入。 4 丰富的虚拟仪器:13种虚拟仪器,面板操作逼真,如示波器、逻辑分析仪、信号发生器、直流电压/电流表、交流电压/电流表、数字图案发生器、频率计/计数器、逻辑探头、虚拟终端、SPI调试器、I2C调试器等; 5 生动的仿真显示:用色点显
21、示引脚的数字电平,导线以不同颜色表示其对地电压大小,结合动态器件(如电机、显示器件、按钮)的使用可以使仿真更加直观、生动;6 高级图形仿真功能(ASF):基于图标的分析可以精确分析电路的多项指标,包括工作点、瞬态特性、频率特性、传输特性、噪声、失真、傅立叶频谱分析等,还可以进行一致性分析。 三独特的单片机协同仿真功能(VSM) 1 支持主流的CPU类型:如ARM7、8051/52、AVR、PIC10/12、PIC16、PIC18、PIC24、dsPIC33、HC11、BasicStamp、8086、MSP430等,CPU类型随着版本升级还在继续增加,如即将支持CORTEX、DSP处理器; 2
22、支持通用外设模型:如字符LCD模块、图形LCD模块、LED点阵、LED七段显示模块、键盘/按键、直流/步进/伺服电机、RS232虚拟终端、电子温度计等等,其COMPIM(COM口物理接口模型)还可以使仿真电路通过PC机串口和外部电路实现双向异步串行通信; 3 实时仿真:支持UART/USART/EUSARTs仿真、中断仿真、SPI/I2C仿真、MSSP仿真、PSP仿真、RTC仿真、ADC仿真、CCP/ECCP仿真; 4 编译及调试:支持单片机汇编语言的编辑/编译/源码级仿真,内带8051、AVR、PIC的汇编编译器,也可以与第三方集成编译环境(如IAR、Keil和Hitech)结合,进行高级语
23、言的源码级仿真和调试; 软件仿真:支持当前的主流单片机,如51系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列、68000系列等。 1)提供软件调试功能 2)提供丰富的外围接口器件及其仿真 RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分SPI器件,部分IIC器件。这样很接近实际。在训练学生时,可以选择不同的方案,这样更利于培养学生。 3) 提供丰富的虚拟仪器 利用虚拟仪器在仿真过程中可以测量外围电路的特性,培养学生实际硬件的调试能力。电路功能仿真:在PROTUES绘制好原理图后,调入已编译好的目标代码文件:*.HEX,可以在PROTUES
24、的原理图中看到模拟的实物运行状态和过程。通过以上介绍让我深入了解了该软件的使用,本次课设的仿真原理图参见附录。3.2 中断程序主要流程按上述工作原理和硬件结构分析可知系统主程序工作流程图如下图10所示;图10. 主程序流程3.3 程序设计3.2.1初始化程序:ORG 0100HSETB P2.0MOV P0,#0C0HMOV P2,#03H ;将两个数码管置03.2.2延时程序:DELAY:MOV R1,0AAHLD2:MOV R2,0FBHLD1:NOPDJNZ R2,LD1DJNZ R1,LD2RET 3.2.3报警显示程序:BAOJING: MOV 51H,#0AH ;设置循环次数 MO
25、V TMOD,#01H ;定时器T0定时 方式1 MOV TL0,#0B0H ;置50ms定时初值 MOV TH0,#3CH SETB TR0 ;启动T0 L2:JBC TF0,L1 ;查询记数溢出 SJMP L2 L1:MOV TL0,#0B0H MOV TH0,#3CH DJNZ 51H,L2 ;未到时间继续循环 SETB P2.0 ;关闭报警 MOV P1,#0FFH ;发光二极管灭 RET END源程序见附录三4 系统软件及程序设计4.1 Keil软件简介一. 系统概述 Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在
26、功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。 Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。下面详细介绍Keil C51开发系统各部分功能和使用。 二. Keil C51单片机软件开发系统的整体结构 C51工具包的整体结构,其中uVision与Ishell分别是C51 for Windows和for Dos的集成
27、开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及A51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。 使用独立的Keil仿真器时,注意事项 :* 仿真器标配11.0592MHz的晶振,但用户可以在仿真器上的晶振插孔中换插其他
28、频率的晶振。 * 仿真器上的复位按钮只复位仿真芯片,不复位目标系统。 * 仿真芯片的31脚(/EA)已接至高电平,所以仿真时只能使用片内ROM,不能使用片外ROM;但仿真器外引插针中的31脚并不与仿真芯片的31脚相连,故该仿真器仍可插入到扩展有外部ROM(其CPU的/EA引脚接至低电平)的目标系统中使用。4.2应用Keil进行软件仿真编写源程序并保存建立工程并添加源文件设置工程编译/汇编、连接,产生目标文件程序调试。Keil使用“工程”(Project)的概念,对工程(而不能对单一的源程序)进行编译/汇编、连接等操作。工程的建立、设置、编译/汇编及连接产生目标文件的方法非常易于掌握。首先选择菜
29、单File-New,在源程序编辑器中输入汇编语言或C语言源程序(或选择File-Open,直接打开已用其它编辑器编辑好的源程序文档)并保存,注意保存时必须在文件名后加上扩展名.asm(.a51)或.c;然后选择菜单Project-New Project,建立新工程并保存(保存时无需加扩展名,也可加上扩展名.uv2);工程保存后会立即弹出一个设备选择对话框,选择CPU后点确定返回主界面。这时工程管理窗口的文件页(Files)会出现“Target1”,将其前面+号展开,接着选择Source Group1,右击鼠标弹出快捷菜单,选择“Add File to Group Source Group1”,
30、出现一个对话框,要求寻找并加入源文件(在加入一个源文件后,该对话框不会消失,而是等待继续加入其它文件)。加入文件后点close返回主界面,展开“Source Group1”前面+号,就会看到所加入的文件,双击文件名,即可打开该源程序文件。紧接着对工程进行设置,选择工程管理窗口的Target1,再选择Project-Option for TargetTarget1(或点右键弹出快捷菜单再选择该选项),打开工程属性设置对话框,共有8个选项卡,主要设置工作包括在Target选项卡中设置晶振频率、在Debug选项卡中设置实验仿真板等,如要写片,还必须在Output选项卡中选中“Creat Hex Fi
31、”;其它选项卡内容一般可取默认值。工程设置后按F7键(或点击编译工具栏上相应图标)进行编译/汇编、连接以及产生目标文件。 成功编译/汇编、连接后,选择菜单Debug-Start/Stop Debug Session(或按Ctrl+F5键)进入程序调试状态 8。对电路的仿真见附录二总 结课程设计是培养学生综合运用所学知识发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。 致 谢参考文献
32、1 吴政江. 单片机控制红外线防盗报警器J. 锦州师范学院学报2 宋文绪. 传感器与检测技术M. 北京: 高等教育出版社3 余锡存. 单片机原理及接口技术M. 西安: 西安电子科技大学出版社4 唐桃波, 陈玉林. 基于AT89C51的智能无线安防报警器 J. 电子设计应用 5 李全利. 单片机原理及接口技术M. 北京: 北京航空航天大学出版社6 薛均义, 张彦斌. MCS-51系列单片微型计算机及其应用M. 西安交通大学出版社7 康华光. 电子技术基础(模拟部分)M. 北京: 高等教育出版社8 吴炳胜. 80C51单片机原理与应用技术 冶金工业出版社附录一A 原理图附录一B PCB打样图附录二
33、 仿真原理图附录三 源程序 汇编程序: ORG 0100H SETB P2.0 MOV P0,#0C0H MOV P2,#03H ;将两个数码管置0 MM: LCALL LP1 LCALL DELAY LCALL LB LCALL DELAY SJMP MM LP1: JB P0.7,R LCALL DELAY ;监测输入信号,是否有输入信号 JB P0.7,R ;再次监测输入信号,若有输入信号转ALARM:MOV P1,#00H MOV P0,#0F9H ;P0口显示1 CLR P2.0 ACALL BAOJING ;调用报警延时程序 ACALL DELAY SJMP HH R:MOV P0
34、,#0C0H LCALL DELAY HH: RET LB:JB P0.6,T LCALL DELAY JB P0.6,T ;再次监测输入信号,若有输入信号转 WW:MOV P1,#00H MOV P2,#25H ;P2口显示2 CLR P2.0 ACALL BAOJING ;再次监测输入信号,若有输入信号转 ACALL DELAY SJMP JJ T: MOV P2,#03H LCALL DELAY JJ:RET DELAY:MOV R1,0AAH ;延时程序 LD2:MOV R2,0FBH LD1:NOP DJNZ R2,LD1 DJNZ R1,LD2 RET BAOJING: MOV 51H,#0AH ;设置循环次数 MOV TMOD,#01H ;定时器T0定时 方式1 MOV TL0,#0B0H ;置50ms定时初值 MOV TH0,#3CH SETB TR0 ;启动T0 L2:JBC TF0,L1 ;查询记数溢出 SJMP L2 L1:MOV TL0,#0B0H MOV TH0,#3CH DJNZ 51H,L2 ;未到时间继续循环 SETB P2.0 ;关闭报警 MOV P1,#0FFH ;发光二极管灭 RET END