ImageVerifierCode 换一换
格式:DOCX , 页数:45 ,大小:381.16KB ,
资源ID:11872471      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11872471.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(彭世平密码锁课程设计说明书618.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

彭世平密码锁课程设计说明书618.docx

1、彭世平密码锁课程设计说明书618 单片机技术课程设计说明书 密码锁 系 、 部: 电气与信息工程学院 学生姓名: 彭世平 指导教师: 王韧 职称 副教授 专 业: 自动化 班 级: 自本1101班 完成时间: 2014年6月 摘 要随着科技的发展以及人们生活水平的大幅度提高,特别是近几年国内经济的发展以及科学技术的不断发展,防盗的要求也是与日俱增,同时对使用的便捷性也提出了更高的要求,传统的锁防盗效果已经满足不了现代社会的防盗需求,还存在着需要随身带着钥匙,如果钥匙不慎丢失被他人利用,就有可能使不良之人乘虚而入等诸多弊端.因此近几年一种新型的电子密码锁应运而生。电子密码锁运用电子电路控制机械部

2、分,使两者紧密结合,从而避免了因为机械部分被破坏而导致开锁功能失常。大大增加了密码锁的防盗功能。电子密码锁具有安全性高、成本低、功耗低、易操作等优点。该电子密码锁系统由单片机最小系统、行列式键盘、LCD12864液晶显示模块、EEPROM掉电保护模块和报警系统组成。系统具有不可修改的超级用户密码和原始用户密码,普通用户可以设置并存储用户密码,密码输入时处于保密显示状态,密码输入错误累计不到3次时报错,密码输入错误累计达到3次时报警,密码输入正确时显示密码输入正确提示信息。除上述基本的密码锁功能外,依据实际的情况还可以添加扩展功能。该系统成本低廉,易操作,功能实用。 关键词:密码锁;单片机;LC

3、D ABSTRACT With the development of science and the great improvement of peoples living standard, especially the development of the domestic economy in recent years as well as the science and technology, but also grow with each passing day security requirements, at the same time, ease of use and also

4、 put forward higher requirements, the traditional lock anti-theft effect has not meet security needs of the modern society, there is need to carry a key, if the key is lost carelessly used by others, it is possible that bad people take advantage of a weak point and other drawbacks. So in recent year

5、s a new electronic password lock emerge as the times require. Electronic cipher lock with electronic circuit to control the mechanical part, make them closely, avoid because of mechanical parts is due to the damage of the lock function disorders. Greatly increases the anti-theft password lock functi

6、on. Electronic cipher lock with high security, low cost, low power consumption, easy operation etc. This design uses AT89S52 to realize the electronic password lock. This system consists of SCM system, matrix keyboard, LCD12864 display, EEPROM power down protection module and alarm system. The syste

7、m can complete the lock,super lock, modify user passwords and other basic password lock function, the system has the electricity does not disappear the super password. In addition to the above basic password lock function, based on the actual situation can also add the extension function. This syste

8、m has the advantages of low cost,practical function.Key words password lock;mcu;lcd1 设计课题任务、功能要求说明及总体方案介绍1.1 设计课题任务课题:密码锁任务:设计一个具有特定功能的密码锁。该密码锁上电或按键复位后能自动显示系统提示界面,进入准备工作状态,能完成开锁、超次锁定、修改用户密码等基本的密码锁的功能。1.2 功能要求说明该密码锁上电或按键复位后能自动显示系统提示符“P”,具有不可修改的超级用户密码000000和系统原始普通用户密码888888。并且可以修改用户密码,修改后的密码在掉电的情况下同样能

9、保存。密码输入正确时回提示正确的信息,否则就会报错。1.3 设计课题总体方案介绍及工作原理说明该系统由AT89S52单片机作为核心控制,选用带字库功能的LCD12864作为界面显示,并采用了有掉电保护功能的EEPROM数据存储器来实现断电后密码不消失,当输入错误密码超过三次时,用蜂鸣器产生报警信号。其系统控制原理框图如图1所示。图1 系统控制原理图2 设计课题硬件系统的设计2.1 设计课题硬件系统各模块功能简要介绍2.1.1 单片机最小系统能让单片机运行起来的最小硬件连接就是单片机的最小系统电路。该部分电路包括电源电路、震荡电路和复位电路。单片机的工作电源接的是+5V的电源,VCC接40引脚,

10、电源地GND接20引脚。因为单片机内部有程序存储器,所以第31引脚应该接高电平。震荡电路用于产生时钟信号,在单片机内部有两个引脚,分别是XTAL1和XTAL2。在这两个引脚上接上12MHz的晶振和两个33pF的电容构成一个自激震荡器。复位电路的功能是使单片机回到初始化状态,51单片机的复位引脚输入是RST引脚,高电平有效。复位方式分为按键复位和上电复位两种。按键复位是人为的给RST输入端一个高电平,只要有10ms的保持时间,就能实现复位。上电2.1.2 行列式键盘输入模块此次设计由于用到的按键较多,为了节省口线空间,采用矩阵键盘的设计思路。共用了16个按键,组成了4行4列的行列式键盘,分别代表

11、数字键“09”、取消功能键“C”、确定功能键“P”、改密功能键“*”、开锁功能键“#”。行列式键盘的扫描方式有三种。分别是程序控制扫描方式,定时扫描方式和中断扫描方式。这里采用程序控制扫描的方式。2.1.3 12864液晶显示模块带字库的液晶12864LCD的分辨率是12864,包含了8192个常用汉字和128个ASC字符集。12864点阵型LCD和单片机的连接有串口连接和并口连接两种。此次设计中采用的是并口连接方式。12864LCD主要由1片行列驱动控制器ST7920、3个列驱动器ST7921和12864点阵显示屏构成。其中ST7920包含中文字型产生CGROM和半宽字型HCGROM、字型产

12、生CGRAM、显示DDRAM、忙标志BF和地址计数器AC。在使用12864LCD点阵屏时,应该注意:要先设置显示字符的位置,然后再输入要显示的内容。当字符是两个字节时,要先写高位字节再写低位字节。模块在接收指令前,必须要查忙,确定是否在非忙状态。 2.1.4 24C02掉电保护模块串行E2PROM是基于I2C-BUS 的存储器件,遵循二线制协议,由于其具有接口方便,体积小,数据掉电不丢失等特点,在仪器仪表及工业自动化控制中得到大量的应用。本设计中使用的24C02存储容量为2K位。2.2 设计课题电路原理图、PCB图、元器件布局图2.2.1 电路原理图PROTEL原理图(见附录A)、CAD原理图

13、(见附录B)2.2.2 电路PCB图 电路顶层PCB图(见附录C)、电路底层PCB图(见附录D)2.2.3 元器件布局图元器件布局图(见附录E)2.3 设计课题元器件清单元器件清单(见附录F)3 设计课题软件系统的设计3.1 设计课题使用单片机资源的情况AT89S52的片外资源:P0、P1、P2:基本输入输出口;P3.0:en(12864液晶);P3.1:rs(12864液晶);P3.2:rw(12864液晶);P3.3:BEEP(蜂鸣器);P3.6:SDA(24C02存储器);P3.7:SCL(24C02存储器);XTAL1、XTAL2:晶振输入; RST:复位输入;AT89S52的片内资源

14、:通用寄存器区;专用寄存器SFR:A、PSW、SP、P0、P1、P2、P3等。3.2 设计课题软件系统各模块功能简要介绍3.2.1 主函数模块主函数用于设置初始化界面,通过调用不同的功能模块,来实现密码锁密锁密码的提示、输入、修改等操作。3.2.2 液晶显示模块12864LCD液晶模块,其数据输入输出引脚(DB0 DB7)接单片机的P0口,使能端(E)接单片机的P3.0引脚,数据/指令(RS)引脚接单片机P3.1口,读写(R/W)引脚接单片机的P3.2口。液晶显示是通过在主程序中调用相关的液晶功能函数来实现各部分内容,从而达到设计的要求。3.2.3 掉电保护模块掉电保护模块的软件实现模块主要是

15、通过主函数调用24C02相关的功能函数来实现掉电的存储。24C02的串行数据线SDA和串行时钟线SCL分别挂在单片机的P3.6,和P3.7引脚上,来实现数据的双向传送。数据保存在24C02里面以后,能保证数据10年内不消失。3.2.4 行列式键盘模块行列式键盘的软件实现是通过在主程序中调用函数keyscan()来达到相应的功能,44的行列式键盘第1到4行分别连接到单片机的P1.0到P1.3口线上,第1到4列分别挂在单片机的P1.4到P1.7口线上。此次设计的键盘扫描是程序控制的扫描方式,当单片机空闲的时候才调用扫描函数,单片机在处理数据的过程中,CPU不在响应键入要求,知道CPU重新扫描键盘开

16、始。3.2.5 基础函数模块通过调用surperlogin(void);userlogin(void);void scanf1();set();void baojing()等函数,实现不同用户身份用户的登录、输入密码、修改密码、报警、开锁等功能。3.3 设计课题软件系统程序流程框图3.3.1 主函数 图2 主函数流程框图3.3.2 液晶显示 图3 液晶显示函数流程框图3.3.3 掉电保护图4 掉电保护模块流程框图3.3.4 行列式键盘图5 键扫函数流程框图3.3.5 基础函数图6 超级用户开锁函数流程框图图7 普通用户开锁函数流程框图 图8 用户修改密码函数流程框图3.4 设计课题软件系统程序

17、清单程序清单见附录G4 设计结论、运行结果、误差分析及体会4.1 设计课题的设计结论及使用说明编写程序后,用keil软件编译调试以后没有错误,也没有警告。下载程序到实验板上操作,密码锁能按照预期的要求正常工作,说明程序已经设计成功。4.2 设计课题的结果把程序下载到单片机里以后,主要实现的功能通过12864液晶显示屏显示,各个部分的功能实现如图所示:图9 初始化界面 图10 开机界面 图11 超级用户登录界面 图12 普通用户登录界面 图13 超级用户登录密码错误界面 图14 用户登录密码错误界面 图15 超级输入密码正确开锁界面 图16 用户输入密码正确开锁界面 图17 用户设置新密码界面

18、图18 设置密码二次确认界面 图19 密码修改不成功界面 图20 密码设置成功界面 4.3 设计课题的误差分析此次密码锁功能的实现有一定的误差。误差来源主要来自以下几个方面。行列式键盘中,由于采取的是程序扫描的控制方式,只有当单片机空闲时进行扫描,实时性有所下降。而且由于单片机在执行延时程序的时候不能做其他的工作,有可能会出现异常情况。利用中断扫描方式的话可以相对减小误差。 对于12864液晶显示:此次设计使用12864的液晶,启动的时候时序变化的要求是通过延时的方法实现的,并没有对液晶进行热启动。在设计中,为了保证单片机发指令时液晶当前为空闲状态,多处用延时的方法等待前一个指令确定执行完成,

19、使得单片机运行效率大打折扣。如果用液晶判忙可以弥补这一缺陷。24C02的误差来源主要是首次上电后读不出24C02里面的状态,所以要首先对24C02初始化,然后把程序下载到实验板上。当初始化完以后,用户去掉初始化语句再下载,进行相关操作。这样我们就知道24C04里面的内容了,并可以对其进行修改。缺点主要在于操作麻烦一些。4.4 设计体会 经过几个星期的努力,单片机的课程设计终于完满完成了,回想起来,感触良多。刚开始学习单片机的时候,王老师就布置了课程设计的任务。王老师强调:带着任务学习是最有效的学习方法之一。那时候不知道课题的难度,打听了一下,知道密码锁比较具有挑战性,于是就选择了这个课题。当时

20、真的什么都不懂,不知道怎样入手。直到王老师给我们讲了课程设计的基本思路与框架的时候,才有点感悟,知道了密码锁是由哪些模块组成。接下来就是怎样学习每个模块了。但那时候连一些基本的编程都还不会,于是便搁置了一段时间。接下来的时间大部分是上课以及实验。在这个过程中,认识了单片机的内部结构,掌握了基本编程的技巧,为以后的课程设计打下了坚实的基础。于是我开始学习密码锁的各个模块,对于液晶模块,我选择了带中文字库的LCD12864,因为它功能强大,编程简单。我当初是找了一些LCD12864的一些中文资料,但发现要掌握它也不是特别容易,于是我就找了一些视频来看。后来接着学习了存储器24c02以及矩阵键盘。通

21、过这次课程设计我发现,不管是学习什么,尤其对于我们工科生来说,实践特别重要。通过实践,能更好的掌握所学的知识。因为在实践的时候能够发现一些平时不会注意到的一些问题,通过解决问题,从而更深的掌握所学的知识。结束语此次课程设计基本上是成功了,达到了基本的要求。但是还有很多值得改进的地方。比如说修改密码的时候,即使是只修改成三位的,也能成功。也就是说,并没有六位的限制,保密性有所下降。但考虑到系统的实现性,还是保留了这样的设计。本次课程设计中,充分的把单片机所学的知识运用起来了。但还有很多内容是单片机课程上没有学的。比如说液晶模块,行列式键盘模块,还有24c02掉电保护模块。这些内容都要通过自学。在

22、整个课程设计中,在文档处理方面还遇到了一点小小的阻碍,就是如何把所画CAD原理图清晰的插入到Word文档中,尝试了很多方法都不能如意。后来才发现可以直接插入CAD模板然后再把图复制到里面,就能得到很清晰的矢量图了。总之,通过这次课程设计,锻炼了自己的动手能力以及独立思考问题的能力,把所学的知识,真正的学以致用。致 谢这次课程设计能够顺利完成,我首先要感谢王韧副教授,在学习单片机的过程中,王老师给了我很多启发,他独特的授课方式以及对学生的严格要求,培养了我自主思考问题的能力。从第一堂课到最后一节课结束,王老师总是充满激情与活力,在这个过程中很大程度的鼓舞了我。同时也让我对单片机的学习产生了兴趣。

23、通过王老师的教导,我的这次的课程设计完成的比较顺利。刚开始做板子的时候,王老师就说,希望我们能遇到问题然后想办法去解决它,这样才能对所学的东西有所掌握。所以,在这次课程设计的整个过程中,遇到问题时我没有放弃,而是积极的去解决。在课程设计的过程之中,同时也得到的学校许多的老师和同学热情的指导和帮助。另外,在实际程序的编写的过程遇到许多困难,周围的同学也给了我细心的解答。在此,我对在我的设计和制作密码锁过程中给予我帮助的每一个人表示由衷的感谢。参考文献1 李广弟.单片机基础M,北京:北京航空航天大学出版社,2007 Li Guangdi. microcontroller based on M, B

24、eijing: Beijing Aerospace University Press, 20072 张洪润.兰清华,单片机应用技术教程M,北京:清华大学出版社,1997.11.Zhang Hongrun ,Lan Qinghua, MCU application technology tutorial M, Beijing: Tsinghua University Press, 1997.11.3 曹巧媛.单片机原理及应用M,北京:电子工业出版社,1997.7.Cao QiaoYuan.Microcontroller Theory and Applications M, Beijing: El

25、ectronic Industry Press, 1997.7.4 康华光.电子技术基础 模拟部分(第五版) M.北京:高等教育出版社,2006kang uh guano. Electronic technology foundation simulation part (fifth edition) M. Beijing: higher education press, 20065 邱光源.电路(第五版) M.北京:高等教育出版社,2006QiuGuangYuan. Circuit (fifth edition) M. Beijing: higher education press, 200

26、66 阎石.数字电子技术基础(第五版) M.北京:高等教育出版社,2006YanShi, digital electronic technology foundation (fifth edition) M. Beijing: higher education press, 2006附 录附录A: PROTEL原理图附录B: CAD原理图附录C: 电路顶层PCB图附录D: 电路底层PCB图附录E: 元器件布局图附录F: 元器件清单表1 元器件清单序号元器件名称规 格数量1瓷片电容33pF23大按键奥姆龙 带方形帽子174存储芯片24C0215ISP下载口17液晶LCD1286418三极管901

27、219蜂鸣器110单片机AT89S52111电阻1K112电阻2K114排阻10K415蓝白电位器50K117六角开关118无源晶振12MHz119单排插针40P220单排插槽40P221单排圆孔插母40P222USB下载线1238P芯片插座8P124单片机锁紧座40P1附录G: 程序清单/*项目名称:密码锁编程作者:彭世平指导老师:王韧完成时间:2014年6月项目功能:密码锁上电或按键复位后能显示初始化界面 具有不可修改的超级密码000000 具有系统原始用户密码888888 用户可以设定并存储用户密码 密码输入时处于保密显示状态 密码输入错误累计不到3次时报错 密码输入错误累计达到3次时报

28、警 密码输入正确时显示密码输入正确提示信息IO说明: PSB接VCC,EN接P30,RW接P31,RS接P32,P33接蜂鸣器 SDA接P36,SCL接P37,液晶P0,行列式键盘P1*/ /*密码锁主函数*/#include #include #define uint unsigned int#define uchar unsigned charsbit BEEP=P33; uchar tab6;uchar buf6;uchar i2c6=0x38,0x38,0x38,0x38,0x38,0x38;/* 函数名称:键扫描函数 */ #include #include #define uint unsigned int#define uchar unsigned charuchar key;/*延时函数*/void delay(uint m) while(-m);/*行列式键盘扫描程序*/uchar keyscan(void) uchar scan,tmp; /列号,行号 P1=0xf0; /发全行0扫描码 if(P1&0xf0)!=0xf0) /若有键按下 delay(1000); / 延时去抖 if(P1&0xf0)!=0xf0) /判键是否还按下 scan=0xfe; while(scan&0x10)!=0) /逐行扫描 P1=scan; /输出行扫描码

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

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