您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 其它相关文档 > 基于单片机的红外门禁控制系统设计与制作(含源程序和原理图)
项目名称:基于单片机的红外门禁控制系统说明:该系统主要应用于室内智能计数和照明灯的智能控制。实际应用很广泛:可用在生产线上产品数量统计、公交车智能计数问候(需添加语音芯片)、超市内人数统计等公共场合。另外,添加串口通信部分便可实现与PC数据交换的功能。系统流程:基于单片机的红外门控系统完成了三项实验(由于剩余零件以及经费的原因):门控系统:实验了人员的单向通行并对之进行计数,入口出口红外传感器红外传感器外部中断0外部中断1加一减一显示控制单片机项目成果及特点从而根据数字来控制照明情况,特点是能很方便及时地对能量进行控制,从而大大地节约了能源!具体操作及现象首先有人进去时要将系统开关打开(这也是我们碰到的没解决的问题:一开始需要人工操作),而且使计数起点为1,因为进去了一个人,此后只要从进口进入一个人就加1,从出口离开一个人则减1,并在计数器上显示出来,只要当计数器显示为0,则单片机控制其自动切断电源,从而达到节能的目的。但是,这些结果及现象都远没有达到我们预期想要得到的结果,不过我们还是努力过了,也学到了不少的新知识,如果有可能的话,我们将会继续探索没成功的部分,尤其是在我们学了专业知识以后。基于单片机的红外门控系统总结我们所做的创新实验项目“基于单片机的红外门控系统”已基本完成,现将其工作原理简要说明。该系统主要分为两大部分:一是红外传感器部分。二是单片机计数显示控制部分。基本电路图如下:其中红外传感器部分我们采用红外对管实现,红外对管平行放置,平常处于接收状态,经比较器输出低电平,当有人经过时,红外线被挡住,接收管接收不到红外线,经比较器输出高电平。这样,当有人经过时便会产生一个电平的跳变。单片机控制部分主要是通过外部两个中断判断是否有人经过,如果有人经过,由于电平跳变的产生,进入中断服务程序,这里我们采用了两对红外传感器接到两个外部中断口,中断0作为入口,实现加1操作,中断1作为出口,实现减1操作。另外,我们通过P0口控制室内灯的亮暗,当寄存器计数值为0时,熄灯,不为0时,灯亮。显示部分,采用两位数码管动态显示,如有必要,可以很方便的扩展为四位计数。精益求精!在实验过程中,我们走了非常多的弯路,做出来的东西根本不是自己想要的,我们本想做成室内只有一个门的进出计数,原理已清楚,即在门的两边放置两对红外对管,进出时,挡住两对对管的顺序不同,因此,可判断是进入还是出去,从而实现加减计数,编程时,可分别在两个中断服务程序的入口置标志位,根据标志位判断进出,详细内容在程序部分。理论如此,但在实际过程中,还是发现实现不了上述功能,我们初步判定认为是程序掌握得不够好,相信随着自己对单片机了解的深入,应该会做出更好的(因为我们是临时学的单片机),程序的具体内容如下:$MOD52ORG0000HLJMPMAINORG0003HLJMP0100HORG0013HLJMP0150HORG0050HMAIN:CLRAMOV30H,A;初始化缓存区MOV31H,AMOV32H,AMOV33H,AMOVR6,AMOVR7,ASETBEASETBEX0SETBEX1SETBIT0SETBIT1SETBPX1NEXT1:ACALLHEXTOBCDD;调用数制转换子程序ACALLDISPLAY;调用显示子程序LJMPNEXT1ORG0100H;中断0服务程序LCALLDELYmov70h,#2djnz70h,nextJBCF0,NEXTSETBF0CLRP0.0LCALLDELY0SETBP0.0MOVA,R7ADDA,#1MOVR7,AMOVA,R6ADDCA,#0MOVR6,ACJNER6,#07H,NEXTCLRAMOVR6,AMOVR7,ANEXT:RETIORG0150H;中断1服务程序LCALLDELYmov70h,#2djnz70h,next2JBCF0,NEXT2SETBF0CLRP0.0LCALLDELY0SETBP0.0CLRCMOVA,R7SUBBA,#1MOVR7,AMOVA,R6SUBBA,#0MOVR6,ACJNER6,#07H,NEXT2CLRAMOVR6,AMOVR7,ANEXT2:RETIORG0200HHEXTOBCDD:MOVA,R6;由十六进制转化为十进制PUSHACCMOVA,R7PUSHACCMOVA,R2PUSHACCCLRAMOVR3,AMOVR4,AMOVR5,AMOVR2,#10HHB3:MOVA,R7;将十六进制中最高位移入进位位中RLCAMOVR7,AMOVA,R6RLCAMOVR6,AMOVA,R5;每位数加上本身相当于将这个数乘以2ADDCA,R5DAAMOVR5,AMOVA,R4ADDCA,R4DAA;十进制调整MOVR4,AMOVA,R3ADDCA,R3DJNZR2,HB3POPACCMOVR2,APOPACCMOVR7,APOPACCMOVR6,ARETORG0250HDISPLAY:MOVR0,#30HMOVA,R5ANLA,#0FHMOV@R0,AMOVA,R5SWAPAANLA,#0FHINCR0MOV@R0,AMOVA,R4ANLA,#0FHINCR0MOV@R0,AMOVA,R4SWAPAANLA,#0FHINCR0MOV@R0,AMOVR0,#30HMOVR2,#11111110BAGAIN:MOVA,R2MOVP2,AMOVA,@R0MOVDPTR,#TABMOVCA,@A+DPTRMOVP1,AACALLDELAYINCR0MOVA,R2RLAMOVR2,AJBACC.4,AGAINRETTAB:DB03FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;七段码表DELY:MOVR1,#80D1:MOVR2,#100DJNZR2,$DJNZR1,D1RETDELAY:MOVTMOD,#01H;延时子程序MOVTL0,#0FEHMOVTH0,#0FEHSETBTR0WAIT:JNBTF0,WAITCLRTF0CLRTR0RETDELY0:MOVR1,#200D3:MOVR2,#250DJNZR2,$DJNZR1,D3RETEND该系统实际应用广泛。可用在生产线上产品数量统计、公交车智能计数问候(需添加语音芯片)、超市内人数统计等公共场合。另外,添加串口通信部分便可实现与PC数据交换的功能。
本文标题:基于单片机的红外门禁控制系统设计与制作(含源程序和原理图)
链接地址:https://www.777doc.com/doc-2574236 .html