单片机课程设计基于89C51的电子密码锁设计_第1页
单片机课程设计基于89C51的电子密码锁设计_第2页
单片机课程设计基于89C51的电子密码锁设计_第3页
单片机课程设计基于89C51的电子密码锁设计_第4页
单片机课程设计基于89C51的电子密码锁设计_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、 课程设计单片机系统课 程 设 计成绩评定表设计课题 基于89c51的电子密码锁设计 学院名称 : 电气工程学院 专业班级 : 学生姓名 : 学 号 : 指导教师 : 设计地点 : 设计时间 : 指导教师意见:成绩: 签名: 年 月 日单片机系统课 程 设 计课程设计名称: 基于89c51的电子密码锁设计 专 业 班 级 : 学 生 姓 名 : 学 号 : 指 导 教 师 : 课程设计地点: 课程设计时间: 单片机系统 课程设计任务书学生姓名专业班级学号题 目课题性质工程设计课题来源自拟指导教师主要内容(参数)利用89c51设计电子密码锁,实现以下功能:1 使用led显示密码输入的相关信息;2

2、 通过键盘09设置4位数字的密码;3 实现密码的输入、清除、更改、开锁、报警等功能。任务要求(进度)第1-2天:熟悉课程设计任务及要求,查阅技术资料,确定设计方案。第3-4天:按照确定的方案设计单元电路。要求画出单元电路图,元件及元件参数选择要有依据,各单元电路的设计要有详细论述。第5-6天:软件设计,编写程序。第7-8天:实验室调试。第9-10天:撰写课程设计报告。要求内容完整、图表清晰、文理流畅、格式规范、方案合理、设计正确,篇幅不少于6000字。主要参考资料1 王迎旭.单片机原理及及应用,机械工业出版社,20012 周航慈.单片机应用程序设计技术,北京航空航天大学出版社 3 张洪润. 单

3、片机应用技术教程.北京:清华大学出版社,19974 宋彩利.单片机原理与c51接口编程,西安交通大学出版社,2008.61 夏继强,沈德金等.单片机实验与实践教程,北京航天大学出版社,2004年1月出版 审查意见系(教研室)主任签字: 年 月 日 23目录1 概 述42 系统总体方案设计62.1 任务分析62.2 方案设计63 硬件电路设计73.1 键盘电路设计73.2 led显示电路83.3 开锁电路103.4 报警电路104 软件设计114.1 软件设计思路114.1 键盘扫描子程序114.2 led显示子程序134.3 密码比较和报警程序145 系统调试166 总结17参考文献17附 录

4、18附录a 硬件原理图18附录b 源程序清单191 概 述随着科技的发展,单片机已不是一个陌生的名词,它的出现是近代计算机技术发展史上的一个重要里程碑,因为单片机的诞生标志着计算机正式形成了通用计算机系统和嵌入式计算机系统两大分支。单片机单芯片的微小体积和低的成本,可广泛地嵌入到如玩具、家用电器、机器人、仪器仪表、汽车电子系统、工业控制单元、办公自动化设备、金融电子系统、舰船、个人信息终端及通讯产品中,成为现代电子系统中最重要的智能化工具。在日常的生活和工作中, 住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。若使用传统的机械式钥匙开锁,人们常需携带多

5、把钥匙, 使用极不方便, 且钥匙丢失后安全性即大打折扣。随着科学技术的不断发展,人们对日常生活中的安全保险器件的要求越来越高。为满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生。密码锁具有安全性高、成本低、功耗低、易操作等优点。在安全技术防范领域,具有防盗报警功能的电子密码锁逐渐代替传统的机械式密码锁,克服了机械式密码锁密码量少、安全性能差的缺点,使密码锁无论在技术上还是在性能上都大大提高一步。随着大规模集成电路技术的发展,特别是单片机的问世,出现了带微处理器的智能密码锁,它除具有电子密码锁的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码锁具有很高的安全性、可靠

6、性,应用日益广泛。随着人们对安全的重视和科技的发展,许多电子智能锁(指纹识别、ic卡辨认)已在国内外相继面世。但是这些产品的特点是针对特定的指纹和有效卡,只能适用于保密要求的箱、柜、门等。而且指纹识识别器若在公共场所使用存在容易机械损坏,ic卡还存在容易丢失、损坏等特点。加上其成本较高,一定程度上限制了这类产品的普及和推广。鉴于目前的技术水平与市场的接收程度,电子密码锁是这类电子防盗产品的主流。 本文所涉及的是市场占有率最高的是mcs51系列,因为世界上很多知名的ic生产厂家都生产51兼容的芯片。到目前为止,mcs51单片机已有数百个品种,还在不断推出功能更强的新产品。本设计是基于单片机的密码

7、锁设计方案,根据要求,给出了该单片机密码锁的硬件电路和软件程序,同时给出了单片机型号的选择、硬件设计、软件流程图、单片机存储单元的分配、汇编语言源程序及详细注释等内容。基于以上思路,本次设计使用 atmel公司的 at89c51 实现一基于单片机的电子密码锁的设计,其主要具有如下功能:(1)密码通过键盘输入,若密码正确,则将锁打开。 (2)报警、锁定键盘功能。密码输入错误数码显示器会出现错误提示,若密码输入错误次数超过 3 次,蜂鸣器报警并且锁定键盘。 电子密码锁的设计主要由三部分组成:44 矩阵键盘接口电路、密码锁的控制电路、输出八段显示电路。另外系统还有 led 提示灯,报警蜂鸣器等。 密

8、码锁设计的关键问题是实现密码的输入、清除、更改、开锁等功能: (1)密码输入功能:按下一个数字键,一个“”就显示在最右边的数码管上,同时将先前输入的所有“”向左移动一位。 (2)密码清除功能:当按下清除键时,清除前面输入的所有值,并清除所有显示。 (3)开锁功能:当按下开锁键,系统将输入与密码进行检查核对,如果正确锁打开,否则不打开。 主要的设计实施过程:首先,选用 atmel公司的单片机 at89c51,以及选购其他电子元器件。第二步,使用 dxp 2004设计硬件电路原理图,并设计 pcb图完成人工布线(后因 pcb 板损坏决定采用万能板焊接的方法)。第三步,使用 keil uvision

9、3 软件编写单片机的 c 语言程序、仿真、软件调试。第四部,使用 proteus 软件进行模拟软、硬件调试。最后,联合软、硬件调试电路板,完成本次课程设计。 2 系统总体方案设计2.1 任务分析根据设计要求,电子密码锁可以有数字电路控制完成,还可以由采用一种是用以at89s51为核心的单片机控制方案。相比之下,单片机方案有较大的活动空间,不但能实现所要求的功能而且能在很大的程度上扩展功能,而且还可以方便的对系统进行升级,所以我们采用后一种方案。2.2 方案设计采用一种是用以at89c51为核心的单片机控制方案。利用单片机灵活的编程设计和丰富的io端口,及其控制的准确性,不但能实现基本的密码锁功

10、能,还能添加调电存储、声光提示甚至添加遥控控制功能。其原理如图21所示。图2.1 单片机控制方案本方案采用一种是用以89c51为核心的单片机控制方案。利用单片机灵活的编程设计和丰富的i/o端口,及其控制的准确性,实现基本的密码锁功能。初步设计思路如下:输入密码用矩形键盘,包括数字键和功能键。led数码管显示输入密码,用74js247驱动数码管发光显示数码,用74ls138控制各位显示器分时进行显示。用发光二极管代替开锁的电路,发光表示开锁。输入密码错误次数超过3次,系统报警。打开电源后,显示器显示“000000”,设原始密码为“123456”,只要输入此密码便了开门。这样可预防停电后再来电时无

11、密码可用。按“c”键,清除显示器为“000000”。欲重新设定密码,先输入密码在案“*”。输入密码,再按“d”键。若密码与设定密码相同,则开门。否则显示器清为“000000”。软件的设计主要包括键值的读取,led显示程序,密码比较程序和报警程序。3 硬件电路设计3.1 键盘电路设计使用矩阵键盘,所以本设计就采用行列式键盘,同时也能减少键盘与单片机接口时所占用的i/o线的数目,在按键比较多的时候,通常采用这样方法。其原理如图3.1图3.1 矩阵键盘每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要n条行线和m条列线,即可组成具有nm个按键的键盘

12、。在这种行列式矩阵键盘非键盘编码的单片机系统中,键盘处理程序首先执行等待按键并确认有无按键按下的程序段。当确认有按键按下后,下一步就要识别哪一个按键按下。对键的识别通常有两种方法:一种是常用的逐行扫描查询法;另一种是速度较快的线反转法。对照图3.1所示的44键盘,说明线反转个工作原理。首先辨别键盘中有无键按下,有单片机i/o口向键盘送全扫描字,然后读入行线状态来判断。方法是:向行线输出全扫描字00h,把全部列线置为低电平,然后将列线的电平状态读入累加器a中。如果有按键按下,总会有一根行线电平被拉至低电平从而使行线不全为1。判断键盘中哪一个键被按下使通过将列线逐列置低电平后,检查行输入状态来实现

13、的。方法是:依次给列线送低电平,然后查所有行线状态,如果全为1,则所按下的键不在此列;如果不全为1,则所按下的键必在此列,而且是在与零电平行线相交的交点上的那个键。具体的功能设计如表3.1:表3.1 按键功能按 键键 名功 能 说 明19键数 字 键输 入 密 码* 键重 设 密 码 键设 定 新 密 码d键确 定 键比 较 密 码# 键清 除 键使 显 示 器 清 零3.2 led显示电路本系统设计的显示电路是为了给使用者以提示而设置的。本系统的显示采用串行显示的方式,只使用单片机的一个串行口,利用74ls247驱动数码管发光显示数码和74ls138控制位选信号,就可以完成单片机的显示功能,

14、显示电路的电路原理图如图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的逻辑功能表十进制数输入输出字型a3a2a1a0qaqbqcqdqeqfqg0000000000000100011001111120010001001023001100001103401001001100450101

15、010110056011001000006701110001111781000000000089100100001009用74ls138控制位循环显示,其逻辑功能表如表3.3:表3.3 74ls138逻辑功能表cbay1y2y0y3y4y5y6y70000111111001101111110101101111101111101111100111101111011111101111011111101111111111103.3 开锁电路在本次设计中,基于节省材料的原则,暂时用发光二极管代替电磁锁,发光管亮,表示开锁;灭,表示没有开锁。电路图如3.3所示。当p2.0口输出低电平时,二极管发光,表示

16、开锁。图3.3 开锁电路3.4 报警电路报警模块由蜂鸣器和单片机组成。选择一只压电式蜂鸣器,压电式蜂鸣器工作时约需要100ma驱动电流。蜂鸣器电路如图3.4所示。当89c51的p2.1口输出为低电平时,蜂鸣器产生蜂鸣音,89c51输出为高电平时,蜂鸣器不发声。图3.4 报警电路4 软件设计4.1 软件设计思路电子密码锁工作的主要过程是led数码管提示开始输入密码,通过键盘输入密码,同时led显示密码输入情况,按下确认键后判断密码的正确性,作出开锁或报警处理。当输入密码连续输入错误3次时,系统报警。密码的设定,在此程序中密码是固定40h45h中,假设预设的密码为123456共6位密码。由于采用两

17、个按键来完成密码的输入,那么其中一个按键为功能键,另一个按键为数字键。在输入过程中,首先输入密码的长度,接着根据密码的长度输入密码的位数,直到所有长度的密码都已经输入完毕;或者输入确认功能键之后,才能完成密码的输入过程。进入密码的判断比较处理状态并给出相应的处理过程。4.1 键盘扫描子程序键盘扫描流程图如图4.1图4.1 键盘扫描流程图键盘扫描子程序如下:l2: mov r3,#0f7h mov r1,#00hl3: mov a,r3 mov p1,a mov a,p1 mov r4,a setb c mov r5,#04hl4: rlc a jnc keyin inc r1 djnz r5,

18、l4 call disp mov a,r3 setb c rrc a mov r3,a jc l3 jmp l24.2 led显示子程序 led显示流程图如图4.2图4.2 led显示流程图led显示子程序如下:disp:mov r0,#45hdisp1: 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 c

19、all delay dec r0 mov a,r0 add a,#10h mov p0,a call delay dec r0 mov a,r0 add a,#00h mov p0,a call delay ret4.3 密码比较和报警程序密码比较和报警流程图如4.3图4.3 密码比较和报警流程密码比较和报警程序:comp: mov r1,#45h mov r0,#35h mov r2,#06hc1: mov a,r1 xrl a,r0 jnz c3 dec r1 dec r0 djnz r2,c1 clr p2.0 mov r2,#200c2: mov r6,#248 djnz r6,$ d

20、jnz r2,c2c3: inc r5 mov a,r5 mov r5,a cjne r5 ,#03h,c4 clr p2.1 mov r5,#00h c4: jmp start5 系统调试本次调试采用protues软件仿真。首先设计电子密码锁的源程序,源程序经过汇编后,生成的目标文件经过仿真调试。依次按下1,2,3,4,5,6后,led显示如图5.1图5.1 led显示按下确定键后,二极管亮,表示密码正确开门。如图5.2图5.2 密码正确开门6 总结课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技

21、术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。回顾起此次单片机课程设计,至今我仍感慨颇多,从选题到定稿,从理论到实践,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,

22、可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,对单片机汇编语言掌握得不好,通过这次课程设计之后,一定把以前所学过的知识重新温故。这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,在同学的帮助下,终于游逆而解。非常感谢!参考文献5 王迎旭.单片机原理及及应用,机械工业出版社,20016 周航慈.单片机应用程序设计技术,北京航空航天大学出版社 7 张洪润. 单片机应用技术教程.北京:清华大学出版社,19978 宋彩利.单片机原理与c51接口编程,西安交通大学出版社,2008.69 夏

23、继强,沈德金等.单片机实验与实践教程,北京航天大学出版社,2004年1月出版 10 王新颖.单片机原理及应用,北京大学出版社,2008年1月出版11 喻萍,郭文川.单片机原理与接口技术,化学工业出版社,2005年12月附 录附录a 硬件原理图附录b 源程序清单 org 00h mov r5,#00h mov r7,#00h djnz r7,$ mov r7,#10h mov r6,#06h mov r1,#35hl1: mov a,r7 mov dptr,#table movc a,a+dptr mov r1,a dec r1 inc r7 djnz r6,l1start: orl p2,#0

24、ffh mov r4,#06h mov r0,#40hclear: mov r0,#00h inc r0 djnz r4,clearl2: mov r3,#0f7h mov r1,#00hl3: mov a,r3 mov p1,a mov a,p1 mov r4,a setb c mov r5,#04hl4: rlc a jnc keyin inc r1 djnz r5,l4 call disp mov a,r3 setb c rrc a mov r3,a jc l3 jmp l2keyin: mov a,r1 xrl a,#0bh jz x3 mov a,r1 xrl a,#0fh jz x

25、4 mov r7,#10d1: mov r6,#24 djnz r6,$ djnz r7,d1d2: mov a,p1 xrl a,r4 jz d2 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 xch a,41h xch a,42h xch a,43h xch a,44h xch a,45h call disp jmp l2x3: jmp disp2x4: jmp compdisp:mov r0,#45hdisp1: mov a,r0 add a,#50h mov

温馨提示

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

评论

0/150

提交评论