智能密码锁的设计与实现

2017-11-10 12:28周赞唐扬兴虎风林
农家科技 2017年9期
关键词:单片机

周赞+唐扬兴+虎风林

摘 要:本系统是基于AT89S51单片机的函数信号发生器。以MCS-51系列单片机作为控制核心,由数模转换器模块,供电模块和液晶显示器构成。由程序控制AT89S51产生各种不同密码控制方式,通过单片机的I/O口将数字编码输出到数模转换器进行数模转换,所产生的是数码管相应的数字和状态显示。系统能显示多種密码状态,通过按键可以实现对密码的修改与重置,当三次出现输入密码错误时,系统会发出报警。系统具有功耗低、可作为产品进行开发,应用于共享单车上使用。

关键词:单片机;AT89S52;电子密码锁

一、系统基本原理

单片机电子锁是以51系列单片机(AT89S52)为核心,配以相应硬件电路,完成密码的设置、存贮、识别和显示、驱动电磁执行器并检测其驱动电流值、接收传感器送来的报警信号、发送数据等功能。 单片机接收键入的代码,并与存贮在EEPROM中的密码进行比较,如果密码正确,则驱动电磁执行器开锁;如果密码不正确,则允许操作人员重新输入密码,最多可输入三次;如果三次都不正确,则单片机通过通信线路向智能监控器报警。单片机将每次开锁操作和此时电磁执行器的驱动电流值作为状态信息发送给智能监控器,同时将接收来自传感器接口的报警信息也发送给智能监控器,作为智能化分析的依据。

为了防止通信线路的人为破坏和电磁执行器因某种原因造成流过电磁线圈的电流过大而烧毁线圈,可以加入电流监视技术模块采用MAXIM公司生产的电流/电压转换芯片MAX471。该芯片能将被测电流I转化成对地输出电压U,且有测量范围大、精度高、输出电压U和被测电流I成正比等特点。电流监视器输出电压送A/D转换器,单片机通过读取A/D转换结果,获知线路中电流的变化情况,通过分析及时发现异常,发出报警信号。本设计因为使用了蜂鸣器,对密码输入时出现错误实现报警。

二、设计方案

系统的整体框图

本设计采用4*4的矩阵键盘作为输入,AT89S51单片机作为主机, 二极管指示灯和喇叭组成发声系统。根据系统拟达到的总体功能,将其划分为以下功能模块:激光弦输入、掉电储存、运算主机、输出设备等。系统整体框图如图2-1。

利用KEIL软件编写程序,通过程序控制使单片机产生密码锁控制的数字编码,通过单片机的PO口输出到数模转换器,内部进行数模转换,将相应的数字编码变换成不同大小的电流。由于数模转换内部产生的是电流,所以需要进行电流到电压的转换,实现这个转换的是通过MCU内部程序控制完成的,通过一级的运放就可以将电流转换成电压,但是由于电压的幅度较小,并且由于各种内外部的干扰,所以需要对产生的控制信号进行加以按键防抖。

三、时钟电路

单片机最小系统中的时钟电路起着至关重要的作用,AT89S51单片机有两种产生时钟信号的方式:内部时钟和外部时钟。在本系统中,选用内部时钟。电路分别从单片机18、19管脚分别引出,在两管脚之间加入一个11.0592MHz的晶振,再与30PF电容相连接,末端接地。对于晶振频率的选择,在1.2~12MHz之间选择都可以满足设计需求,常用的晶振频率为6MHz、11.0592MHz和12MHz。

四、复位电路

当单片机第9管脚(Reset)高电平持续超过两个机器周期时,复位电路启动,单片机系统执行复位操作,电路系统重新启动。若复位管脚持续高电平超过两个周期,系统不能成功执行复位,说明复位电路没有正常工作或者没有焊接正确。复位的执行有两种,一种是根据管脚上所接电容的充放电完成,另一种的按键复位,本系统选用的是按键复位,按键按下时,电路执行复位操作。

五、电源供电模块

一个完整的系统设计,供电部分是整个系统工作的基础部分,是保证系统完整、有序运行的前提。51系列单片机是使用最早、稳定性较强的核心控制器,但在整个系统的工作过程中,51系列单片机面临的最大问题还是功耗大、抗干扰能力差、程序跑飞等问题,为了将这些弊端将至最低,需要设计可靠、完整的供电系统。

在本设计中,电源供电可以由计算机USB或者普通手机充电设备提供,此外,还可以用5V专用电源或者干电池供电。在电路中,设置电源指示灯,为系统工作提供了方便。

六、程序设计思路

对控制密码锁的系统软要求很高,它必须能够同时兼顾对键盘的读取、键盘的处理、对密码更改的控制、控对数码管的动态显示控制等要求,要做到这些我们要采取中断技术。

此次设计,主程序对键盘端口的扫描使用的是查询的方法,检测有没有按下按键,当有按键被按下发生按键动作时则处理键盘,通过按键值来改变对应参数值,使键盘能够实现实时处理的作用。定时器0通过使控制该功能的程序中断来控制系统的运行情况:通过目前密码锁的显示状态用键盘人工地改变T0的定时时间常数值,改变TH0与TL0的参数,实现对密码锁的更改密码和复位操作;通过密码锁各按键的分别控制,达到整体控制的目的,控制脉冲信号,脉冲信号循环移动的方向控制,实现各种方面的控制要求。

说明如下:

1.单片机根据键盘发过来的信息,改变自身系统变量值。

2.单片机通过输出脉冲信号来控制各按键的按键值。

3.单片机通过检测出密码锁实时状态,控制数码管显示。

参考文献:

[1]戴佳,苗龙,陈斌.51单片机应用系统开发典型实例[M]. 中国电力出版社,2005.9.

[2]康华光.电子技术基础[M].高等教育出版社,2002.

[3]梁燕, 邵凯.用单片机实现遥控器的红外发射[J].成都信息工程学院学报,2005.endprint

猜你喜欢
单片机
基于单片机MCU的IPMI健康管理系统设计与实现
浅析51单片机的特点与应用
单片机在智能控制中的应用
C8051F020与80C51单片机的异同点
MCS—51单片机多串口通讯技术应用分析
一种单片机虚拟实验室的建立方法
点阵式液晶显示器lMl2864与51单片机的接口设计
单片机I/O口模拟串行通讯的C51实现方法
单片机调试方法的探讨
用PIC单片机制作的时间继电器