单片机电子密码锁课程设计论文.pdf_第1页
单片机电子密码锁课程设计论文.pdf_第2页
单片机电子密码锁课程设计论文.pdf_第3页
单片机电子密码锁课程设计论文.pdf_第4页
单片机电子密码锁课程设计论文.pdf_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 中文摘要 摘要:在日常的生活和工作中, 住宅与部门的安全防范、单位的文 件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。若使 用传统的机械式钥匙开锁, 人们常需携带多把钥匙, 使用极不方便, 且钥 匙丢失后安全性即大打折扣。随着科学技术的不断发展,人们对日常生活 中的安全保险器件的要求越来越高。为满足人们对锁的使用要求,增加其 安全性,用密码代替钥匙的密码锁应运而生。密码锁具有安全性高、成本 低、功耗低、易操作等优点。 在安全技术防范领域, 具有防盗报警功能的电子密码锁逐渐代替传统 的机械式密码锁,克服了机械式密码锁密码量少、安全性能差的缺点,使 密码锁无论在技术上还是在性能上都大大提高一步。 随着大规模集成电路 技术的发展,特别是单片机的问世,出现了带微处理器的智能密码锁,它 除具有电子密码锁的功能外, 还引入了智能化管理、 专家分析系统等功能, 从而使密码锁具有很高的安全性、可靠性,应用日益广泛。 随着人们对安全的重视和科技的发展,许多电子智能锁(指纹识别、 IC 卡辨认)已在国内外相继面世。但是这些产品的特点是针对特定的指 纹和有效卡,只能适用于保密要求的箱、柜、门等。而且指纹识识别器若 在公共场所使用存在容易机械损坏,IC 卡还存在容易丢失、损坏等特点。 加上其成本较高,一定程度上限制了这类产品的普及和推广。鉴于目前的 技术水平与市场的接收程度,电子密码锁是这类电子防盗产品的主流。 基于以上思路,本次设计使用 ATMEL 公司的 AT89C51 实现一基于单 片机的电子密码锁的设计,其主要具有如下功能: (1)密码通过键盘输入,若密码正确,则将锁打开。 2 (2)报警、锁定键盘功能。密码输入错误数码显示器会出现错误提 示,若密码输入错误次数超过 3 次,蜂鸣器报警并且锁定键盘。 电子密码锁的设计主要由三部分组成:44 矩阵键盘接口电路、密 码锁的控制电路、输出八段显示电路。另外系统还有 LED 提示灯,报警 蜂鸣器等。 密码锁设计的关键问题是实现密码的输入、 清除、 更改、 开锁等功能: (1)密码输入功能:按下一个数字键,一个“”就显示在最右边 的数码管上,同时将先前输入的所有“”向左移动一位。 (2)密码清除功能:当按下清除键时,清除前面输入的所有值,并 清除所有显示。 (3)开锁功能:当按下开锁键,系统将输入与密码进行检查核对, 如果正确锁打开,否则不打开。 主要的设计实施过程:首先,选用 ATMEL 公司的单片机 AT89C51, 以及选购其他电子元器件。第二步,使用 DXP 2004 设计硬件电路原理图, 并设计 PCB 图完成人工布线(后因 PCB 板损坏决定采用万能板焊接的方 法) 。第三步,使用 Keil uVision3 软件编写单片机的 C 语言程序、仿 真、软件调试。第四部,使用 PROTEUS 软件进行模拟软、硬件调试。最 后,联合软、硬件调试电路板,完成本次毕业设计。 关键词:44 矩阵键盘;AT89C51;密码锁;密码二次确认 3 目录 中文摘要 .1 目录.3 第 1 章概 述 .1 第 2 章 系统总体方案设计 2 第 3 章硬件电路设计 .5 3.1 键盘电路设计 .5 3.2LED 显示电路. 6 3.3 开锁电路 .8 3.4 报警电路. 9 第四章 软件设计 .11 4.1 软件设计思路. 11 4.2 各子程序设计. 11 第 5 章 系统调试 .17 第 6 章 心得体会 18 第 7 章 参考文献. 19 附录 .20 源程序清单 .20 硬件原理图 .27 1 第 1 章概 述 随着科技的发展,单片机已不是一个陌生的名词,它的出现是近代计 算机技术发展史上的一个重要里程碑, 因为单片机的诞生标志着计算机正 式形成了通用计算机系统和嵌入式计算机系统两大分支。 单片机单芯片的 微小体积和低的成本,可广泛地嵌入到如玩具、家用电器、机器人、仪器 仪表、汽车电子系统、工业控制单元、办公自动化设备、金融电子系统、 舰船、个人信息终端及通讯产品中,成为现代电子系统中最重要的智能化 工具。 本文所涉及的是市场占有率最高的是 MCS51 系列, 因为世界上很多 知名的 IC 生产厂家都生产 51 兼容的芯片。到目前为止,MCS51 单片机 已有数百个品种,还在不断推出功能更强的新产品。 本设计是基于单片机的密码锁设计方案,根据要求,给出了该单片机 密码锁的硬件电路和软件程序, 同时给出了单片机型号的选择、 硬件设计、 软件流程图、 单片机存储单元的分配、 汇编语言源程序及详细注释等内容。 2 第 2 章 系统总体方案设计 方案一:采用数字电路控制。其原理方框图如图 11 所示。 图 21 数字密码锁电路方案 采用数字密码锁电路的好处就是设计简单。用以 74LS112 双 JK 触发 器构成的数字逻辑电路作为密码锁的核心控制,共设了 9 个用户输入键, 其中只有 4 个是有效的密码按键,其它的都是干扰按键,若按下干扰键, 键盘输入电路自动清零,原先输入的密码无效,需要重新输入;如果用户 输入密码的时间超过 40 秒(一般情况下,用户不会超过 40 秒,若用户觉 得不便,还可以修改)电路将报警 80 秒,若电路连续报警三次,电路将 锁定键盘 5 分钟,防止他人的非法操作。 3 电路由两大部分组成:密码锁电路和备用电源(UPS),其中设置 UPS 电源是为了防止因为停电造成的密码锁电路失效,使用户免遭麻烦。 密码锁电路包含:键盘输入、密码修改、密码检测、开锁电路、执行 电路、报警电路、键盘输入次数锁定电路。 方案二:采用一种是用以 AT89S51 为核心的单片机控制方案。利用单 片机灵活的编程设计和丰富的 IO 端口,及其控制的准确性,不但能实现 基本的密码锁功能, 还能添加调电存储、 声光提示甚至添加遥控控制功能。 其原理如图 12 所示。 图 22 单片机控制方案 通过比较以上两种方案,单片机方案有较大的活动空间,不但能实现 所要求的功能而且能在很大的程度上扩展功能, 而且还可以方便的对系统 进行升级,所以我们采用后一种方案。 本方案采用一种是用以 89S51 为核心的单片机控制方案。 利用单片机 灵活的编程设计和丰富的 I/O 端口,及其控制的准确性,实现基本的密码 锁功能。 开锁控制电路开锁控制电路 89S51 单片机单片机 AT24C02 掉电存储掉电存储 串口显示电路串口显示电路 矩阵矩阵 键盘键盘 控制控制 指示电路指示电路 输入错误锁定键盘输入错误锁定键盘 延时报警控制电路延时报警控制电路 4 初步设计思路如下: 输入密码用矩形键盘,包括数字键和功能键。 LED 数码管显示输入密码,用 74JS247 驱动数码管发光显示数码,用 74LS138 控制各位显示器分时进行显示。 用发光二极管代替开锁的电路,发光表示开锁。 输入密码错误次数超过 3 次,系统报警。 打开电源后,显示器显示“000000” ,设原始密码为“123456” ,只要 输入此密码便了开门。这样可预防停电后再来电时无密码可用。 按“C”键,清除显示器为“000000” 。 欲重新设定密码,先输入密码在案“*” 。 输入密码,再按“D”键。若密码与设定密码相同,则开门。否则显 示器清为“000000” 。 软件的设计主要包括键盘键值的读取,LED 显示程序,密码比较程序 和报警程序。 5 第 3 章硬件电路设计 3.1 键盘电路设计 使用矩阵键盘,所以本设计就采用行列式键盘,同时也能减少键盘与 单片机接口时所占用的 I/O 线的数目,在按键比较多的时候,通常采用这 样方法。其原理如图 3.1 。 图 3.1 矩阵键盘 每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一 个按键来连通,利用这种行列式矩阵结构只需要 N 条行线和 M 条列线,即 可组成具有 NM 个按键的键盘。 6 在这种行列式矩阵键盘非键盘编码的单片机系统中, 键盘处理程序首 先执行等待按键并确认有无按键按下的程序段。 当确认有按键按下后,下一步就要识别哪一个按键按下。对键的识别 通常有两种方法:一种是常用的逐行扫描查询法;另一种是速度较快的线 反转法。 对照图 3.1 所示的 44 键盘,说明线反转个工作原理。 首先辨别键盘中有无键按下,有单片机 I/O 口向键盘送全扫描字,然 后读入行线状态来判断。方法是:向行线输出全扫描字 00H,把全部列线 置为低电平,然后将列线的电平状态读入累加器 A 中。如果有按键按下, 总会有一根行线电平被拉至低电平从而使行线不全为 1。 判断键盘中哪一个键被按下使通过将列线逐列置低电平后, 检查行输 入状态来实现的。方法是:依次给列线送低电平,然后查所有行线状态, 如果全为 1,则所按下的键不在此列;如果不全为 1,则所按下的键必在 此列,而且是在与零电平行线相交的交点上的那个键。 具体的功能设计如表 3.1: 表 3.1 按键功能 按 键键 名功 能 说 明 19 键数 字 键输 入 密 码 * 键重 设 密 码 键设 定 新 密 码 D 键确 定 键比 较 密 码 # 键清 除 键使 显 示 器 清 零 3.2LED 显示电路 本系统设计的显示电路是为了给使用者以提示而设置的。 本系统的显 示采用串行显示的方式,只使用单片机的一个串行口,利用 74LS247 驱动 数码管发光显示数码和 74LS138 控制位选信号, 就可以完成单片机的显示 7 功能,显示电路的电路原理图如图 3.2 所示。 用 P0.0P0.3 接 74LS247 的 A,B,C,D 四端口,74LS247 的输出口 接 LED 的七段显示;而 P0.4P0.6 接 74LS138 的 A,B,C 三个输入口, 74LS138 的输出口接 LED 的位显示。通过软件实现数字和位控制。 图 3.2 LED 显示电路 用 74LS247 可以控制输出什么字型。74LS247 的逻辑功能表如表 3.2: 表 3.2 74LS247 的逻辑功能表 8 用 74LS138 控制位循环显示,其逻辑功能表如表 3.3: 表 3.3 74LS138 逻辑功能表 CBAY1Y2Y0Y3Y4Y5Y6Y7 0000111111 00110111111 01011011111 01111101111 10011110111 10111111011 11011111101 + 3.3 开锁电路 在本次设计中, 基于节省材料的原则, 暂时用发光二极管代替电磁锁, 发光管亮,表示开锁;灭,表示没有开锁。电路图如 3.3 所示。当 P2.0 口输出低电平时,二极管发光,表示开锁。 9 图 3.3 开锁电路 3.4 报警电路 图 3.4 报警电路 报警模块由蜂鸣器和单片机组成。选择一只压电式蜂鸣器,压电式蜂 10 鸣器工作时约需要 100mA 驱动电流。蜂鸣器电路如图 3.4 所示。当 89C51 的 P2.1 口输出为低电平时,蜂鸣器产生蜂鸣音,89C51 输出为高电平时, 蜂鸣器不发声。 11 第四章 软件设计 4.1 软件设计思路 电子密码锁工作的主要过程是 LED 数码管提示开始输入密码, 通过键 盘输入密码,同时 LED 显示密码输入情况,按下确认键后判断密码的正确 性,作出开锁或报警处理。当输入密码连续输入错误 3 次时,系统报警。 密码的设定,在此程序中密码是固定 40H45H 中,假设预设的密码 为123456共 6 位密码。 由于采用两个按键来完成密码的输入,那么其中一个按键为功能键, 另一个按键为数字键。在输入过程中,首先输入密码的长度,接着根据密 码的长度输入密码的位数,直到所有长度的密码都已经输入完毕;或者输 入确认功能键之后,才能完成密码的输入过程。进入密码的判断比较处理 状态并给出相应的处理过程。 4.2 各子程序设计 1 键盘扫描子程序 键盘扫描流程图如图 4.2.1 12 图 4.2.1 键盘扫描流程图 键盘扫描子程序如下: L2:MOV R3,#0F7H MOV R1,#00H L3:MOV A,R3 MOV P1,A MOV A,P1 MOV R4,A SETB C 13 MOV R5,#04H L4:RLC A JNC KEYIN INC R1 DJNZ R5,L4 CALL DISP MOV A,R3 SETB C RRC A MOV R3,A JC L3 JMP L2 2 LED 显示子程序 LED 显示流程图如图 4.2.2 图 4.2.2 LED 显示流程图 14 LED 显示子程序如下: DISP:MOV R0,#45H DISP1: MOV A,R0 ADD A,#50H MOV P0,A CALL DELAY DEC R0 MOV A,R0 ADD A,#40H MOV P0,A CALL DELAY DEC R0 MOV A,R0 ADD A,#30H MOV P0,A CALL DELAY DEC R0 MOV A,R0 ADD A,#20H MOV P0,A CALL DELAY DEC R0 MOV A,R0 ADD A,#10H 15 MOV P0,A CALL DELAY DEC R0 MOV A,R0 ADD A,#00H MOV P0,A CALL DELAY RET 3 密码比较和报警程序 密码比较和报警流程图如 4.2.3 图 4.2.3 密码比较和报警流程 16 密码比较和报警程序: COMP:MOV R1,#45H MOV R0,#35H MOV R2,#06H C1:MOV A,R1 XRL A,R0 JNZ C3 DEC R1 DEC R0 DJNZ R2,C1 CLR P2.0 MOV R2,#200 C2:MOV R6,#248 DJNZ R6,$ DJNZ R2,C2 C3:INC R5 MOV A,R5 MOV R5,A CJNER5 ,#03H,C4 CLRP2.1 MOV R5,#00H C4:JMP START 17 第 5 章 系统调试 本次调试采用 Protues 软件仿真。首先设计电子密码锁的源程序,源 程序经过汇编后,生成的目标文件经过仿真调试。 依次按下 1,2,3,4,5,6 后,LED 显示如图 5.1 图 5.1 LED 显示 按下确定键后,二极管亮,表示密码正确开门。如图 5.2 图 5.2 密码正确开门 18 第 6 章 心得体会 课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际 问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考 察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用 中空前活跃的领域,在生活中可以说得是无处不在。因此作为二十一世 纪的大学来说掌握单片机的开发技术是十分重要的。 回顾起此次单片机课程设计,至今我仍感慨颇多,的确,从选题到定 稿,从理论到实践,在整整两星期的日子里,可以说得是苦多于甜,但是 可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而 且学到了很多在书本上所没有学到过的知识。 通过这次课程设计使我懂得 了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所 学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服 务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇 到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各 样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的 知识理解得不够深刻,掌握得不够牢固,对单片机汇编语言掌握得不好, 通过这次课程设计之后,一定把以前所学过的知识重新温故。 这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,在同 学的帮助下,终于游逆而解。非常感谢! 19 第 7 章 参考文献 1单片机原理及及应用王迎旭编机械工业出版社2001 2单片机应用程序设计技术 周航慈 著北京航空航天大学出 版社 3 黄志君,高峰,王建.轮胎压力监测系统J.广西工学院学 报.2006(4):912. 4 单春贤, 韩钧等. 一种集成度较高的轮胎压力监测系统设计J. 拖拉机与农用运输车,2006(6):3338. 5张洪润 单片机应用技术教程北京:清华大学出版社,1997 6沙占友 A Study of the Control System with Intelligent Temperature Sensors.ICEMI 第四届国际电子测量学术会议论文集,电子 测量与一起学报.第 13 卷,1998(8) ,ISTP 收录 7 The Intel Microprocessors Architecture,Programming,and Interfacing .高等教育出版社(影印版),2001 20-081201-05-01 8 JONATHAN D. NASH, DOUGLAS R. CALDWELL, MICHAEL J. ZELMAN, AND JAMES N. MOUMA Thermocouple Probe for High-Speed Temperature Measurement in the Ocean. Manuscript received 18 August 1997, in final form 9 November 1998:1447-1449. 9OMEGA Engineering Technical Reference.Thermocouple Home Page 10 Using Thermocouple SensorsCryogenic Control Systems, Inc. 20 附录 源程序清单 ORG 00H MOV R5,#00H MOV R7,#00H DJNZ R7,$ MOV R7,#10H MOV R6,#06H MOV R1,#35H L1:MOV A,R7 MOV DPTR,#TABLE MOVC A,A+DPTR MOV R1,A DEC R1 INC R7 DJNZ R6,L1 START: ORL P2,#0FFH MOV R4,#06H MOV R0,#40H CLEAR: MOV R0,#00H INC R0 DJNZ R4,CLEAR L2:MOV R3,#0F7H 21 MOV R1,#00H L3:MOV A,R3 MOV P1,A MOV A,P1 MOV R4,A SETB C MOV R5,#04H L4:RLC A JNC KEYIN INC R1 DJNZ R5,L4 CALL DISP MOV A,R3 SETB C RRC A MOV R3,A JC L3 JMP L2 KEYIN: MOV A,R1 XRL A,#0BH JZ X3 MOV A,R1 XRL A,#0FH JZ X4 22 MOV R7,#10 D1:MOV R6,#24 DJNZ R6,$ DJNZ R7,D1 D2:MOV A,P1 XRL A,R4 JZD2 MOV A,R1 MOV DPTR,#TABLE MOVC A,A+DPTR MOV R7,A XRL A,#0AH JZ SET0 MOV A,R7 XRL A,#0BH JZ START MOV A,R7 XRL A,#0CH JZ L2 MOV A,R7 XRL A,#0DH JZ L2 MOV A,R7 XCH A,40H 23 XCH A,41H XCH A,42H XCH A,43H XCH A,44H XCH A,45H CALL DISP JMP L2 X3:JMP DISP2 X4:JMP COMP DI

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论