单片机的电子密码锁的设计
引言 1
(一)课题背景 1
(二)课题设计目标 1
一、系统方案论证 1
(一)主控部分选择 1
(二)密码输入方式的选择 1
二、系统总体设计和主要芯片介绍 2
(一)系统总体设计 2
(二)主要芯片介绍 3
三、系统硬件设计 9
(一)单片机最小系统原理图 9
(二)电源输入部分 10
(三)键盘输入部分 11
(四)密码存储部分 11
(五)显示部分 12
(六)报警部分 13
(七)开锁部分 13
四、软件的设计与实现 13
(一)系统软件的概述 13
(二)子程序的设计 14
结束语 17
附录一 原理图 19
附录二 源程序 20
参考文献 29
致 谢 30
引言
随着人们生活水平的提高和安全意识的加强,对安全的要求也就越来越高。锁自古以来就是把守护门的铁将军,人们对它要求甚高,既要安全可靠的防盗,又要使用方便,这也是制锁者长期以来研制的主题。随着电子技术的发展,各类电子产品应运而生,电子密码锁就是其中之一。
(一)课题背景
作为电子锁键(密码体积)大大的量,可以用在与机械锁和钥匙一起是通用的,可避免安全性风险。电子锁,只要记住一个密码,无需携带金属键,省去了麻烦的人携带金属钥匙,越来越多的人受到了赞赏。各种各样的电子锁,如数字锁,指纹密码锁,磁卡锁,IC卡门锁,生物识别锁等。但更实际的或按键式电子锁。
(二)课题设计目标
本设计采用AT89C5 *好棒文|www.hbsrm.com +Q: ¥3^5`1^9`1^6^0`7^2$
1单片机为主控芯片,通过软件程序组成电子密码锁系统,能够实现:
1.正确输入密码前提下,开锁提示;
2.错误输入密码情况下,蜂鸣器报警;
3.密码可以根据用户需要更改;
4.断电存储功能
一、系统方案论证
(一)主控部分的选择
方案一:采用数字电路控制
74LS112双JK触发器为数字逻辑电路为核心的控制锁定JK触发器中存储的密码,由比较器比较输入密码,以确定是否匹配的结果。数字电路设计方案的好处是设计简单,但控制精度和灵活性差,它不被使用。
方案二:使用单片机为核心的控制程序
使用单片机作为系统的核心部件,实现控制和处理功能。 SCM是丰富的资源,快速,易编程等。使用单片机内部的随机存储器(RAM)和只读存储器(ROM)和引脚资源,外接液晶显示器(LCD),如键盘输入,数据处理,传输和显示功能,基本上达到设计规范,所以全面考虑,本系统采用两种方案。
(二)密码输入方式的选择
方案一:指纹输入识别
指纹识别技术主要涉及四个功能:读取指纹图像特征提取,保存数据和比较。通过指纹读取装置读取的进入人体的指纹图像,然后对原始图像的初步处理,使之更加清楚,然后通过指纹识别软件建立的指纹数据的特征。软件指纹上找到被称为“节点”(细枝末节)指纹数据点分叉,圆周运动在终止或这些点的坐标位置也有超过7独特的特点。典型地具有平均的手指70的节点,这种方法会产生大约490个数据。这些数据,通常被称为作为模板。由计算机模糊比较的方法,两个指纹模板进行比较,来计算两个指纹的相似性程度,最终得到的结果相匹配,以确定是否输入了正确的结果。考虑到程序太复杂的硬件和软件,但成本高,不使用.
方案二:矩阵键盘输入识别
由各按键组成的矩阵键盘每条行线和列线都对应一条I/O口线,键位设在行线和列线的交叉点,当一个键按下就会有某一条行线与某一条列线接触,只要确定接触的是哪两条线,即哪两个I/O口线,就可以确定哪一个键被触动。行线设计成上拉口线,初始时被置高电位,列线悬空,初始置低。通过不断读行线口线,或者中断方式触发键位扫描。当发现有键按下,将列线逐一置低,其他列线置高,读行线口线。当某条列线置低时,某条行线也被拉低,则确定这两条线的交点处的按钮被按下。每个按键都可通过程序赋予功能,从而完成密码识别。本方案简单易行,故采用。
二、系统总体设计和主要芯片介绍
(一)系统总体设计
这种设计由微控制器,矩阵键盘,液晶显示器和密码存储和其他组件。矩阵键盘用于输入数字和各种功能来实现。由用户通过输入矩阵键盘连接到微控制器的密码经过单片机与自己的用户输入的密码,保存的密码进行比较,以确定密码是否正确,然后传输到控制引脚的高低电平报警电路或控制电路:解锁解锁或报警,只要微控制器取代继电器的吸合电磁线圈的电子密码锁,实际使用时的负载就可以。系统整体框图如图1所示。
图1 系统结构框图
各模块功能如下:
1.矩阵键盘输入模块:分为密码输入按键与几个功能按键,用于完成密码锁输入功能。
2.显示模块:用于完成对系统状态显示及操作提示功能。
3.报警电路:用于完成输错密码时候的警报功能。
4.密码存储模块:用于完成掉电存储功能,使修改的密码断电后仍能保存。
5.电源模块:用于对系统电路提供+5V的直流电压。
6.开锁电路:当密码输入正确的时候锁打开。
(二)主要芯片介绍
1.AT89C51
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。
主要特性:
与MCS-51 兼容
4K字节可编程闪烁存储器
寿命:1000写/擦循环
数据保留时间:10年
全静态工作:0Hz-24MHz
三级程序存储器锁定
128×8位内部RAM
32可编程I/O线
两个16位定时器/计数器
5个中断源
可编程串行通道
低功耗的闲置和掉电模式
片内振荡器和时钟电路
管脚说明:
8 D1 Data I/O 16 BLK 背光源负极
(2)LCD1602基本操作时序
读状态:输入:RS=L,RW=H,E=H 输出:D0~D7=状态字
图6 最小系统电路原理图
(二)电源输入部分
密码锁主控制部分电源需要用5V直流电源供电,把频率为50Hz、有效值是220V的单相交流电压转换为幅值稳定5V直流电压。其主要原理是把单相电经过电源变压器、整流电路、滤波电路、稳压电路转换成稳定直流电压。由于输入电压为电网电压,一般情况下所需直流电压的数值和电网电压的有效值相差较大,因而电源变压器的作用显现出来起到降压作用。降压后还是交流电压,所以需要整流电路把交流电压转换成直流电压。由于经整流电路整流后的电压含有较大的交流分量,会影响到负载电路的正常工作。需通过低通滤波电路滤波,使输出电压平滑。稳压电路的功能是使输出直流电压基本不受电网电压波动和负载电阻变化的影响,从而获得稳定性足够高的直流压。本电路使用充电器解决电源稳压问题。
(一)课题背景 1
(二)课题设计目标 1
一、系统方案论证 1
(一)主控部分选择 1
(二)密码输入方式的选择 1
二、系统总体设计和主要芯片介绍 2
(一)系统总体设计 2
(二)主要芯片介绍 3
三、系统硬件设计 9
(一)单片机最小系统原理图 9
(二)电源输入部分 10
(三)键盘输入部分 11
(四)密码存储部分 11
(五)显示部分 12
(六)报警部分 13
(七)开锁部分 13
四、软件的设计与实现 13
(一)系统软件的概述 13
(二)子程序的设计 14
结束语 17
附录一 原理图 19
附录二 源程序 20
参考文献 29
致 谢 30
引言
随着人们生活水平的提高和安全意识的加强,对安全的要求也就越来越高。锁自古以来就是把守护门的铁将军,人们对它要求甚高,既要安全可靠的防盗,又要使用方便,这也是制锁者长期以来研制的主题。随着电子技术的发展,各类电子产品应运而生,电子密码锁就是其中之一。
(一)课题背景
作为电子锁键(密码体积)大大的量,可以用在与机械锁和钥匙一起是通用的,可避免安全性风险。电子锁,只要记住一个密码,无需携带金属键,省去了麻烦的人携带金属钥匙,越来越多的人受到了赞赏。各种各样的电子锁,如数字锁,指纹密码锁,磁卡锁,IC卡门锁,生物识别锁等。但更实际的或按键式电子锁。
(二)课题设计目标
本设计采用AT89C5 *好棒文|www.hbsrm.com +Q: ¥3^5`1^9`1^6^0`7^2$
1单片机为主控芯片,通过软件程序组成电子密码锁系统,能够实现:
1.正确输入密码前提下,开锁提示;
2.错误输入密码情况下,蜂鸣器报警;
3.密码可以根据用户需要更改;
4.断电存储功能
一、系统方案论证
(一)主控部分的选择
方案一:采用数字电路控制
74LS112双JK触发器为数字逻辑电路为核心的控制锁定JK触发器中存储的密码,由比较器比较输入密码,以确定是否匹配的结果。数字电路设计方案的好处是设计简单,但控制精度和灵活性差,它不被使用。
方案二:使用单片机为核心的控制程序
使用单片机作为系统的核心部件,实现控制和处理功能。 SCM是丰富的资源,快速,易编程等。使用单片机内部的随机存储器(RAM)和只读存储器(ROM)和引脚资源,外接液晶显示器(LCD),如键盘输入,数据处理,传输和显示功能,基本上达到设计规范,所以全面考虑,本系统采用两种方案。
(二)密码输入方式的选择
方案一:指纹输入识别
指纹识别技术主要涉及四个功能:读取指纹图像特征提取,保存数据和比较。通过指纹读取装置读取的进入人体的指纹图像,然后对原始图像的初步处理,使之更加清楚,然后通过指纹识别软件建立的指纹数据的特征。软件指纹上找到被称为“节点”(细枝末节)指纹数据点分叉,圆周运动在终止或这些点的坐标位置也有超过7独特的特点。典型地具有平均的手指70的节点,这种方法会产生大约490个数据。这些数据,通常被称为作为模板。由计算机模糊比较的方法,两个指纹模板进行比较,来计算两个指纹的相似性程度,最终得到的结果相匹配,以确定是否输入了正确的结果。考虑到程序太复杂的硬件和软件,但成本高,不使用.
方案二:矩阵键盘输入识别
由各按键组成的矩阵键盘每条行线和列线都对应一条I/O口线,键位设在行线和列线的交叉点,当一个键按下就会有某一条行线与某一条列线接触,只要确定接触的是哪两条线,即哪两个I/O口线,就可以确定哪一个键被触动。行线设计成上拉口线,初始时被置高电位,列线悬空,初始置低。通过不断读行线口线,或者中断方式触发键位扫描。当发现有键按下,将列线逐一置低,其他列线置高,读行线口线。当某条列线置低时,某条行线也被拉低,则确定这两条线的交点处的按钮被按下。每个按键都可通过程序赋予功能,从而完成密码识别。本方案简单易行,故采用。
二、系统总体设计和主要芯片介绍
(一)系统总体设计
这种设计由微控制器,矩阵键盘,液晶显示器和密码存储和其他组件。矩阵键盘用于输入数字和各种功能来实现。由用户通过输入矩阵键盘连接到微控制器的密码经过单片机与自己的用户输入的密码,保存的密码进行比较,以确定密码是否正确,然后传输到控制引脚的高低电平报警电路或控制电路:解锁解锁或报警,只要微控制器取代继电器的吸合电磁线圈的电子密码锁,实际使用时的负载就可以。系统整体框图如图1所示。
图1 系统结构框图
各模块功能如下:
1.矩阵键盘输入模块:分为密码输入按键与几个功能按键,用于完成密码锁输入功能。
2.显示模块:用于完成对系统状态显示及操作提示功能。
3.报警电路:用于完成输错密码时候的警报功能。
4.密码存储模块:用于完成掉电存储功能,使修改的密码断电后仍能保存。
5.电源模块:用于对系统电路提供+5V的直流电压。
6.开锁电路:当密码输入正确的时候锁打开。
(二)主要芯片介绍
1.AT89C51
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。
主要特性:
与MCS-51 兼容
4K字节可编程闪烁存储器
寿命:1000写/擦循环
数据保留时间:10年
全静态工作:0Hz-24MHz
三级程序存储器锁定
128×8位内部RAM
32可编程I/O线
两个16位定时器/计数器
5个中断源
可编程串行通道
低功耗的闲置和掉电模式
片内振荡器和时钟电路
管脚说明:
8 D1 Data I/O 16 BLK 背光源负极
(2)LCD1602基本操作时序
读状态:输入:RS=L,RW=H,E=H 输出:D0~D7=状态字
图6 最小系统电路原理图
(二)电源输入部分
密码锁主控制部分电源需要用5V直流电源供电,把频率为50Hz、有效值是220V的单相交流电压转换为幅值稳定5V直流电压。其主要原理是把单相电经过电源变压器、整流电路、滤波电路、稳压电路转换成稳定直流电压。由于输入电压为电网电压,一般情况下所需直流电压的数值和电网电压的有效值相差较大,因而电源变压器的作用显现出来起到降压作用。降压后还是交流电压,所以需要整流电路把交流电压转换成直流电压。由于经整流电路整流后的电压含有较大的交流分量,会影响到负载电路的正常工作。需通过低通滤波电路滤波,使输出电压平滑。稳压电路的功能是使输出直流电压基本不受电网电压波动和负载电阻变化的影响,从而获得稳定性足够高的直流压。本电路使用充电器解决电源稳压问题。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/txgc/2046.html