- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机原理及系统课程设计
1 引言
电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的。其性能和安全性已大大超过了机械锁保密性好编码量多远远大于弹子锁。随机开锁成功率几乎为零2) 密码可变用户可以更改密码,防止密码被盗,同时也可以避免因人员的更替而使锁的密级下降3) 误码输入保护当输入密码多次错误时,报警系统自动启动2.1 本设计所要实现的目标
设计一种单片机控制的密码锁,具有按键有效指示、解码有效指示、控制开锁电平、控制报警、密码修改等功能。8位十进制密码共一亿组不重复,保密性强。该密码锁要实现一下功能:
(1) 锁的初始状态为“锁合”指示灯亮。输入初始密码“0、1、2、3、4、5、6、7”,每输入一位,“按键有效”指示灯亮约半秒钟,输完8位按确认键,锁打开,“锁开”指示灯亮;
(2) 按“上锁”键,锁又重新上锁,“锁合”指示灯亮;
(3) “锁开”状态下,可输入新密码,可重复修改密码;
(4) 如果输入密码错误,“错误指示”灯亮约半秒钟。可重新输入密码;
(5) 输入密码错误超过3次,蜂鸣器启动发出报警,同时“错误”指示灯常亮。
2.2 设计思路
对于电子密码锁的设计,需要解决几个问题:键盘输入、数码管显示、单片机电路、密码比较、修改密码等。其中最主要的就是解决掉电保存以及修改密码的问题。先写一个循环写入8个初始密码到芯片内部EEPROM程序,先下载程序写入初始密码,此时EEPROM已存有初始密码,再把密码锁程序下载到单片机,运行电子密码锁。
本设计主要由单片机、矩阵键盘、液晶显示器和密码存储等部分组成。其中
矩阵键盘用于输入数字密码和进行各种功能的实现。由用户通过连接单片机的矩阵键盘输入密码,后经过单片机对用户输入的密码与自己保存的密码进行对比,从而判断密码是否正确,然后控制引脚的高低电平传到开锁电路或者报警电路控制开锁还是报警,实际使用的是单片机P1.2和P1.1来控制锁合和锁开LED灯的状态,P0口用于电子显示屏来显示提示语句和密码输入按键。
本系统共有两部分构成,即硬件部分与软件部分。
3 硬件设计
硬件部分由键盘输入部分、密码存储部分、复位部分、晶振部分、显示部分、报警部分、开锁部分组成。
3.1 键盘扫描电路
键盘接成4*4的矩阵键盘,行线为LD0-LD3分别接P2口的P0.0-P0.3,列线为HD0-HD3分别接P2口的P0.7-P0.4。当哪一行的有键按下,则相应行的“按键有效”指示灯亮一下,其余行所对应的灯不亮。P2初始时P2口第四位为低电平,高四位为高电平,当哪一行有键按下,则所对应的行和列对应的口变为低电平,将改为扫描到单片机中。键盘扫描电路如图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所示。
图3.2 晶振电路
3.3 复位电路
上电复位电路如图3.3所示。
图3.3 复位电路
3.4 显示部分
显示电路是利用LM016L系列的LCD显示屏,可以双行显示。其D0-D7与P0口相接,并且给P0口外接上拉电阻。LCD显示电路如图3.4所示。
图3.4 LCD显示密码电路
3.5 报警电路
报警电路是利用SPEAKER和NPN型三极管构成,同时给蜂鸣器并联一个发光二级管,当P1.0口输出为高电平时,NPN三极管导通,蜂鸣器发声,“错误”指示灯亮。报警电路如图3.5所示。
图3.5 报警电路
3.6 电路总体结构及布局
该设计的电路总体结构及布局如图3.6所示。
图3.6 电路总体结构及布局
4 软件设计
软件部分由主程序、初始化程序、LCD显示程序、键盘扫描程序、功能程序、密码设置程序、EEPROM读写程序和延时程序等组成。总流程图如图4.1所示。
图4.1 程序流程图
具体程序见附录。
5 Proteus仿真结果
当开启开始仿真时,LCD显示屏会显示“选择A为设置密码,选择B为开锁”,同时“锁合”指示灯(红灯D1)闪烁。开始仿真图如图5.1所示。
图5.1 开始仿真图
当按下A或B时会提示输入密码,按下每一个键都会输出“*”提示。其仿真结果如图5.2所示。
图5.2 提示输入密码界面
当输入密码正确时会显示“PASSWORD OK!!!”字样,同时“错误”指
文档评论(0)