配色: 字号:
课程设计之电子密码锁
2012-05-04 | 阅:  转:  |  分享 
  




扬州市职业大学

课程设计(论文)



设计(论文)题目:电子密码锁





系别:汽车与电气工程系1

专业:计算机控制技术1

班级:07计算机控制技术

姓名:刘士娟1

学号:0702040112

指导教师:张平

完成时间:10年1月













目录

摘要-----------------------------------------------------------3

关键字-------------------------------------------------------------------------------------3

第一章前言-----------------------------------------------------------------------------3

第二章基本功能设计---------------------------------------------------------------4

2.1实验任务-----------------------------------------------------------------4

2.2基本设计------------------------------------------------------------------4

2.3系统框图----------------------------------------------------------------5

第三章硬件设计-----------------------------------------------------------------------5

3.1硬件工作接线口----------------------------------------------------------------5

3.2LED显示器结构与原理-------------------------------------------------------6

3.3复位电路-----------------------------------------------------------------------------6

3.4按键方式---------------------------------------------------------------------------7

3.5电路原理图-------------------------------------------------------------------------8

3.6元器件清单-------------------------------------------------------------------------9

第四章软件设计--------------------------------------------------------------------10

4.1软件结构----------------------------------------------------------------------------------10

4.2源程序--------------------------------------------------------------------------------------12

第五章焊接技术------------------------------------------13

第六章心得体会-----------------------------------------------------------------------14

第七章参考文献-----------------------------------------------------------------------15









【摘要】电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,我们采取的是单片机,它具有超大规模集成电路技术,有极强的数据处理能力,I/O口多。以它为核心设计的密码锁,结构小,功能强,现在很多单位甚至家里的各个家用电器,还有保险箱都需要它。

【关键字】AT89C51单片机I/O口接线LED显示(四位静态数码管)

复位电路键盘焊接技术

【正文】

课程设计之电子密码锁

一、前言

一种能防止多次试探密码的基于单片机的密码锁设计方案,根据基本要求规划单片机密码锁的硬件电路和软件程序,同时对单片机的型号选择、硬件设计、软件流程图、单片机存储单元的分配等都有注释。我们知道现在很多行业都需要密码锁,电子密码锁的性能和安全性大大超过了机械锁,为了提高密码的保密性,可以经常更改密码,防止密码被盗;当密码输入错误多次时,报警系统可自动启动。

它们有很多扩展功能:用户可以根据实际情况随意改变密码值或密码长度,按下“密码修改键”提示用户输入原密码,通过校验后提示输入新密码,一次写入CPU存储器中,另一次写入单片机内部RAM中,以便机器确认密码的正确性。输入完毕后,按修改确认键,两次的密码完全一致时,密码修改完成。我们这可以在输入的密码与程序中设定的密码相比,若失误,会有灯亮提示,但三次后都错误,系统可自动报警。

防盗报警功能是利用断线方式报警,当CPU检测不到返回信号时,系统自动报警单元报警,正常开启锁时,系统自动切断报警单元的电源。

二、基本功能设计

1,实验任务

根据设定好的密码,采用矩阵式按键实现密码的输入功能,当密码输入正确之后,锁就打开(即绿灯亮),如果输入的三次密码不正确,就锁定按键3秒钟,同时报警(即红灯亮)。

2,基本设计

我们将密码程序存在EPROM中,用户通过单片机上P1.0口上的按键进行选择。具体操作如下:首先按一下P1.0口上的按键,然后再逐渐输入密码,最后按#号确认即可。

设置显示初始符号“—”,为了帮助用户确认是否有键按下,并且防止密码外泄,在输入显示时,并不是显示用户按下的数字符号,而是以一个特定的字母符号提醒用户是否有键按下。有键按下,就会显示字符“F”,没有键按下就是初始状态。

首先按下P1.0口上的按键,然后输入密码,正确则绿灯亮,输入三次都不正确的则红灯亮。

3,系统框图



三、硬件设计

(1)硬件工作接线口

P0口接数码管,用来显示按键是否按下,P1口接键盘,P1.0外接选择密码键,P2口按串行方式传送信号给数码管,P2.7口显示电磁锁开还是闭合状态。

把单片机系统区域中的P0口用导线连接“四路静态数码显示”的任一端口上,把单片机系统区域中的P1口上接独立式键盘。

(2)LED显示器结构与原理

LED显示块是由发光显示二极管显示字段的显示器件。在单片机中我们通常用七段LED,这种显示共有共阴极和共阳极两种,本设计是用共阳极,是LED显示块的发光二极管与阳极并接,如图所示



通常的七段显示块中共有8个发光二极管,其中7个发光二极管构成七笔字形“8”,一个发光二极管构成小数点。七段显示块与单片机接口非常容易。只要将一个8位并行输出与显示块的发光二极管引脚相连即可。8位并行输出口输出不同的字节数据即可获得不同的数字或字符,通常将控制发光二极管的8位字节数据称为段选码。



显示字符 共阳极段选码 显示字符 共阳极段选码 0 C0H A 88H 1 F9H B 7CH 2 A4H C C6H 3 B0H D A1H 4 99H E 86H 5 92H F 8EH 6 82H 7 F8H 8 80H 9 90H (3)复位电路

如图所示为80C51型单片机上电复位电路。RC构成微分电路,在接电瞬间,产生一个微分脉冲,其宽度若大于2个机器周期,80C51型单片机将复位,为保证微分脉冲宽度足够大,一般取10μF电容、8.2KΩ电阻。



(4)按键方式

按键方式有独立式和行列式两种,本设计是采用独立式,共设置5个按键。独立式按键是指直接用I/O口线构成的单个按键电路。每个独立按键单独占有一根I/O口线,每根I/O口线上的按键工作状态不会影响其他I/O口线的工作状态。若按键AN1~AN5分别代表数码1~5,AN0代表#号。在没有键按下时,P1.0~P1.7都是高电平1,若某个键被按下,相应的接口线就变为低电平0。开锁时必须先按AN1,使从P1口读入的第一个值与存储单元的设定值相同,再顺序按按钮将密码输入,才能开锁。

(5)电路原理图









(6)元器件清单





元件名称 参数 元件名称 参数 插座 DIP40 电源 5V 单片机 89C51 电阻 晶体振荡器 12MHZ 电解电容 瓷片电容 按钮开关 LED数码管 HS-5101BS2



四、软件设计

1,软件结构









2,源程序

PSDEQU21H

ORG0000H

AJMPMAIN

ORG0100H

AJMPMAIN

ORG0100H

MAIN:MOVSP,#3FH

MOVP0,#0FFH

MOVPSD,#02

MAIN1:SETBP3.0

MOVP1,#OBFH

KEY:ACALLKS

JNZK1

AJMPKEY

K1:ACALLDELAY100MS

ACALLKS

JNZK2

AJMPKEY

K2:MOVR3,#0FEH

MOVR4,#00

K3:MOVA,R3

MOVP2,A

MOVA,P0

ANLA,#OFH

L0:JBACC.0,L1

MOVA,#00H

AJMPLK

L1:JBACC.1,L2

MOVA,#04H

AJMPLK

L2:JBACC.2,L3

MOVA,#08H

AJMPLK

L3:JBACC.3,NEXT

MOVA,#OCH

LK:ADDA,R4

PUSHACC

K4:ACALLKS

JNZK4

ACALLKS

JNZK4

POPACC

AJMPPR

NEXT:INCR4

MOVA,R3

JNBACC.3,KEY

RLA

MOVR3,A

AJMPK3

PR:CJNEA,PSD,ERR

PASS:CLRP3.0

MOVP1,#8CH

LCALLDELAY1S

LCALLDELAY1S

LCALLDELAY1S

LJMPMAIN1

ERR:MOVP1,#86H

LCALLDELAY1S

LCALLDELAY1S

LCALLDELAY1S

LJMPMAIN1

KS:MOVA,#00H

MOVP2,A

NOP

MOVA,P0

CPLA

ANLA,#OFH

RET

五、焊接技术

先将准备好的元件插入印刷电路板规定好的位置上,在元件与印刷电路板铜箔的连接点上,涂上少许焊剂,待电烙铁加热后用烙铁头的刃口上些适量的焊锡,上的焊锡多少要根据焊点的大小来决定。焊接时,要将烙铁头的刃口接触焊点与元件引线,根据焊点的形状作一定的移动,使流动的焊锡布满焊点并渗入被焊物的缝隙,接触时间大约在3-5秒左右,然后拿开电烙铁。拿开电烙铁的时间,方向和速度,决定了焊接的质量与外观的正确的方法是,在将要离开焊点时,快速的将电烙铁往回带一下,后迅速离开焊点,这样焊出的焊点既光亮,圆滑,又不出毛刺。在焊接时,焊接时间不要太长,免得把元件烫坏,但亦不要太短,造成假焊或虚焊。焊接结束后,用列子夹住被焊元件适当用力拉拨一下,检查元件是否被焊牢。如果发现有松动现象,必须重新进行焊接。

六、心得体会

我通过这次课程设计,可谓是重新将单片机,计算机控制以及工控机、PLC所有相关的知识联系起来,本来有些原理还是懵懂的,但是在找电子密码锁的基本知识时,我发现只有动手做才会孰能技巧,还有对材料的整理和理解。这次设计运用到的知识很多方面,尤其是单片机,像AT89C51,引脚多,硬件内部线路接通,所以用起来很方便,还有我做的电子密码锁是结合数码管显示和键盘,它们之间的线路连接,四位一体的显示引脚的功能,当然也要对这些元器件作相应调查。主要就是将元件焊接起来,一个就是电路原理图,还有对引脚的作用熟悉。对于软件方面则是灵活运用单片机有关的程序语言,还有很多扩展功能,由于知识匮乏,但是理论知识还是比较详细的。我最大的成功之处是在这整个过程,动脑寻求解决一个一个问题的办法,对程序是不断思索,务必写出很简单的程序来,使得电子密码锁能做成功!



AT89C51



CPU





显示



键盘



报警器和电磁锁



复位



晶振



密码锁主程序



设置初始密码



初始显示/关闭锁



读端口P1,取按键状态



有按键按下么?



有按键按下么?



再次读端口P1



送列扫描字

读行线状态



保护现场



相加计算键号



调用按键查询子程序



键号给A



显示“E”



显示“F”



第0行按下?



第1行按下?



第2行按下?



第3行按下?



4列扫描完



A=00



A=04



A=08



A=12



按键释放么?



A=设定密码么?



N



Y



N



Y



Y



Y



Y



Y



N



N



N



N



N



Y



Y



N



N



Y



1



1



2



2







献花(0)
+1
(本文系朽木轩首藏)