1、 电子设计与实践-课程设计 周口师范学院 1 基于单片机控制的电子密码锁基于单片机控制的电子密码锁 摘要:摘要:本系统由单片机系统、矩阵键盘、LED 显示和报警系统组成。系统能完成开锁、超时报 警、超次锁定、管理员解密、修改用户密码基本的密码锁的功能。除上述基本的密码锁功能外,还 具有调电存储、声光提示等功能,依据实际的情况还可以添加遥控功能。本系统成本低廉,功能实 用 关键词:关键词:AT89S51,AT24C02, 电子密码锁,矩阵键盘 一一、电路的功能单元设计、电路的功能单元设计 1 1开锁机构开锁机构 通过单片机送给开锁执行机构,电路驱动电磁锁吸合,从而达到开锁的目的。其原理如图 31
2、 所示。 图 31 密码锁开锁机构示意图 当用户输入的密码正确而且是在规定的时间(普通用户要求在 12s 内输入正确的密码,管理员 要求在 5s 输入正确的密码)输入的话,单片机便输出开门信号,送到开锁驱动电路,然后驱动电磁 锁,达到开门的目的。其实际电路如图 22 所示。 电路驱动和开锁两级组成。由 D5、R1、T10 组成驱动电路,其中 T10 可以选择普通的小功率三 极管如 9014、9018 都可以满足要求。D5 作为开锁的提示;由 D6、C24、T11 组成。其中 D6、C24 是为了消除电磁锁可能产生的反向高电压以及可能产生的电磁干扰。T11 可选用中功率的三极管如 8050,电磁
3、锁的选用要视情况而定,但是吸合力要足够且由一定的余量。 在本次设计中,基于节省材料的原则,暂时用发光二极管代替电磁锁,发光管亮,表示开锁; 灭,表示没有开锁。 T10 T11 D5 GND R1 3.3K 电磁锁 C24 VC C 来 自 微控 制 器 信 号 D6 单片机微控单片机微控 制器制器 开锁驱动电路开锁驱动电路 电 磁 锁 电 磁 锁 密码正密码正 确?确? Y 返回返回 N 电子设计与实践-课程设计 周口师范学院 2 图 32 密码锁开锁机构电路图 2按键电路设计按键电路设计 由于设计要求使用矩阵键盘,所以本设计就采用行列式键盘,同时也能减少键盘与单片机接口 时所占用的 I/O
4、线的数目,在按键比较多的时候,通常采用这样方法。其原理如图 33 所示。 图 33 行列式键盘原理电路图 每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种 行列式矩阵结构只需要 N 条行线和 M 条列线,即可组成具有 NM 个按键的键盘。 在这种行列式矩阵键盘非键盘编码的单片机系统中,键盘处理程序首先执行等待按键并确认有 无按键按下的程序段。 当确认有按键按下后,下一步就要识别哪一个按键按下。对键的识别通常有两种方法:一种是 常用的逐行扫描查询法;另一种是速度较快的线反转法。 首先辨别键盘中有无键按下,有单片机 I/O 口向键盘送全扫描字,然后读入行线状态来判
5、断。 方法是:向行线输出全扫描字 00H,把全部列线置为低电平,然后将列线的电平状态读入累加器 A 中。如果有按键按下,总会有一根行线电平被拉至低电平从而使行线不全为 1。 判断键盘中哪一个键被按下使通过将列线逐列置低电平后,检查行输入状态来实现的。方法是: 依次给列线送低电平,然后查所有行线状态,如果全为 1,则所按下的键不在此列;如果不全为 1, 则所按下的键必在此列,而且是在与零电平行线相交的交点上的那个键。 按键的操作面板如图图 23 所示。共计数字键 10 个,功能键 6 个。键盘上还有 3 个指示灯和 一个蜂鸣器。 图 34 按键操作面板示意图 89s51 D0 D1 D2 D3
6、D4 D5 D6 D7 D8 D9 D10 5.1K X 4 5.1K X 4 VCC C0 1 E 6 9 F4 4 8 F3 3 7 F2 2 6 F1 LLL 电子设计与实践-课程设计 周口师范学院 3 10 个数字键用来输入密码,另外 6 个功能键分别是:CLR、EN、F1、F2、F3、F4。其中 CLR 键的功能是当输入密码错误的时候,清除前面已经输入的数据,重新输入。EN 键的功能是确认输入 的密码。F1 是管理模式切换键,当用户不小心三次输入密码都没有正确,键盘被锁定,这个时候就 可以启动管理模式, 使用管理员的密码来开门。 F2 是用来进入修改密码的状态。 F3 用来关闭显示器, 一来可以节省电量,另外也可以防止不法分子偷窥密码。F4 用来作电铃。 上面的 3 个指示灯 L1、L2、L3 是用来指示操作的状态:L1 锁定及输入指示状态灯,正常的情 况下显示红色,当键盘动作的时候,L1 灯开始闪动,当键盘处于锁定状态时,指示灯也显示红色。 L2 开门指示灯,当用户在规定的时间内正确的输入了密码,此灯