欢迎来到天天文库
浏览记录
ID:282958
大小:502.50 KB
页数:18页
时间:2017-07-18
《单片机原理及系统课程设计报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、单片机原理及系统课程设计评语:平时(40)修改(30)报告(30)总成绩-17-1引言电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的。其性能和安全性已大大超过了机械锁。其在生活的各个方面均有应用,前景十分广阔。其特点如下:(1)保密性好,编码量多,远远大于弹子锁。随机开锁成功率几乎为零;(2)密码可变,用户可以随时更改密码,防止密
2、码被盗,同时也可以避免因人员的更替而使锁的密级下降;(3)误码输入保护,当输入密码多次错误时,报警系统自动启动;(4)无活动零件,不会磨损,寿命长;(5)使用灵活性好,不像机械锁必须佩带钥匙才能开锁。2设计方案及原理2.1本设计所要实现的目标设计一种单片机控制的密码锁,具有按键有效指示、解码有效指示、控制开锁电平、控制报警、密码修改等功能。8位十进制密码共一亿组不重复,保密性强。该密码锁要实现一下功能:(1)锁的初始状态为“锁合”指示灯亮。输入初始密码“0、1、2、3、4、5、6、7”,每输入一位,“按键有
3、效”指示灯亮约半秒钟,输完8位按确认键,锁打开,“锁开”指示灯亮;(2)按“上锁”键,锁又重新上锁,“锁合”指示灯亮;(3)“锁开”状态下,可输入新密码,可重复修改密码;(4)如果输入密码错误,“错误指示”灯亮约半秒钟。可重新输入密码;(5)输入密码错误超过3次,蜂鸣器启动发出报警,同时“错误”指示灯常亮。2.2设计思路对于电子密码锁的设计,需要解决几个问题:键盘输入、数码管显示、单片机电路、密码比较、修改密码等。其中最主要的就是解决掉电保存以及修改密码的问题。先写一个循环写入8个初始密码到芯片内部EEPR
4、OM程序,先下载程序写入初始密码,此时EEPROM已存有初始密码,再把密码锁程序下载到单片机,运行电子密码锁。本设计主要由单片机、矩阵键盘、液晶显示器和密码存储等部分组成。其中-17--17-矩阵键盘用于输入数字密码和进行各种功能的实现。由用户通过连接单片机的矩阵键盘输入密码,后经过单片机对用户输入的密码与自己保存的密码进行对比,从而判断密码是否正确,然后控制引脚的高低电平传到开锁电路或者报警电路控制开锁还是报警,实际使用的是单片机P1.2和P1.1来控制锁合和锁开LED灯的状态,P0口用于电子显示屏来显示
5、提示语句和密码输入按键。本系统共有两部分构成,即硬件部分与软件部分。3硬件设计硬件部分由键盘输入部分、密码存储部分、复位部分、晶振部分、显示部分、报警部分、开锁部分组成。3.1键盘扫描电路键盘接成4*4的矩阵键盘,行线为LD0-LD3分别接P2口的P0.0-P0.3,列线为HD0-HD3分别接P2口的P0.7-P0.4。当哪一行的有键按下,则相应行的“按键有效”指示灯亮一下,其余行所对应的灯不亮。P2初始时P2口第四位为低电平,高四位为高电平,当哪一行有键按下,则所对应的行和列对应的口变为低电平,将改为扫描
6、到单片机中。键盘扫描电路如图3.1所示。图3.1键盘扫描电路3.2晶振电路80C31引脚XTAL1和XTAL2与晶体振荡器及电容C2/C1按图3.2所示方式连接。晶振、电容C1/C2振荡器,振荡信号频率与晶振频率及电容C1/C2的容量有关,但主要由晶振频率决定,范围在0~33MHz之间,电容C1/C2取值范围在5~30pF之间。根据实际情况,本设计中采用1MHZ做为系统的外部晶振。电容取值为30pF。晶振电路如图3.2所示。-17-图3.2晶振电路3.3复位电路上电复位电路如图3.3所示。图3.3复位电路3
7、.4显示部分显示电路是利用LM016L系列的LCD显示屏,可以双行显示。其D0-D7与P0口相接,并且给P0口外接上拉电阻。LCD显示电路如图3.4所示。图3.4LCD显示密码电路3.5报警电路报警电路是利用SPEAKER和NPN型三极管构成,同时给蜂鸣器并联一个发光二级管,当P1.0口输出为高电平时,NPN三极管导通,蜂鸣器发声,“错误”指示灯亮。报警电路如图3.5所示。-17-图3.5报警电路3.6电路总体结构及布局该设计的电路总体结构及布局如图3.6所示。图3.6电路总体结构及布局4软件设计软件部分由
8、主程序、初始化程序、LCD显示程序、键盘扫描程序、功能程序、密码设置程序、EEPROM读写程序和延时程序等组成。总流程图如图4.1所示。-17-图4.1程序流程图具体程序见附录。-17-5Proteus仿真结果当开启开始仿真时,LCD显示屏会显示“选择A为设置密码,选择B为开锁”,同时“锁合”指示灯(红灯D1)闪烁。开始仿真图如图5.1所示。图5.1开始仿真图当按下A或B时会提示输入密码,按下每一个键都会输出“*
此文档下载收益归作者所有