新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于单片机控制的电子密码锁

基于单片机控制的电子密码锁

作者:时间:2009-09-14来源:网络收藏

三、电路的功能单元设计

1.开锁机构

通过送给开锁执行机构,电路驱动电磁锁吸合,从而达到开锁的目的。其原理如图2-1所示。

图3-1开锁机构示意图

当用户输入的密码正确而且是在规定的时间(普通用户要求在12s内输入正确的密码,管理员要求在5s输入正确的密码)输入的话,便输出开门信号,送到开锁驱动电路,然后驱动电磁锁,达到开门的目的。其实际电路如图2-2所示。

电路驱动和开锁两级组成。由D5、R1、T10组成驱动电路,其中T10可以选择普通的小功率三极管如9014、9018都可以满足要求。D5作为开锁的提示;由D6、C24、T11组成。其中D6、C24是为了消除电磁锁可能产生的反向高电压以及可能产生的电磁干扰。T11可选用中功率的三极管如8050,电磁锁的选用要视情况而定,但是吸合力要足够且由一定的余量。

在本次设计中,节省材料的原则,暂时用发光二极管代替电磁锁,发光管亮,表示开锁;灭,表示没有开锁。

2.按键电路设计

由于设计要求使用矩阵键盘,所以本设计就采用行列式键盘,同时也能减少键盘与接口时所占用的I/O线的数目,在按键比较多的时候,通常采用这样方法。其原理如图2-3所示。

图3-3 行列式键盘原理电路图

每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要N条行线和M条列线,即可组成具有N×M个按键的键盘。

在这种行列式矩阵键盘非键盘编码的单片机系统中,键盘处理程序首先执行等待按键并确认有无按键按下的程序段。

当确认有按键按下后,下一步就要识别哪一个按键按下。对键的识别通常有两种方法:一种是常用的逐行扫描查询法;另一种是速度较快的线反转法。

对照图2-3所示的44键盘,说明线反转个工作原理。

首先辨别键盘中有无键按下,有单片机I/O口向键盘送全扫描字,然后读入行线状态来判断。方法是:向行线输出全扫描字00H,把全部列线置为低电平,然后将列线的电平状态读入累加器A中。如果有按键按下,总会有一根行线电平被拉至低电平从而使行线不全为1。

判断键盘中哪一个键被按下使通过将列线逐列置低电平后,检查行输入状态来实现的。方法是:依次给列线送低电平,然后查所有行线状态,如果全为1,则所按下的键不在此列;如果不全为1,则所按下的键必在此列,而且是在与零电平行线相交的交点上的那个键。



评论


相关推荐

技术专区

关闭