2 系统设计
2.1 单片机控制方案
图2-1 单片机控制方案
方案说明:
输入密码用4*4矩形键盘,包括数字键和功能键。
LED数码显示管显示输入密码。
用发光二极管代替开锁的电路,红色放光二极管表示输入密码错误,绿色发光二极管表示输入密码正确。
输入密码错误次数超过3次,系统报警。
若某位输入密码错误,可按“<-”键清除键入的密码,并重新输入该位。
打开电源后,数码显示管闪一下并熄灭等待输入密码,设原始密码为“012345”,只要输入此密码便开门(绿色发光二极管发光)。
按“RESET”键,清除显示器为“888888”。
输入密码,再按“ENTER”键。若密码与设定密码相同,则绿色发光二极管亮。否则红色发光二极管亮。
欲重新设定密码,先输入正确密码后,再按“ CHANGE CODE”。
如图2-1所示,该电子密码锁系统主要由AT89C51(51系列)、6位7段数码管、LED灯显示、4×4矩阵键盘键值的读取、开锁电路、复位电路、报警电路(蜂鸣器)等组成。
2.2 系统的可行性分析
系统工作原理分析:使用AT59C51单片机、4*4矩阵式键盘、LED数码显示管、发光二极管、蜂鸣器等。矩阵键盘分别为0、1、2、3、4、5、6、7、8、9、<-、ENTER、RESTE、CHANGE CODE。输入密码时,LED显示电路显示为键入值,当密码输入完毕按下ENTER键时,对输入密码与原设定的密码进行比较,若密码正确则绿色发光二极管点亮,表示开锁;若密码不正确,红色发光二极管点亮,若连续3次输入不正确,则发出警报声。
在输入正确密码后,按下CHANGE CODE键,可输入新密码,并按ENTER键,则密码修改成功。修改密码过程中,系统自动清零上锁。要再次开锁则需要输入正确的密码。
在输入密码的过程中,为了防止因失误造成的错误按键,可以按下<—键将上一位密码删除掉,即退格作用,可再重新输入该位密码。
为了防止恶意尝试,系统才用若连续输入3次错误密码则发出报警声,这样可以提高系统的安全系数,同时也能够保护合法用户的正常使用。
3 硬件电路设计
AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含4K bytes的可反复擦写的只读程序存储器(EPROM)和128bytes的随机存取数据寄存器(RAM),器件采用ATMEL公司的高密度/非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和FLASH存储单元,AT89C51单片机为许多嵌入式控制系统提供了一种灵活行高且价廉的方案。
3.1 单片机AT89C51介绍
3.1.1 AT89C51芯片
图3-1 AT89C51芯片
3.1.2 主要特性
• 8031 CPU与MCS-51 兼容
• 4K字节可编程FLASH存储器(寿命:1000写/擦循环)
• 全静态工作:0Hz-24KHz
• 三级程序存储器保密锁定
• 128*8位内部RAM
• 32条可编程I/O线
• 两个16位定时器/计数器
• 6个中断源
• 可编程串行通道
• 低功耗的闲置和掉电模式
• 片内振荡器和时钟电路
3.1.3 引脚功能介绍
VCC:供电电压。
GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 基于51单片机电子密码锁的设计(3):http://www.751com.cn/zidonghua/lunwen_8802.html