课程设计电子密码锁1.docx

上传人:b****5 文档编号:6813177 上传时间:2023-01-10 格式:DOCX 页数:18 大小:356.37KB
下载 相关 举报
课程设计电子密码锁1.docx_第1页
第1页 / 共18页
课程设计电子密码锁1.docx_第2页
第2页 / 共18页
课程设计电子密码锁1.docx_第3页
第3页 / 共18页
课程设计电子密码锁1.docx_第4页
第4页 / 共18页
课程设计电子密码锁1.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

课程设计电子密码锁1.docx

《课程设计电子密码锁1.docx》由会员分享,可在线阅读,更多相关《课程设计电子密码锁1.docx(18页珍藏版)》请在冰豆网上搜索。

课程设计电子密码锁1.docx

课程设计电子密码锁1

××大学××学院××课程设计

 

电子密码锁

学生姓名

学号

所在系

专业名称

班级

指导教师

成绩

××大学××学院

二○一二年六月

 

摘要:

在日常的生活和工作中,住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。

若使用传统的机械式钥匙开锁,人们常需携带多把钥匙,使用极不方便,且钥匙丢失后安全性即大打折扣。

随着科学技术的不断发展,人们对日常生活中的安全保险器件的要求越来越高。

为满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生。

密码锁具有安全性高、成本低、功耗低、易操作等优点。

随着人们对安全的重视和科技的发展,许多电子智能锁(指纹识别、IC卡辨认)已在国内外相继面世。

但是这些产品的特点是针对特定的指纹和有效卡,只能适用于保密要求的箱、柜、门等。

而且指纹识识别器若在公共场所使用存在容易机械损坏,IC卡还存在容易丢失、损坏等特点。

加上其成本较高,一定程度上限制了这类产品的普及和推广。

鉴于目前的技术水平与市场的接收程度,电子密码锁是这类电子防盗产品的主流。

关键字:

4×4矩阵键盘,STC89S52,密码锁

Abstract:

Thenumericaltyperobstoansweramachineismainlyfromtheinitiativecoder,encoderandflip-latchetc,numericalchipandpartimitatesparepartcomposingofakindofelectronproduct.Accountthemachineincentmainlyfromthemultivibrator,singlesteadystateelectriccircuit,singlepulsetenentertomakecangoagainstthecounter,decodingsparepartconstituteofelectronproduct.Robbingtoansweramachineshouldhavealocktosaveandshowthefunctionofcontestantnumber.Themachinewhichaccountsacentshouldhavetopreparetoplacenumberandcarryouttheimportationfunctionoftheadd,reducingofdifferentscore.Robtoansweramachineismainlyexpandedanelectriccircuitbyamainelectriccircuitandtoconstitute,throughaseriesofprocessworkmodel;Themachinewhichaccountsacentinordertoshowsgetagoalofeachcontestant.

Keywords:

matrix,STC89S52,LEDdigitaltube.

目录

前言……………………………………………………………………………1

1.系统总体设计1

1.1系统结构1

1.2系统组成1

1.3系统可行性分析1

2.硬件电路设计2

2.1单片机STC89S52简介2

2.1.1主要特性2

2.1.2管脚说明2

2.1.3震荡特性4

2.1.4芯片擦除……………………………………………………………………4

2.24×4矩阵键盘5

2.3复位电路5

2.4振荡电路6

2.5数码管6

2.6电动锁7

2.7蜂鸣器7

3.软件程序设计7

3.1软件设计流程图8

3.2显示功能9

3.3键盘扫描10

3.4密码修改10

4.个人总结………………………………………………………………………………10

5.参考文献………………………………………………………………………………11

1.系统总体设计

1.1系统结构

 

 

 

图1系统结构框图

1.2系统组成

如图1所示系统主要由STC89S52单片机,八位数码管、蜂鸣器、4×4矩阵键盘、复位电路等组成。

1.3系统可行性分析

系统工作原理分析:

使用STC89S52单片机、4×4矩阵键盘、LED、蜂鸣器等。

矩阵键盘分别为0、1、2、3、4、5、6、7、8、9、Enter、Change。

系统开始显示“000000”提示输入密码;输入密码时,密码会显示出来,当密码输入完毕按下Enter键时,对输入密码与设定的密码进行比较,若密码正确则LED显示电路显示为“HELLO”提示锁打开;若密码不正确,LED显示电路显示提示“EEEEEE”,若连续3次输入不正确,则发出警报声。

在输入正确密码后,按下修改键时,LED显示电路显示“000000”,输入需要重新设定的密码,输入完成后,按下“Enter”,系统出现“000000”,此时需复位一次

2.硬件电路设计

2.1单片机STC89S52简介

STC89S52是宏晶公司生产的低电压,高性能CMOS8位单片机,片内含4Kbytes的可反复擦写的只读程序存储器(EPROM)和128bytes的随机存取数据序存器(RAM),器件采用宏晶公司的高密度/非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和FLASH存储单元,STC89S52单片机为许多嵌入式控制系统提供了一种灵活行高且价廉的方案。

2.1.1主要特性

· 8031CPU与MCS-51兼容

·4K字节可编程FLASH存储器(寿命:

1000写/擦循环)

·全静态工作:

0Hz-24KHz

·三级程序存储器保密锁定

·128*8位内部RAM

·32条可编程I/O线

·三个16位定时器/计数器

· 6个中断源

·可编程串行通道

·低功耗的闲置和掉电模式

·片内振荡器和时钟电路

2.1.2管脚说明

VCC:

供电电压。

    GND:

接地。

    P0口:

P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P1口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

在FIASH编程时,P0口作为原码输入口,当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口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

    P3口:

P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口也可作为STC89S52的一些特殊功能口,如下表所示:

管脚备选功能:

P3.0RXD(串行输入口)

P3.1TXD(串行输出口)

P3.2/INT0(外部中断0)

P3.3/INT1(外部中断1)

P3.4T0(记时器0外部输入)

P3.5T1(记时器1外部输入)

P3.6/WR(外部数据存储器写选通)

P3.7/RD(外部数据存储器读选通)

P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:

复位输入。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:

当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。

在FLASH编程期间,此引脚用于输入编程脉冲。

在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。

因此它可用作对外部输出的脉冲或用于定时目的。

然而要注意的是:

每当用作外部数据存储器时,将跳过一个ALE脉冲。

如想禁止ALE的输出可在SFR8EH地址上置0。

此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。

另外,该引脚被略微拉高。

如果微处理器在外部执行状态ALE禁止,置位无效。

/PSEN:

外部程序存储器的选通信号。

在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。

但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

    /EA/VPP:

当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。

注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。

在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:

反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:

来自反向振荡器的输出。

2.1.3震荡特性

XTAL1和XTAL2分别为反向放大器的输入和输出。

该反向放大器可以配置为片内振荡器。

石晶振荡和陶瓷振荡均可采用。

如采用外部时钟源驱动器件,XTAL2应不接。

有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。

2.1.4芯片擦除

整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms来完成。

在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。

此外,STC89S52设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。

在闲置模式下,CPU停止工作。

但RAM,定时器,计数器,串口和中断系统仍在工作。

在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。

2.24×4矩阵键盘

如图所示,本系统采用4×4矩阵键盘,按键分为输入数字键:

0、1、2、3、4、5、6、7、8、9;功能键Enter,Change。

矩阵键盘:

图2矩阵键盘

2.3复位电路

图3复位电路

时钟电路工作后,在REST管脚上加两个机器周期的高电平,芯片内部开始进行初始复位(如图3)。

2.4振荡电路

图4震荡电路

本设计晶振选择频率为12MHZ,电容选择30pF如图4。

经计算得单片机工作胡机器周期为:

12×(1÷12M)=1us。

2.5数码管

图5数码管电路

2.6电动锁

图6电子锁

由于电动锁使用P0口驱动要加上上拉电阻如图6。

2.7蜂鸣器

图7蜂鸣器电路

由于蜂鸣器使用需要较大电流,故用ULN2003驱动。

3.软件程序设计

本系统程序部分使用C语言编写,C语言是一种高级程序设计语言,它的优点是简洁明了、可移植性高。

主要完成,开始时数码管显示“000000”。

输入密码后按下确认键,系统会将所输入与系统密码进行比对。

若输入密码正确则显示“HELLO”开锁。

然后可以选择上锁或者修改密码。

开锁后,按下修改密码“Change”键,则可以对系统进行修改密码操作。

在修改密码前要输入正确旧的密码。

正确输入旧密码之后输入新的密码,并按下确定键之后复位一次,则修改成功。

3.1软件设计流程图

 

 

图8软件设计流程图

 

3.2显示功能

本系统使用共阴极数码管显示。

选码由P3口输出高电平有效,选位由P1口输出低电平有效。

显示原理如下:

4位数码管上的管脚

单片机输出管脚

a

11

P3.7

b

7

P3.2

c

4

P3.1

d

2

P3.5

e

1

P3.6

f

10

P3.3

g

5

P3.0

h

3

P3.4

      

 

 

图9数码管管脚

显示方式分别有静态显示与动态显示两种。

在显示提示信息如:

输入密码“000000”,操作通过“HELLO”,操作错误“EEEEEE”,由于8个显示器的段码同名端是连接在一起的,如果选码的管脚(本系统中为P1)都为0,那么8个显示器则显示同一字符。

要使各个数码管出现不同字符必须采用“分时动态扫描”的方法显示。

即每次点亮一个LED显示器,延时一段时间再点亮下一个LED显示器……周而复始,8个LED显示器轮流动态扫描。

利用人视觉余辉的暂留效应,看起来好像几个显示器上“同时”显示不同的字符。

3.3键盘扫描

如图2,本系统使用4×4矩阵键盘当没有键按下时,行线和列线之间是不相连的,若第N行与第M列的键被按下,那么第N行与第M列的线就被接通。

根据上述原理,本系统的键盘扫描方法是利用P3口的低四位作为行扫描线,P3口的高四位作为列回扫线。

具体实施方法为:

先使P3.0口输出低电平,P2口其他口输出高电平,然后对P3.4、P3.5、P3.6、P3.7四个口分别作判断。

若此四口都为高电平,则没有键按下;若有键按下,P3.4、P3.5、P3.6、P3.7四个口必定有一个口输入为低电平,再判断P3.4、P3.5、P3.6、P3.7哪个口为低电平则可判断按键在哪列上。

如P3.4、P3.5、P3.6、P3.7没有低电平,再使P3.1为低电平,其他口为高电平,依次扫描下去,找到按键所在的行,再判断P3口的高四位哪一位为低,便可知道键在哪一列上。

3.4修改密码

本系统设定的修改密码过程为,在输入正确的密码后,按Change,并输入新密码。

此时键入的六位新密码将保存到数组24c02中。

此时修改密码工作完成,复位后,即可使用新的密码。

4.设计总结

通过这次课程设计,让我复习了很多学过的旧知识,同时也锻炼了自己的动手和查阅资料的能力,尤其是解决在实际中解决排查问题的能力。

在设计中,我学到了如何使用C语言对单片机进行编写程序,熟悉了使用KEILC软件,并且加深了对单片机的编程技巧。

当然最重要的是感谢学院给了我们锻炼自己的机会,还要感谢我系主任××的大力支持,还有指导老师××讲师的细心指导。

正是因为有了大家的关怀才使我们学到了更多的科学文化知识。

 

5.参考文献

[1]当方.微型计算机控制技术[M].中国水利水电出版社:

2001.7.125-133

[2]胡汉才.单片机原理及其借口技术[M].清华大学出版社:

1996.9.82-96

[3]赵新民.智能仪器设计基础[M].哈尔滨工业大学出版社:

2004.1.116-134

[4]潘新,民王,燕芳.微型计算机控制技术[M].电子工业出版社:

1998.9.77-95

[5]李钟实.实用电子报警器精选百例[M].北京:

科技技术文献出版社:

2001.6.98-127

[6]陈爱弟.Protel99se实用培训教程[M].人民邮电出版社:

2003.6.135-152

[7]阎石.数字电子技术基础[M].高等教育出版社:

1997.4.124-147

[8]童诗白.模拟电子技术基础[M].高等教育出版涉:

1997.5.154-172

[9]候振鹏.嵌入式C语言程序设计[M].北京:

人民邮电出版社:

2000.1.122-149

[10]徐士良.C语言程序设计教程[M].北京:

人民邮电出版社:

2004.5.117-134

[11]周立功.增强型80C51单片机速成与实战[M].北京:

航空航天大学出版社:

2003.7.125-147

[12]王辛之.单片机应用系统抗干扰技术[M].北京:

航空航天大学出版社:

1999.12.102-126

[13]黄建科.数字电子技术基础[M].湖南大学出版社:

2004.2.109-132

[14]李光飞.单片机C语言程序设计实例指导[M].北京:

航空航天大学出版社:

2000.1.132-154

[15]李广地.单片机基础[M].北京:

航空航天大学出版社:

2001.7.124-157

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1