简易电子密码锁课程设计_第1页
简易电子密码锁课程设计_第2页
简易电子密码锁课程设计_第3页
简易电子密码锁课程设计_第4页
简易电子密码锁课程设计_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

1、江西理工大学应用科学学院微机控制系统课程设计报告题目:简易电子密码锁姓名:学号:专业班级:指导教师:完成时间:设计报告综合测试平时总评格式(10分)内容(10分)图表(5分)功能测试(35分)答辩(20分)考勤(20分)指导教师签名:目录TOC o 1-5 h z摘要-1- HYPERLINK l bookmark4 第一章系统概述2 HYPERLINK l bookmark6 第二章基本功能设计-3-实验任务-3-基本设计要求-3-基本要求-3-发挥部分-3- HYPERLINK l bookmark12 主要元件介绍3P89C51芯片3系统框图5 HYPERLINK l bookmark1

2、4 第三章硬件设计5 HYPERLINK l bookmark16 硬件电路的设计5硬件工作接线口5LED显示器结构与原理5复位电路7 HYPERLINK l bookmark18 振荡电路7按键设置8报警器和发光二极管9 HYPERLINK l bookmark20 硬件电路图9 HYPERLINK l bookmark26 第四章软件设计11系统软件设计11密码开锁功能12 HYPERLINK l bookmark28 第五章系统PROTUSE仿真图13 HYPERLINK l bookmark30 第六章设计总结16参考文献17 HYPERLINK l bookmark32 附录18随着

3、人们生活水平的提高,如何实现家庭防盗这一问题也变得尤其的突出,传统的机械锁由于其构造的简单,被撬的事件也屡见不鲜,因此,人们在日常生活中越来越越离不开密码的使用。在人们对安全的重视和科技的发展的同时,许多电子智能锁(指纹识别、IC卡辨认)已相继问世,但这类产品是针对特定指纹或有效卡,只能适用于保密要求高且仅供个别人使用的箱、柜、房间等。另外,卡片式的IC卡易丢失和损坏,加上其成本较高,在一定程度上限制了这类产品的普及和推广。鉴于目前的技术水平和市场的接收程度,电子密码锁是这类电子防盗产品的主流。基于以上思路,本次设计使用PHILIPS公司的P89C51实现一一基于单片机的电子密码锁的设计。关键

4、字:P89C51单片机密码电子锁withtheimprovementofpeoplelivingstandards,howtoachievesecurityofthisfamilyalsochangedparticularlyprominent,thetraditionalmechanicallockbecauseofitssimplestructure,theincidentwasnothingnew.therefore,moreandmorepeopleintheirdailylifeisinseparablefromtheuseofpasswords.aspeopleattachimpo

5、rtancetosecurityandthedevelopmentoftechnology,atthemoment,manyElectronicsmartlock(fingerprint,ICcardidentification)hasbeenpublishedathomeandabroad.Howevertheseproductsarecharacterizedbyspecificandeffectivefingerprintcards,canonlyapplytotheconfidentialityrequirementsofthebox,counter,doors,andsoon.And

6、fingerprintrecognitionknowledgeforuseinpublicplacesifthereeasilydamagedmachinery,Ccardtherearestilleasilylost,damaged,andsoon.Coupledwithitshighcost,tosomeextent,limitedthepopularityofsuchproductsandpromotion.Giventhecurrentleveloftechnologyandthemarketreceptionofelectroniccodelockissuchamainstreame

7、lectronicanti-theftproducts.Basedontheaboveideas,thisdesignusestheP89C51PHILIPSachieveanelectronicpasswordbasedSCMlockdesign.Keywords:P89C51SCMpasswordelectroniclocks第一章系统概述本次设计使用P89C51单片机实现简易电子密码锁的设计,其主要具有如下功能:1.设8置位密码,密码通过键盘输入,此时黄灯亮,若密码正确则绿灯亮。2.密码可以由用户自己修改设定,绿灯亮后后才能修改密码。在输入新密码时候需要确认,以防止误操作。3.报警、锁定

8、键盘功能。密码输入错误红色发光二极管和蜂鸣器会出现错误提示,若密码输入错误次数超过3次,蜂鸣器报警并且锁定键盘。电子密码锁的设计主要由三部分组成:3x4矩阵键盘接口电路、密码锁的控制电路、输出数码显示电路。另外系统还有LED提示灯,报警蜂鸣器等。密码锁设计的关键问题是实现密码的输入、确认、更改等功能:1.密码输入功能:按下数字键,输入密码长度。2.密码确认功能:当按下确认键时,表示密码输入完成。3.密码设置功能:将输入的值作为新的密码。主要的设计实施过程:首先,选用单片机P89C51,以及选购其他电子元器件。第二步,使用DXP2004设计硬件电路原理图,并设计PCB图完成人工布线(后因时间和材

9、料准备不充分,所以没做出实物)。第三步,使用KeiluVision4软件编写单片机的C语言程序、仿真、软件调试。第四部,使用PROTEUS软件进行模拟软、硬件调试。最后,联合软、硬件调试电路板,完成本次设计。第二章基本功能设计2.1实验任务通过对本题目的设计掌握单片机控制系统设计的相关方法与技巧。用P89C51RC2HBP设计一个简单电子密码锁,完成密码的识别功能。基本设计要求基本要求(1)设置(09)十个按键和一个设置/确认按键,当系统正常工作时可通过设置/确认按键修改密码,使用时初始密码为12345678,随后可任意设置密码。(2)当密码输入正确时,用一个发光二极管和蜂鸣器作为指示。当密码

10、输入错误时,则提示密码输入错误。(3)当密码连续输入错误3次后锁定键盘,锁定时间为1分钟。发挥部分不改变硬件电路,增加蜂鸣器音乐输入功能,即编出三种音乐分别对应密码输入正确、输入错误和键盘锁定三种状态。主要元件介绍P89C51芯片P89C51RB2/RC2/RD2具有16K/32K/64K并行可编程的非易失性FLASH程序,存储器并可实现对器件串行在系统编程ISP和在应用中编程(IAP)在系统编程ISP(In-SystemProgramming)。当MCU安装在用户板上时允许用户下载新的代码,在应用中编程IAP(In-ApplicationProgramming),MCU可以在系统中获取新代码

11、并对自己重新编程。这种方法允许通过调制解调器连接进行远程编程片内ROM中,固化的默认的加载程序,BootLoader允许ISP通过UART将程序代码装入Flash存储器而Flash代码中,则不需要加载程序对于IAP用户程序擦除和重编程。FlashMemory的操作是通过使用片内ROM中的标准程序该器件的1个机器周期由6个时钟周期组成因此运行速度是传统80C51的2倍一个OTP配置位可让用户选择传统的12时钟周期该系列单片机是80C51微控制器的派生器件是采用先进CMOS工艺制造的8位微控制器指令系统与80C51完全相同有4组8位I/O口3个16位定时/计数器多个中断源4个中断优先级嵌套中断结构

12、个增强型UART片内振荡器及时序电路新增的特性使得89C51RB2/RC2/RD2成为功能更强大的微控制器更好地支持应用于脉宽调制高速I/O递增/递减计数能力如电机控制等场合。DIP封装及管脚功能T2/P1.01240Vee丁2加01239POGfADOECI/P1.?3兆PIM/ALMC&X0/P1.1437P02/AD25CEX2/P1.5s35P&4fAD4CSLX3/P1.5734P5/A明CEX4/P1.7a33P&6fA36RST332Pt)7fAD7RkD他,经DUALIN-LNEPACKAGE31EA/VppT上0印3|1130入L日PROG【MIQ产3,2:229psnNT尸

13、3.31328P?.7fA15TU/P3.421P207U4TVF3.5臣26P25/A13W7产3一675P2.4CA12RDfP3.7172AP?3fAl1XTAL2aPZ2CAWXTAL1922P21fA921PECl/Ag图2.1P89C51的DIP封装及管脚功能2.42.4系统框图图2.2系统框图第三章硬件设计硬件电路的设计硬件工作接线口P0口接数码管,用来显示按键是否按下,P1口接报警器和发光二极管。P3口接3x4矩阵键盘,分别为(09)和设置/确认按键。LED显示器结构与原理LED显示块是由发光显示二极管显示字段的显示器件。在单片机中我们通常用七段LED,这种显示共有共阴极和共阳

14、极两种,本设计是用共阴极,如图3.1所示。数码管显示图3-1LED数码管显示图3-1LED数码显示部分DpyRk-CC-P7U显示字符共阴极段选码显示字符共阴极段选码03FHA77H106HB7CH25BHC39H34FHD5EH466HE79H56DHF71H67DH707H87FH96FH表3.1LED显示块通常的七段显示块中共有8个发光二极管,其中7个发光二极管构成七笔字形“8”,一个发光二极管构成小数点。七段显示块与单片机接口非常容易。只要将一个8位并行输出与显示块的发光二极管引脚相连即可。8位并行输出口输出不同的字节数据即可获得不同的数字或字符,通常将控制发光二极管的8位字节数据称为

15、段选码。.5按键设置.3复位电路图图3.4按键设置图3.2复位电路图3.2复位电路时钟电路工作后,在REST管脚上加两个机器周期的高电平,芯片内部开始进行初始复位(如图3.2)。振荡电路图3.3振荡电路本设计晶振选择频率为12MHZ,电容选择22pF,如图3.3所示。按键方式有独立式和行列式两种,本设计是采用行列式,共设置12个按键。能减少键盘与单片机接口时所占用的I/O线的数目。如图所示:S1S10分别为09数字按键,S11为设置/确认按键。如图3-4,当没有键按下时,行线和列线之间是不相连的,若第N行与第M列的键被按下,那么第N行与第M列的线就被接通。本系统的键盘扫描方法是利用P3口的低四

16、位作为行扫描线,P3口的高四位作为列回扫线。具体实施方法为:先使P3.0口输出低电平,P3口其他口输出高电平,然后对P3.4、P3.5、P3.6三个口分别作判断。若此三口都为高电平,则没有键按下;若有键按下,P3.4、P3.5、P3.6三个口必定有一个口输入为低电平,再判断P3.4、P3.5、P3.6哪个口为低电平则可判断按键在哪列上。如P3.4、P3.5、P3.6没有低电平,再使P3.1为低电平,其他口为高电平,依次扫描下去,找到按键所在的行,再判断P3口的高四位哪一位为低,便可知道键在哪一列上。.6报警器和发光二极管图图3.6硬件电路Protel图图3.5报警器与发光二极管如果按下设置/确

17、认按键,则黄灯亮。当密码输入正确时,绿灯亮。输入密码错误时,红灯亮且蜂鸣器响。当第三次输入错误时,锁定键盘一分钟。硬件电路图;:印5NkMrTtk-i*-的M的中nH*中承需舞尴身.|/=4山国:n口:F:TZEK)就】立上汪珈三,H::凡二工上大二丸工ncasi-i:3中,上:0JS6M电子密码锁最小系统电路接口与苗蹄图图3.7硬件电路PCB3D图图3.6硬件电路PCB图第四章软件设计本系统程序部分使用C语言编写,C语言是一种高级程序设计语言,它的优点是简洁明了、可移植性高。主要完成,先按下设置/确认键输入密码,系统会将所输入与系统密码进行比对。若输入密码正确则绿灯亮。然后可以任意设置密码。

18、每设置完一次都要按确认键。期间操作出现失误,红灯亮蜂鸣器响,操作错误超过3次,系统会锁定键盘一分钟,并报警用以防止恶意试探密码。4.1系统软件设计4.1系统软件设计序、序、示:本系统软件设计由主程序、初始化程序、数码显示程序、键盘扫描程序、键功能程密码设置程序、EEPROM读写程序和延时程序等组成。主要程序设计流程图如下所图4.1程序设计流程图次数3?开锁程序返回所输入密码正确?NYNY输入次数加1报警程序输入密码按设置键次数3?开锁程序返回所输入密码正确?NYNY输入次数加1报警程序输入密码按设置键确认程序初始化图4.2开锁流程图4.1.1密码开锁功能本系统使用数组PASSW口存储密码,系统

19、初始化对数组赋值PASSW=1,2,3,4,5,6,7,8。输入密码的时候,先将输入的每一位密码分别放置在数组PASST口中,然后再将PASST口与PASSW口的每一位分别对照。若每一位都相等,密码检查通过。图图5.2PROTUES仿真加载HEX文件第五章系统PROTUSE仿真图C-1itrTOE.MI2M-rz-rrKL1LRD1rj.iTyraaAKmviAixi=-取W.UfT”.WEPHA-ClF工序M1+”.7W.右pgimarziaTFfflFUSE图5.1PROTUES仿真图图图5.4密码正确时绿灯亮在下图中,当按下设置/确认键时,黄灯亮,然后输入密码。如密码输入正确,则绿灯亮。

20、如输入错误,红灯亮且蜂鸣器响。当出现三次错误时,同时要锁定键盘一分钟。经调试,所需要的功能都能实现。图5.3按下设置/确认键黄灯亮图图5.6设置新密码时黄灯绿灯同时亮强善善!强善善!riaiMiaPI力徜。1PlJiMlJriifMiiPI4孙PlliAIMPIfl.,ilMpi7砧m稔丫出p?mPiiAioPiA.MIPZ4AI2Pi61.&I3KlArfqP2T.AI&叫jftyfimHIE口PL-i4iHT叫MErjqiDP3niP3MWrTED图5.5当密码错误时红灯亮LIl-fElJLO*aE0,白傲匚51HUZ1P$IE肛2/Wpj.lmTTP5EWTIPSt-fSTT畤I司P2.

21、1隔lPZ.lIDPi3waiFZ3MgRZJEJUOA叱,川1,Mi-X4BricfluiFinHEEQ1工弓R考PP1FlH.iMriiimmFl.7画第六章设计总结通过这次课程设计,掌握了单片机的一些基本知识,并将计算机控制以及所有关知识联系起来,本来有些原理还是懵懂的,但是在找电子密码锁的基本知识时,我发现只有动手做才会掌握一些技巧。通过这次的设计,我们熟悉并熟练掌握了Protel和Protues的技巧;在C语言程序设计中,学到了如何使用C语言对单片机进行编写程序,熟悉了使用KEIL软件,并且加深了对单片机的编程技巧。在做这个设计的过程中,我遇到了不少的问题。这锻炼了我们筛选、查阅资料

22、,并将理论结合到自己的设计中的能力。一步一步的排除故障原因,找到故障的原因并解决故障。这次的设计使我们对模拟电子、数字电子知识加深了了解,尤其是在对电路进行调试以及对C语言程序的编写和调试的时候,出现了很多这些方面的问题,通过对以往知识的复习巩固,将问题解决。在此设计中,学到了很多知识,不仅对于技术有了更深入的学习,而且对于一个项目的完成的工作时序、任务分配也有了一定的了解。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。这次课程设计终于顺利完

23、成了,在设计中遇到了些问题,最后在老师和各位同学的辛勤指导下终于解决了。我们学得到很多实用的知识,在此表示感谢!同时,对给过我们帮助的所有同学和指导老师再次表示忠心的感谢!1当方.微型计算机控制技术M中国水利水电出版社,2001年2胡汉才.单片机原理及其借口技术M.清华大学出版社,1996年3赵新民.智能仪器设计基础M.哈尔滨工业大学出版社,1999年4潘新,民王,燕芳.微型计算机控制技术M.电子工业出版社,2003年5李钟实.实用电子报警器精选百例M.北京:科技技术文献出版社,2002年6陈爱弟.Protel99se实用培训教程M.人民邮电出版社,2000年。7阎石.数字电子技术基础M.高等

24、教育出版社,1998年8童诗白.模拟电子技术基础M.高等教育出版涉,1998年附录1.源程序#include#defineucharunsignedchar#defineuintunsignedintuchari,j,num,temp,wrong;ucharpassw=1,2,3,4,5,6,7,8;ucharpasst=0,0,0,0,0,0,0,0;ucharcodetable=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x77,0 x7c,0 x39,0 x5e,0 x79,0 x71,0 x76,0 x79

25、,0 x38,0 x3f,0;bitlockflag;biteditflag;bitcmpflag;bitpressflag;sbitalarm=P1A3;sbitrled=P1A0;sbitgled=P1A1;sbityled=P1A2;uintt0,a;ucharright;voiddelay(uintz)uintx,y;for(x=z;x0;x-)for(y=110;y0;y-);voidlock()TMOD=0 x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;ET0=1;EA=1;TR0=1;while(1)if(t00;a-)rled=

26、rled;delay(1000);elsealarm=0;rled=1;TR0=0;t0=0;break;voidtimer0()interrupt1TH0=(65536-50000)/256;TL0=(65536-50000)%256;t0+;ucharkeyscan()P3=0 xfe;temp=P3;temp=P3&0 xf0;while(temp!=0 xf0)delay(50);if(temp!=0 xf0)temp=P3;switch(temp)/11101110/11011110/11101110/11011110/10101110/01111110case0 xde:num=1;pressflag=1;break;case0 xbe:num=2;pressflag=1;break;case0 x7e:num=3;pressflag=1;break;while(temp!=0 xf0)temp=P3;temp=temp&0 xf0;P3=0 xfd;temp=P3;temp=P3&0 xf0;while(temp!=0 xf0)delay(50);if(temp!=0 xf0)temp=P3;switch(t

温馨提示

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

评论

0/150

提交评论