红外遥控电子密码锁

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

红外遥控电子密码锁

一.设计目的

1、学习串行通信的原理和应用。

2、了解异步串行通信的特点。

3、提高动手能力和理论联系实际能力。 二、设计任务和要求

设计并制作一个采用红外遥控的电子密码锁,要求如下: 1、能实现遥控开锁,遥控距离8~10m 。

2、具有修改密码、加密和较强的抗干扰能力。 扩展功能:

1、密码输入出错能立即报警。

2、能实现本机键盘开锁。

三.系统构成框图

四.系统设计思想

本系统采用单片机8051作为本设计的核心元件,利用红外线遥控原理和单片机串行发射、接处等功能而设计的一款有本机开锁和遥控开锁的电子密码锁。 五.基本功能设计

遥控密码锁的基本设计主要分为如下五个部分。

1. 选择密码:我们将编好的密码程序存储在EPROM 中,用户通过密码选择键---8051中的

P1.5口上的按键进行选择,具体操作过程如下:首先按一下P1.5口上按键,然后再逐渐输入号码,最后按”#”号确信即可.比如现在用户要是选择了57618这组数字作为密码,则用户只有首先按一下P1.5上的按键,接着在本机键盘上一一输入5、7、6、1、8、之后再按“#”号键即表示密码被设置好了,那么下次用户只要键入这组数据即可开锁。本设计中我们编入了两密码即:57618和81675。当然我们还可根据需要在EPROM 中存入更多的密码,供用户选择。 2. 密码输入有效显示:为了帮助用户确信是否有键按下,我们特在电路中设置了模拟显示电路;

而为了防止密码外泄;显示时,并不是显示用户按下的数字符号-而是以发光二极管的亮灭来提醒用户是否有键按下。有键按下,发光二极管亮0.5秒,没有键按下,发光二极管灭。这样既巧妙地提醒了用户又保护了用户密码,此本设计可靠性优点之一。

3.当用户键入正确密码后,再按确认键----“#”号,便会自动开锁。但用户键入密码时应注意:数字与数字之间的间隔时间为3秒,例如密码为57618,当键入第一个数字5后应在3秒内键入第二个数字7,否则,就会视为无效。如果键入完密码后不按“#”号,系统会当做放弃开锁处理。

4.密码错误报警:当用户键入错误密码时,系统就会报警,由扬声器发出5秒报警声。当连续三次出现密码错误时,则系统会长期报警不止。这时必须按复位方可停止。乃安全可靠性能之一

八.本机键开锁的工作原理

本机键开锁电路如图(B)所示,8051作为本电路的核心,P0口与P1.0 P1.1 P1.2外接本机键盘,P3.0口外接爱控接收头,P1.3口外接报警信号放大器,用来放大报警信号,驱动扬声器,P1.7口外接开锁电磁驱动电路,P1.5外接密码选择键,EPROM内存有两密码,P2.0口用发光

4.若连续3次输入错误,系统会长时间报警,这时必须按复位键恢复到初始化状态.

5.输入密码时,首位密码正确输入后,电路将开始自动计时,每位密码数之间的输入间隔应在3秒内.否则将输入超时处理,系统自动放弃,恢复到初始状态.

九.遥控开锁的工作原理

当选择遥控开锁时,本机键便会被封锁.这时,用户手执遥控器按下图(A )805

上的P1.0口

上的按键时,便有数字从8051 的P1.2口发出,发送的过程如下:

先将从P3.0送出5FH,然后将5FH 反馈到P1.1口进行内部调制,调制的规则是”0”电平调制,”1”电平不调制,最后将调好的数据从P1.2口通过红外发光二极管以波长为940mm 的红外光发出红外遥控信号.然后,在本机控制电路中的8051的P3.0口接有与红外发光二极管配套的接收头,将接收的光信号转换成电信号数据.最后,通过系统与内部原先设置的数据进行比较确认,如果一致便可开锁,如果不一致放弃开锁. 十、程序设计 1、程序框图

遥控发射程序框图 遥控接收程序框图

2、红外遥控电子密码锁程序

ORG 0000H ;主程序

CLR P1.7 ;清零 MOV RO, #OOH

CLR P1.3 ;关报警 CLR P1.7 ;P1.7清零

CLR P1.4 ;关报警

MOV RO, #OOH ;串行口初始化

MOV 52H, #02H ;将立即数02H送52H

MOV TMOD , #20H ;设置T1工作方式2

MOV TL1 ,#OF4H ;定时初始值送TL1

MOV TH1 ,#OF4H ;定时初始值送TH1

SETB TR1 ;启动定时器T1

MOV SCON, #ODOH ;定义串行行工作方式3

MOV PCON , #OOH

KEY: JNB P1.5 , KEP1 ;选择密码57618

LJMP KEP2

*******************************************************密码57618程序KEP1: MOV P2 .#0FFH ;关显示

MOV A , P0 判断是否有键按下

CPL A ;对P0口的数据取反

ANL A , #OFFH ;立即数OFF 与PO的数据相与

JNZ JP ;有键按下转至JP

MOV A , P1 ;判断是否有键盘按下

CPL A ;将P1口的数据取反

ANL A ,#O7H ;累加器数据为零转遥控接收程序

JZ WAIT

ACALL K10MS ;调用10秒延时

MOV A , P1

CPL A

ANL A ,#O7H

JZ WAIT

PP1: CJNE A , #01H ,JP1

MOV P2 , #89H ;显示字符”H”

LJMP K0P1

PP2: CJZE A , #02H ,JP2

MOV P2 , #89H ;显示字符”H”

LJMP KOP1

JP2: CJNE A . #04H ,KY

MOV P2 ,#89H ;显示字符”H”

JP3: MOV A , #O7H

CJNE A , #07H ,JP3

LJMP LP1

KOP1: MOV A ,P1

ANL A, #07H

CJNE A , #07H ,KOP1

LJMP KEP1

JP: LCALL D10MS

MOV A , PO

CPL A,

相关文档
最新文档