片机电子密码锁--工程实习报告 本文关键词:密码锁,机电,实习报告,工程
片机电子密码锁--工程实习报告 本文简介:浙江科技学院工程技术实习报告班级:学号:姓名:校内指导教师:实习日期自2012年11月5日至2012年12月30日实习报告目录1.前言1.1电子密码锁发展简析1.2电子密码锁发展趋势2.实习内容2.1电子密码锁的设计方案2.2本设计的具体要求2.3系统硬件设计2.3.1最小系统的设计2.3.2键盘部
片机电子密码锁--工程实习报告 本文内容:
浙江科技学院
工程技术实习报告
班
级:
学
号:
姓
名:
校内指导教师:
实习日期自
2012年
11月5日至
2012年
12月30日
实习报告目录
1.前言
1.1
电子密码锁发展简析
1.2
电子密码锁发展趋势
2.实习内容
2.1电子密码锁的设计方案
2.2本设计的具体要求
2.3系统硬件设计
2.3.1
最小系统的设计
2.3.2
键盘部分的设计
2.3.3
LCD显示电路的设计
2.3.4
电路密码储存部分
2.4系统软件设计
2.4.1
主程序流程设计图
2.4.2
开锁程序流程图
2.4.3
键盘程序流程图
2.5主程序模块
2.6仿真调试
2.7实物展示
2.8操作说明
4.结束语(致谢)
5.实习报告英文摘要
6.实习报告评语
1.前言
1.1
电子密码锁发展简析
如今随着人们生活水平的提高和安全意识的加强,对安全的要求也就越来越高。锁自古以来就是把守护门的铁将军,人们对它要求甚高,既要安全可靠的防盗,又要使用方便,这也是制锁者长期以来研制的主题。随着电子技术的发展,各类电子产品应运而生,电子密码锁就是其中之一。据有关资料介绍,电子密码锁的研究从20世纪30年代就开始了,在一些特殊场所早就有所应用。这种锁是通过键盘输入一组密码完成开锁过程。研究这种锁的初衷,就是为提高锁的安全性。由于电子锁的密钥量(密码量)极大,可以与机械锁配合使用,并且可以避免因钥匙被仿制而留下安全隐患。电子锁只需记住一组密码,无需携带金属钥匙,免除了人们携带金属钥匙的烦恼,而被越来越多的人所欣赏。电子锁的种类繁多,例如数码锁,指纹锁,磁卡锁,IC卡锁,生物锁等。但较实用的还是按键式电子密码锁。
20世纪80年代后,随着电子锁专用集成电路的出现,电子锁的体积缩小,可靠性提高,成本较高,是适合使用在安全性要求较高的场合,且需要有电源提供能量,使用还局限在一定范围,难以普及,所以对它的研究一直没有明显进展。
目前,在西方发达国家,电子密码锁技术相对先进,种类齐全,电子密码锁已被广泛应用于智能门禁系统中,通过多种更加安全,更加可靠的技术实现大门的管理。在我国电子锁整体水平尚处于国际上70年代左右,电子密码锁的成本还很高,市场上仍以按键电子锁为主,按键式和卡片钥匙式电子锁已引进国际先进水平,现国内有几个厂生产供应市场。但国内自行研制开发的电子锁,其市场结构尚未形成,应用还不广泛。国内的不少企业也引进了世界上先进的技术,发展前景非常可观。希望通过不断的努力,使电子密码锁在我国也能得到广泛应用。
1.2
电子密码锁发展趋势
电子密码锁应用于金融业,其根本的作用是“授权”,即被“授权”的人才可以存取钱、物。广义上讲,金融业的“授权”主要包括以下三种层次的内容:1、授予保管权,如使用保管箱、保险箱和保险柜;2、授予出入权,如出入金库、运钞车和保管室;3、授予流通权,如自动存取款。目前,金融行业电子密码锁的应用主要集中在前两个层面上。下面将介绍几种在金融行业中使用较多的电子密码锁以及它们的技术发展方向。当然,以上所说的授权技术再高超,都必须由精良的“锁具”担当承载结构部件,实现开启、闭锁的功能,而且承担实体防护作用,抵抗住或尽量延迟破坏行为,让电子密码锁“软、硬不吃”。一般情况下,锁具防盗的关键是锁身外壳、闭锁的部件的强度、锁止型式、配合间隙和布局。提高电子密码锁之防护能力的必然途径是报警,在金融业的许多场所有人值守、有电视监控,具有报警功能,可以综合物理防范和人力防范两种作用。报警的前提是具备探测功能,根据电子密码锁的使用场所和防护要求,可选择多种多样的探测手段。在中国的城市金融业中,实现联网报警已经成为对各金融网点的基本要求。根据国内外的实践经验,金融业实行安全防范风险等级很有必要,即依据使用的防盗报警器材的性能、安装布局和人员值守状况等,可以评估被防护物或区域的防护能力,得出风险等级,其中,电子密码锁的性能至关重要。
2.实习内容
2.1电子密码锁的设计方案
选用单片机AT89S52作为本设计的核心元件,利用单片机灵活的编程设计和丰富的IO端口,及其控制的准确性,实现基本的密码锁功能。在单片机的外围电路外接输入键盘用于密码的输入和一些功能的控制,外接LCD1602显示器用于显示作用。其系统结构框图如图2.1所示:
键盘输入模块
复位电路
密码存储模块
开锁电路
报警电路
显示模块
AT89S52
图2.1
系统结构总框图
2.2本设计的具体要求
1、设置6位密码,密码通过键盘输入,若密码正确,则将锁打开。
2、密码可以由用户自己修改设定(只支持6位密码),锁打开后才能修改密码。修改密码之前必须再次输入密码,在输入新密码时候需要二次确认,以防止误操作。
3、报警、锁定键盘功能。密码输入错误显示器会出现错误提示,若密码输入错误次数超3次,蜂鸣器报警并且锁定键盘。
4、AT24C02保存密码,支持复位保存,掉电保存功能。
2.3系统硬件设计
2.3.1最小系统的设计
当MCS-5l系列单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,单片机就执行复位操作。如果RST持续为高电平,单片机就处于循环复位状态。根据应用的要求,复位操作通常有两种基本形式:上电复位和开关复位。复位后的状态
a、复位后PC值为0000H,表明复位后的程序从0000H开始执行。
b、SP值为07H,表明堆栈底部在07H,一般需要重新设置SP值。
c、P0~P3口值为FFH。P0~P3口用作输入口时,必须先写入“1”。单片机在复位后,已使P0~P3口每一端线为“1”,为这些端线用作输入口做好了准备。
外接石英晶体(或陶瓷谐振器)及电容Cl、C2
接在放大器的反馈回路中构成并联振荡电路。
图2.3.1
最小系统电路
2.3.2
键盘部分的设计
本设计就采用行列式键盘,同时也能减少键盘与单片机接口时所占用的I/O线的数目,在按键比较多的时候,通常采用这样方法。
每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要N条行线和M条列线,即可组成具有N×M个按键的键盘。
在这种行列式矩阵键盘非键盘编码的单片机系统中,键盘处理程序首先执行等待按键并确认有无按键按下的程序段。
4×4矩阵键盘的工作原理
在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式。在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口(如P1口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。
把每个键都分成水平和垂直的两端接入,比如说扫描码是从垂直的入,那就代表那一行所接收到的扫描码是同一个bit,而读入扫描码的则是水平,扫描的动作是先输入扫描码,再去读取输入的值,经过比对之后就可知道是哪个键被按下。
由於这种按键是机械式的开关,当按键被按下时,键会震动一小段时间才稳定,为了避免让8051误判为多次输入同一按键,
我们必须在侦测到有按键被按下,就Delay一小段时间,使键盘以达稳定状态,再去判读所按下的键,就可以让键盘的输入稳定。图2.3.2为键盘整体框图:
图2.3.2
键盘电路
按键说明:其中,【0—9】为数字键,用于输入相应的密码
【B】号键为取消当前操作
【A】号键为确认
【C】键为修改密码
其它键无功能及定义
2.3.3
LCD显示电路的设计
显示部分在输出设计当中占有重要的位置,考虑到其性价比(长寿命),安全性(无电磁辐射,对人体安全,利于信息保密),节能性(低压微功耗),实用性(在色谱上可以非常准确的复现,不会引起眼睛疲劳)等方面的因素。所以本显示设计采用字符型液晶屏设计,由单片机的P0口控制显示,由P2.0~P2.2控制LCD的控制端口。如下图所示:
图2.3.3
LCD显示电路
2.3.4
电路密码储存部分
引脚号1、2、3:都是地址输入,A0、A1和A2是器件地址输入引脚。
引脚号5:串行地址和数据输入/输出。SDA进行双向串行数据传输。
引脚6:串行时钟输入。SCL同步数据传输,上升沿数据写入,下降沿数据读出。
引脚7:当WP接地时,允许数据正常读写操作;当WP接VCC时,写保护,只读。
图2.3.4
密码存储电路
2.4系统软件设计
2.4.1主程序流程设计图
初始化
修改
开锁
密码正确
Y
原密码相同
Y
出错报警
开锁
输入旧密码
设新密码
返回
N
2.4.1
主程序流程设计图
2.4.2
开锁程序流程图
2.4.2开锁程序流程图
2.4.3键盘程序流程图
键功能程序
键值=0~9?
键值=开锁?
键值=确认?
键值=设置?
返回
密码输入程序
确认程序
设置程序
开锁程序
2.4.3键盘程序流程图
2.5主程序模块
void
main(void)
{
unsigned
char
KEY,NUM;
unsigned
char
i,j;
P1=0xFF;
TMOD=0x11;
TL0=0xB0;
TH0=0x3C;
EA=1;
ET0=1;
TR0=0;
Delay400Ms();
//启动等待,等LCM讲入工作状态
lcd_init();
//LCD初始化
write_1602com(yi);
//日历显示固定符号从第一行第0个位置
之后开始显示
for(i=0;i<16;i++)
{
write_1602dat(name[i]);
//向液晶屏写日历显示的固定符号
部分
}
write_1602com(er);
//时间显示固定符号写入位置,从第2个位
置后开始显示
for(i=0;i<16;i++)
{
write_1602dat(start_line[i]);
//写显示时间固定符号,
两个冒号
}
write_1602com(er+9);
//设置光标位置
write_1602com(0x0f);
//设置光标为闪烁
Delay5Ms();
//延时片刻(可不要)
N=0;//初始化数据输入位数
while(1)
{
if(key_disable==1)
Alam_KeyUnable();
else
ALAM=1;//关报警
KEY=keynum();
if(KEY!=0)
{
if(key_disable==1)
{
second=0;
}
else
{
NUM=coding(KEY);
{
switch(NUM)
{
case(
A
):
;break;
case(
B
):
;break;
case(
C
):
;break;
case(
D
):
ResetPassword();break;
//定义新密码
case(
):
Cancel();break;
//取消当前输入
case
(
#
):
Ensure();
break;
//确认键,
default:
{
//DisplayListChar(0,1,Input);
write_1602com(er);
for(i=0;i<16;i++)
{
write_1602dat(Input[i]);
}
operation=0;
if(N<6)
//当输入的密码少于6位时,接受输入并保存,大于6
位时则无效。
{
OneAlam();//按键提示音
//DisplayOneChar(6+N,1,*
);
for(j=0;j<=N;j++)
{
write_1602com(er+6+j);
write_1602dat(
);
}
InputData[N]=NUM;
N++;
}
else
//输入数据位数大于6后,忽略输入
{
N=6;
break;
}}}}}}}}
2.6仿真调试
图2.6.1
输入密码
图2.6.2
正在输入
图2.6.3
输入正确
图2.6.4输入错误
图2.6.5重新设密码
图2.6.6仿真总电路图
2.7实物展示
图2.7.1输入密码
图2.7.2正在输入
图2.7.3输入正确
图2,7,4输入错误
图2.7.5重新设密码
图2.7.6实物总电路图
2.8操作说明
1、开锁:插上电源后,输入密码锁的初始密码:000000,然后按【A】(确认)键,此时锁会打开,可以看到显示open,密码锁打开。
2、退出并关锁:按下【B】(取消)键,此时锁关闭,所有输入清除。
3、修改密码:在开锁状态下,再次输入正确的密码并按下【A】(确认)键,此时听到两声提示,输入新的六位密码并按【C】(重设)键,再重复输入一次新密码并按【C】,会听到两声提示音,表示重设密码成功,内部保存新密码并存储到AT24C02。(如两次输入的新密码不一样,则重设密码失败)。
4、报警并锁定键盘:当输入密码错误后,报警并锁定键盘3秒,如3秒内又有按键,3秒再启动。
5、输入“131420”可以对密码进行重置,按步骤3输新密码保存于AT24C02存储器里。
3.实习总结(收获)与体会
工程实习是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节。单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。
通过这次工程实习使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,对单片机汇编语言掌握得不好,通过这次工程实习之后,一定把以前所学过的知识重新温故。还有这次最大的收获就是一定要看清楚之后再动手做,我在仿真和实际电路的调试当中,因为把端口搞错了,是得仿真能通过但在实际电路中又显示不出来,这点给我感触很深。
4.结束语(致谢)
这次工程实习终于顺利完成了,在电子密码锁的设计过程中遇到很多的问题,不过在张老师耐心地指导下,这些问题终于迎刃而解,非常感谢张老师!
5.实习报告英文摘要
Abstract
In
the
day-to-day
living
and
working
in
the
residential
sector
and
the
safety
precautions,units
of
paper
files,financial
statements,and
some
personal
information
to
the
preservation
of
more
than
locking
the
solution
to
the
problem.
If
the
use
of
traditional
mechanical
key
to
unlock,people
often
need
to
carry
more
keys,a
very
inconvenient
to
use,and
after
the
loss
of
key
security
that
is
greatly
reduced.
With
anti-theft
alarm
function
instead
of
the
password
is
less
electronic
lock,security,poor
mechanical
lock
is
an
inevitable
trend。
With
the
continuous
development
of
science
and
technology,in
the
daily
lives
of
people
on
insurance
safety
devices
increasingly
demanding.
To
meet
the
requirements
of
the
use
of
locks
to
increase
their
security,with
a
password
instead
of
the
password
key
lock
came
into
being.
Password
lock
is
safe,low
cost,low
power
consumption,easy
to
operate,Remember
the
password
to
unlock
it
,
and
other
advantages.
At
present
the
use
of
electronic
locks
are
mostly
based
on
microprocessor,main
devices
MCU,the
encoder
and
decoder
built
into
software.
SCM
system
from
the
system(Mainly
AT89S51
microcontroller
minimum
system),4×4
Matrix
keyboard,LCD
display
and
alarm
system,With
the
settings,modify
the
six
user
password,Ultra
alarm,Ultra
Lock,Password
error
alarm
and
other
functions(P0
port
to
control
the
design
of
the
LCD
display,Password
correctly
display
password
ok!Password
error
display
password
error!
For
more
than
three
times
to
enter
the
error
automatically
lock.
The
P1
port
control
keyboard
matrix
containing
the
number
keys
0-9
and
A-F
function
keys).
In
addition
to
the
above
basic
password
lock
feature,based
on
the
actual
situation
can
also
add
a
remote
control
functions.
The
system
cost-effective,practical
function.
The
system
cost-effective,practical
function
Key
words
AT89S51
LCD1602
Electronic
lock
4×4
keyboard
实
习
报
告
评
语
实习单位评语:
负责人签名:*年*月*日
指导教师意见:
指导教师签名*年*月*日
实习成绩(按五级记分制评定):
负责人签名*年*月*日