摘 要
!
为了提高个人资料
!
部门文件档案的保密性和安全性
"
介绍了一种应用
单片机设计的密码锁
#
用户可以自行设置密码"
并可以随时改密
!
多次改写和保存密码
#
在宾馆
!
办公大楼
!
仓库
!
保险柜和家庭普遍适用
#
经实验验证该密码锁具有安全实用成本低等特点"
符合住宅用锁的要求
"
可作为产品进行开发。
关键词
!
单片机,
密码锁,
液晶显示屏
引 言
在日常的生活和工作中
"
住宅与部门的安全防范
!
单位的文件档案!
财务报表以及一些个人资料的保存多以加锁的办法来解决#
若使用传统的机械式钥匙开锁极不方便
"
安全性也得不到保证#
为满足人们对锁的使用要求
"
增加其安全性(
#
)
"
本设计使用
+,c%O*#
实现一种基于单片机的电子密码锁"
其主要具有如下功能
’
设置
(
位密码
"
密码通过键盘输入"
若密码正确
"
则将锁打开
#
密码可以由用户自己修改设定%只支持
(
位密码
&"
锁打开后才能修改密码
#
修改密码之前必须再次输入密码"
在输入新密码时候需要二次确认
"
以防止误操作#
该密码锁还具有光报警功能
"
密码输入错误
#("!
显示器会出现错误提示同时SJX
发光
#
这种密码锁具有安全性高!
成本低
!
功耗低
!
易操作等优点
#; 设计思路以 +,c%O*#
为中心控制元件
"
用
!)O"!
作为密码存储元件"
通过
#("!
液晶屏显示
#
根据屏幕提示
"
从键盘输入一组密码"
ORT
把该密码和预先设置的密码比较
"
对则将锁打开%
不同锁的控制方式不一样
"
比如加电控制电磁铁抽回"
从而打开
&"
或者进行改密
"
改密后利用
!)O"!
将改变了的密码保存"
使掉电密码不丢失
"
并通过
SJX
的亮灭来显示锁的开!
关
#
设计方法
’
输入密码用矩形键盘
"
包括数字键和功能键"
功能键包括退格键和确认键
#
液晶显示"
但是输出显示符号
*
$
+#
用发光二极管模拟锁的情况"
锁关时发光二极管灭
"
打开时发光二极管亮
#
输入密码错误时报警#
软件的设计主要包括
!)O"!
密码的存
!
键盘键值的读取!
液晶屏的显示
!
密码判断程序和报警程序
#硬件结构如图1
所示。
;<;
单元电路的设计#’#’# )h)矩阵键盘电路设计键盘有数字键和功能键!
数字键包括
"
"
%
键
!
用于密码的输入"
功能键有退格键和确认键
"
其电路原理图如图!
所示
!
各键具体的功能定义如表
#
所示
"

#’#’! +,!)O"!
掉电存储单元的设计掉电存储单元的作用是在电源断开的时候!
存储当前设定的密码信息"
+,!)O"!
是
+,?JS
公司的
!‘/
的电可擦除存储芯片!
采用两线串行的总线和单片机通信
!电压最低可以到!’*.
!
额定电流为
#K+
!
芯片内的资料可以在断电 的 情 况 下 保 存 )"
年 以 上
!
而 且 采 用
c
脚 的XPR封装
!
使用方便
#
!V&
$
"
其电路如图
&
所示
"

图中
3
c
%
3
#"
是上拉电阻
!
其作用是减少
+,!)O"!
的静态功耗!
由于
+,!)O"!
的数据线和地址线是复用
!
采用串口的方式传送数据!
所以只用
!
根线
-OS
&
移位脉冲
’
和-X+&
数据
(
地址
’
与单片机传送数据
#
)V(
$
"
每当设定一次密码!
系统就自动调用存储程序
!
将密码信息保存在芯片内)
当系统重新上电的时候
!
自动调用读存储器程序
!
将存储器内的密码信息读到缓存单元中!
供主程序使用
"#’#’& #("!液晶显示单元电路的设计该单元电路原理 图 如 图 )
所 示
!
SO?#("!O
液 晶 是SOX#("!类型的通用型的双行
#(
字符点阵液晶模块
!
内含数字%
字母
%
符号
#%!
种
&
无汉字
’
字符库
!
可通过
c
位或)位的单片机进行显示字符的控制
!
通过编程可实现字行的上下滚页%
左右移动
!
通过硬件连线可控制背景灯的对比度!
背景灯的开关
#
$
$
"
其实现的主要功能
*
完成密码的输入%
改密
%
开锁
%
关锁等功能的显示
"
总体电路图的设计如图*
所示
"= 软件设计电子密码锁工作的主要过程是*
根据液晶屏显示提示!
选择改密或者开锁
"
如为开锁
!
则键盘扫描输入的密码!
并存入数组
!
再取
!)"!
中的真正密码进行比较
!
输入密码正确!
实现开锁
&
即
SJX
灯亮
’!
如错误
!
则报警
!
提示错误)
如为改密
!
同样先将键盘输入的密码和
!)"!
中的密码比较!
如正确
!
则改密
!
并将新的密码存入
!)"!
中
!
如错误!
则报警
!
提示错误信息
"
程序将分为主程序和中断服务子程序"
主程序负责键盘键值读取
!
密码判断和屏幕的显示功能"
中断服务子程序主要是负责密码的复位和给密码锁上锁%
开锁及报警处理
"
对系统进行初始化
!
判断有无键盘输入!
如果有输入进行步骤选择
!
进行开锁或者修改 密 码!
如 果 没 有 键 盘 输 入
!
返 回
"
其 流 程 图 如 图
所示"


2649

被折叠的 条评论
为什么被折叠?



