基于MSC51单片机红外线电子密码锁毕业设计.docx
- 文档编号:11151150
- 上传时间:2023-05-29
- 格式:DOCX
- 页数:56
- 大小:403.28KB
基于MSC51单片机红外线电子密码锁毕业设计.docx
《基于MSC51单片机红外线电子密码锁毕业设计.docx》由会员分享,可在线阅读,更多相关《基于MSC51单片机红外线电子密码锁毕业设计.docx(56页珍藏版)》请在冰点文库上搜索。
基于MSC51单片机红外线电子密码锁毕业设计
基于MSC-51单片机红外线电子密码锁
一、【摘 要】
电子技术的飞速发展,给古老的锁具生产带来了巨大的变革,古老的机械锁安全性能差,容易被破坏,给管理和使用带来了很多的不便。
而电子技术的发展解决了这个问题。
红外线抗干扰能力强、使用方便、工作可靠等优点,本系统采用AT89C51单片机为核心接收和发送,采用AT24C02可擦除寄存器存储密码,设计了6位密码控制密码锁的开、关。
同时用APR9600语音芯片提示密码存储状态及效果。
该系统可靠性高,成本低,操作方便等特点。
第1节前言
本系统采用单片机技术实现红外线遥控设置密码控制锁头,具有性能可靠,电路简单,成本低廉,安全稳定等特点。
1.1、单片机的发展概述
单片机是在一块集成电路芯片上集中了继电器、存储器、运算器和输入输出端口的微型计算机,它体积小,耗电省,它以高性价比和灵活性,在工业控制仪器仪表和家电领域得到了广泛的应用。
即使是在PC机以286、386、Pentium、PⅢ等高速更新换代的同时,单片机依然保持旺盛的生命力。
MCS-51系列单片机是应用最广泛的单片机,许多新型的单片机,在硬件和软件上都与MSC-51系列单片机兼容。
目前,单片机分为通用型和专用型两种。
MCS-51系列单片机通用型的单片机,通用型的单片机把开发资源全部公开,用户可以根据自己的应用系列进行设计,适用面广,应用灵活。
单片机位数是指单片机一次能够处理的数据的宽度,如4位机的MSM64155A,8位机的8051兼容系列,16位机的MSP430系列等。
目前4位、8位、16位的单片机同时并存,都有自己的市场。
8位和16位机的应用领域最广,目前在国内仍是主流。
存储器包括程序和数据存储器,与的单片机没有程序存储器。
除了容量之外还有类型之分,如ROM、RAM、EPROM、E2PROM、FLASHheOPT型数据存储器。
现在很多单片机的存储器使用FLASHROM、FLASHRAM,可以再线擦写,断电后数据可以保存很长时间。
1.2、电子密码锁的概述
电子技术与机械技术的结合,产生了一大批的密码锁如声控锁,磁控锁,密码
锁,遥控锁,指纹锁等先进的锁具,目前我目前国内外密码锁系统的主要方向的发展是:
接触式密码锁系统,非接触式密码锁系统,智能识别密码锁系统,但是他们都相应的存在着不同的缺点.例如:
接触式密码锁系统成本较低,体积小,卡片本身无须电源,但使用不太方便,而且有接触磨损.相比之下,红外遥控密码锁系统的成本与接触式密码锁系统相当,而且可以进行近距离遥控,使用十分方便。
本系统采用AT89C51做为遥控和处理的核心,发射采用红外发光二极管,遥控器制作简单,成本低廉。
1.3、本系统的运用和实际意义
对于工业控制微机系统来说输入设备键盘几乎是必不可少的。
遥控技术经历了有线遥控、无线电波遥控,现今的红外遥控,技术已相当成熟,功能越来越强,运行越来越稳定,应用越来越广泛。
先进的遥控技术配合单片机运用到工业控制中去,那么,控制系统的操作将变得更容易、更快捷、更方便、更安全。
本系统是基于AT89C51制作的红外线遥控电子密码锁。
因为本系统发射部分和接收部分都是使用AT89C51芯片控制,发射的波形简单和接收也稳定,由于本系统键盘采用无线方式,所以他不仅可以近距离的控制,它所构成的单片机还可以方便地满足一些需要远距离控制的场合,以及一些特殊场合,例如:
单片工业控制微机系统在一个密封的容器内,通过玻璃小窗进行参数输入或控制、单片工业控制微机周围环境不适宜用户近距离操作等等。
1.3、本系统设计任务及要求
1.3.1、设计任务
设计一款基于AT89C51单片机的红外线电子密码锁
1.3.2、设计要求
(1)、遥控器部分
采用AT89C51为核心
红外发光二极管为发射头
软件控制发射波形
(2)、接收部分
AT89C51为核心采用一体化接收头接收
采用AT89C51为核心解码控制
1.3.3、所具备功能
本系统所设计的电子密码锁主要功能有:
按开锁键输入六位正确密码能开锁,能修改密码,能够在掉电的情况下存储密码,语音提示,能够在误输入密码后取消所输入数据并开锁。
第2节电子密码锁的硬件设计
本系统的硬件设计主要包括单片机AT89C51、红外线发射电路、一体化接收头、AT24C02掉电存储单元设计,语音提示单元设计。
在硬件设计过程中,充分利用各个部件的功能实现红外线电子密码锁的设计。
2.1、系统的硬件构成及功能
2.1.1、遥控器部分
单片机AT89C51有丰富的I/O接口,控制灵活,实现键盘的连接和发射电路的发射功能
红外线遥控器的单片机控制方案如下图
(一)所示。
他由以下部分组成:
单片机AT89C51、键盘控制电路、和发射电路等电路组成。
(1)、遥控器发射电路设计
遥控发射器的电路原理图如附录中所示,其中P0口和P2口用作键盘扫描端口,制作14个功能操作键,第9脚为单片机的复位脚,采用简单的RC上电复位电路;15脚作为红外线遥控器的输出口,用于输出38KHZ载波编码,18、19脚接12MHZ晶振。
P0口需要接上拉电阻。
具体电路如附录的电路图。
(2)、简单的键盘接口
每个键盘独立地与单片机的I/O线直接相连就构成了简单的键盘。
如图所示下图所以示。
键与键之间的工作状态互不影响。
简单按键可以根据需要的灵活地设计,每个键占一根线,软件编写简单方便。
P0口和P2口接一上拉电阻,扫描P0口和P2口判断是否有键按下,有键按下时通过查键并执行键功能程序。
(3)、红外线发射电路
遥控器信息码由AT89C51单片机定时器1中断产生38MHZ的红外线方波信号,由P3.5口输出,经过三极管9013放大,由红外线发射管发送。
改变R1的大小可以改变发射距离。
系统的程序设计
2.1.2、接收部分
红外线接收的单片机控制方案如图
(二)所示。
他由以下部分组成:
一体化红外线解手头、锁头电路、AT89C51单片机电路、AT24C02掉电存储控制、APR9600语音提示控制。
和LED模拟显示电路。
单片机AT89C51不但具有丰富的I/O接口,还能实现所要求的功能而且能在很大的程度上扩展功能。
(1)、接收头部分
本系统采用HS-IR红外一体化接收头接收遥控器发送的波形,它是远距离一体化红外接收头,他是一种集红外接收、放大、整形于一体的集成电路,不需要任何外接元件,就能完成从红外线接收到输入与TTL电平信号兼容的所以工作,没有红外遥控信号时为高电平,收到海外信号时为低电平,而且和普通的塑封三极管大小一样,它适合各种红外线遥控和红外线数据传输,它可以直接将信号输出到微处理器解码,具有高的接收灵敏度和长的接收距离,该器件为底电压和低功率,其调制频率为37.9KHZ,40KHZM56KHZ。
工作电压为2.5V~7.5V。
他有三个引脚,包括供电脚,接地和信号输出脚。
红外接收头内部放大器的增益很大,很容易引起干扰,因此在接收头的供电脚上须加上滤波电容,一般在10uf以上。
在供电脚和电源之间接入1K欧电阻,进一步降低电源干扰具体电路如下中电路图所示。
当红外线接收器件接收到发射器的红外指令信号时,接收头将红外信号变成电信号,再经过放大、整形后发送到AT89C51的INT0端,由CPU完成解码处理,并进行识别,以控制密码所的工作,工作电路如下图所示:
(2)、锁头控制
锁头电磁铁控制部分:
锁头控制部分包括输出驱动、继电器、电磁铁和锁头。
电路图如下所示。
控制信号由AT89C51的P.3口输出,经过驱动管9012,控制继电器动作,进而控制电磁铁带动锁头,实现开、关的控制。
继电器并联二极管电路:
电路形式见图3,主要是为了保护晶体管等驱动元器件。
当图中晶体管VT由导通变为截止时,流经继电器线圈的电流将迅速减小,这时线圈会产生很高的自感电动势与电源电压叠加后加在VT的c、e两极间,会使晶体管击穿,并联上二极管后,即可将线圈的自感电动势钳位于二极管的正向导通电压,此值硅管约0.7V,锗管约0.2V,从而避免击穿晶体管等驱动元器件。
并联二极管时一定要注意二极管的极性不可接反,否则容易损坏晶体管等驱动元器件。
(3)、语音提示部分
由APT9600语音录放芯片和喇叭组成。
APR9600语音芯片采用模拟技术的一款音质好,噪音低,不怕断电、可反复录放的新型语音电路,单片电路可录放32~60S,串行控制时可分256段以上,并行控制时最大可分8段。
APR9600驱动、停止信号CE由AT89C51的P2.7控制,模式信号MSEL1/2接高电平为并行控制,分八段,每段最大7.5S;录放选择信号接高电平为放音方式。
录音电路如下图所示:
2.3、AT24C02引脚图及其引脚功能
AT24C02芯片引脚配置如图3所示。
图3AT24C02引脚配置图
AT24C02芯片DIP封装,共有8个引脚,其引脚说明如下表:
2.3.1、AT24C02时序图
(1)、要读写AT24C02,读写周期和所写的程序时序很主要,下是AT24C02的周期范围和其时序图:
读写周期范围
其时序图如下:
2.3.2、本系统中AT24C02掉电存储单元的设计
掉电存储单元的作用是在电源断开的时候,存储当前设定的单价信息。
AT24C02是ATMEL公司的2KB字节的电可擦除存储芯片,采用两线串行的总线和单片机通讯,电压最低可以到2.5V,额定电流为1mA,静态电流10Ua(5.5V),芯片内的资料可以在断电的情况下保存40年以上,而且采用8脚的DIP封装,使用方便。
其电路如图4所示。
图4掉电存储电路原理图
图中R8、R10是上拉电阻,其作用是减少AT24C02的静态功耗,由于AT24C02的数据线和地址线是复用的,采用串口的方式传送数据,所以只用两根线SCL(移位脉冲)和SDA(数据/地址)与单片机传送数据。
每当设定一位密码,系统就自动调用存储程序,将密码信息保存在芯片内;当系统重新上电的时候,自动调用读存储器程序,将存储器内的密码等信息,读到缓存单元中,供主程序使用。
2.3、APR9600介绍
台湾公司最新推出的APR9600语音录放芯片,是继美国ISD公司以后采用模拟存储技术的又一款音质好、噪音低、不怕断电、可反复录放的新型语音电路,单片电路可录放32-60秒,串行控制时可分256段以上,并行控制时最大可分8段。
与ISD同类芯片相比它具有:
价格便宜,有多种手动控制方式,分段管理方便、多段控制时电路简单、采样速度及录放音时间可调、每个单键均有开始停止循环多种功能等特点,同时保留了ISD2500芯片的一些特点,都是DIP28双列直插塑料封装,。
2.3.1、APR9600芯片管脚说明
AT24C02芯片引脚配置如下图所示,其管脚说明如下表
(一)所示。
表
(一)为管脚功能说明。
管脚
功能
管脚
功能
1、/M1
第一段控制或连续录放控制(低电平有效)
15、SP-
外接喇叭负端
2、/M2
第二段控制或快进选段控制(低电平有效)
16、VCCA
模拟电路正电源
3、/M3
第三段控制(低电平有效)
17、MICIN
话筒输入端
4、/M4
第四段控制(低电平有效)
18、MICREF
话筒输入基准端
5、/M5
第五段控制(低电平有效)
19、AGC
自动增益控制端
6、/M6
第六段控制(低电平有效)
20、ANA-IN
线路输入端
7、OSCR
振荡电阻
21、ANA-OUT
线路输出端(话筒放大器输出端)
8、/M7
第七段控制及片溢出指示(低电平有效)
22、STROBE
工作期间闪烁指示灯输出端(低电平有效)
9、/M8
第八段控制(低电平有效)及操作模式选项
23、CE
复位/停止键或启动/停止键(高电平有效)
10、/BUSY
忙信号输出(工作时出0,平时为1)
24、MSEL1
模式设置端
11、BE
键声选择(接1为有键声,0则无)
25、MSEL2
模式设置端
12、VSSD
数字电路电源地
26、EXTCLK
外接振荡频率端(用内部时钟时接地)
13、VSSA
模拟电路电源地
27、/RE
录放选择端(0为录音、1为放音)
14、SP+
外接喇叭正端
28、VCCD
数字电路正电源
2.3.2、APR9600操作模式设置功能表
APR9600操作模式表
MSEL1(24脚
MSEL2(25脚
/M8(9脚
有效键/M1-8为段控制键/CE多为停止、复位键
功能(以60秒计)
0
1
0/1
/M1、/M2、CE
并行控制,分二段,每段最大30秒
1
0
0/1
/M1、/M2、/M3、/M4、CE
并行控制,分四段,每段最大15秒
1
1
1
/M1~/M8、CE
并行控制,分八段,每段最大7.5秒
1
1
0
CE
单键控制,单段7.5秒循环。
CE为启动/停止键
0
0
1
/M1、CE
串行顺序控制,可分一至任意多段
0
0
0
/M1、/M2、CE
串行选段控制,/M2系选段快进键。
(录音时
/M8=1时可录一至任意多段,/M8=0时只能录两段。
注1、RE=0(置低电平)为录音状态;RE=1(置高电平)为放音状态。
注2、/M1~/M8键在有效段控放音时,按一下键即开始放音一段,放音期间再按一下即停止;如按键不放即循环放音
注3、/M1~/M8键在有效段控录音时,按住不放为录音,松键即停止。
APR9600的每种操作模式都有对应的有效键,而且同一个键在不同操作模式下可能有不同的功能。
因此在芯片设计、使用前用户应详尽了解芯片的各种操作模式,选择最合适自己的方式设计,电路也会变得非常简单。
2.4.3、APR9600的控制模式
串行控制模式
串行控制方式用到的键要少得多,它仅需要一、二个键来控制所有的语音段录放,而且段数可以足够多,每段也没有时间限制。
只是在选段上没有并行控制模式方便。
置MSEL1、MSEL2均为0,在录音时/M8置1。
置/RE端为0为录音状态,按住/M1即开始录第一段,松键即停止。
再按住/M1即录第二段,如此一直分段录音,直到芯片溢出。
在放音时(/RE=1)有两种状态,/M8置1为串行顺序控制方式,按一下/M1即放音第一段,再按一下即放第二段,如此顺序逐段放音,到最后一段结束时即停止放音,必须按一下CE键复位,然后再按/M1键就可以又从第一段放音。
这种方式下的段不可选择只能按录音的顺序播放,适合走马灯、流程控制等电路使用;/M8置0为串行选段控制方式,按一下/M1只能放音第一段,再按还是放音第一段。
这时的/M2有效成为快进选段键,每按一下/M2即向后移动一段,例如现在按了三下/M2,再按/M1就放音第四段。
因此可以实现选段放音。
按/CE键复位为第一段。
电源电压4.5-6.5V,静态电流1uA,工作电流25mA。
其外接振荡电阻与采样率、语音频带、录放时间的关系见下表,该电阻可以根据需要的时间和音质效果无级调节。
振荡电阻(7脚OSCR)
采样频率
录放音频带
录放音时间
44K
4.2KHZ
2.1KHZ
60s
38K
6.4KHZ
3.2KHZ
40s
24K
8.0KHZ
4.0KHZ
32s
第3节系统的软件设计
本系统的软件设计主要可分2个部分,红外线发射部分和红外线接收部分。
发射部分有:
主程序模块、定时中断程序、发射载波中断服务程序、中途等待中断服务程序(键盘扫描程序)、原始波发送程序服务程序五大模块。
接收部分有:
主程序模块、外部中断程序、解码和存储密码中断服务程序、密码对比子程序、AT24C02读写程序、密码修改子程序六部分组成下面对各部分模块作介绍。
3.1、系统发射部分软件介绍
1、本系统发射部分采用定时器中断产生38MHZ的载波,其流程图如下图使示:
以下是对各个参数设置简单的介绍。
(1)、TMOD的值设定:
定时器特殊功能寄存器的选择如下介绍
C/T:
定时器/计数器选择:
1:
计数器
0:
定时器
GAME:
选通门控制信号:
1:
由控制位TRx和引脚INTx共同控制启动
0:
仅由控制位TRx启动
M1M0工作方式选择:
00:
方式0,13位定时器/计数器
01:
方式1,16定时器/计数器
10:
方式2,8位自动重装定时器/计数器
11:
方式3,
(2)系统的设置:
本系统采用遥控器采用定时器T1工作方式1,由控制位TR1控制。
(即T1方式字段设置为C/T=0、GAME=0、M1M0=10,T0方式字段值D3~D0为0000所以TMOD=20H)。
定时器T1方式的入口地址为001BH本系统用软件来控制定时器的开启和关断,本系统采用工作方式2,fosc=12MHz。
需要产生频率为38MHZ的载波,定时器方式2最大计数值为28=256,其定时时间的计算公式:
△T=(28—计数初值)×机器周期(12/fosc)
计数初值=28—欲计数脉冲数=28—△T/机器周期
由上计算公式可算得TH1与TH0两个8位的定时器的设置为TH1=0f3H、TL1=0f3H
2、控器的编码格式介绍
遥控码采用脉冲个数编码,不同的脉冲个数代表不同的码,最小为1个脉冲.最大设置14个脉冲。
为了接受可靠,第一位码宽为5MS,其余为2MS,遥控码数据帧间隔大大于10毫秒,其输出编码一帧波形如下图所示:
3、遥控码的发射
当某个操作键按下时,单片机先读出键值,然后根据键值设定遥控码的脉冲个数
再调制成38MHZ的方波由红外线发射管发射出去。
.P3.5端口的输出调制如附录所示
当红外线接收器输出脉冲帧数据时,第1位码的低电平将启动中断程序,实时接收数据帧。
3.2、红外线接收部分软件介绍
本系统的接收部分采用外部中断进行解码,然后判断解出码是否是功能码,如果是功能码则执行相应功能程序,如果不是功能码,是数字码则存储,直到存储6位密码。
具体流程图如下使示:
1、外部中断程序:
外中断是由外部原因引起的中断,有两个中断源。
即外中断0(INT0)和外中断1(INT1),中断请求信号由引脚P3.2(INT0)和P3.3(INT1)输入。
本系统中使用的是外中断0(INT0)。
外中断请求信号有两种方式,一是电平方式,二是脉冲方式。
可通过有关控制位的定义进行规定。
电平方式为低电平有效,只需在单片机的(INT0)和(INT1)中断请求输入端采样到有效的低电平时,就会激活外部中断。
脉冲方式则在脉冲的后负跳沿有效,即在相邻两个机器周期对中断请求引入端进行采样中,如前一次为高,后一次为低即为有效中断请求。
这就要求在这种中断方式,中断请求信号的脉冲宽度必须大于一个机器周期,以保证电平变化能被单片机采样到。
本系统使用的是脉冲方式
本系统采用外部中断INT0,其入口地址为0003H,采用软件控制中断的开开启和停止,但遥控器有发送38MHZ的波形,经过红外线一体化接收头接收到波形,出现电平负跳变,则跳入中断程序进行解码和其他的操作,具体流程图如图3。
2、红外线的解码
在数据接收时,将对第一位(起始位)码宽进行验证,若第一位低电平码的脉宽小于5MS将作为错误码处理,当第一位低电平码的脉宽是5MS则开始解码。
采用软件延时的方法计算出接收的波形中,低脉冲的个数,将个数存入累加器A中,在此过程中需要判断间隔位的高电平当脉宽大于3MS时
接收流程图
结束接收信号,然后根据累加器A中的脉冲个数,执行相应的输出口的操作。
红外线接收器接收到的一帧波形如下所示:
3.3、AT24C02的读写程序
1、系统的写操作
AT24C02写操作主要有2种一种是字节写,另一种是页写,本系统采用字节写的方式,下面对字节写做一下介绍:
在字节写的模式下,主器件发送起始命令和从器件地址信息(R/W位置0)给从器件,在从器件产生应答信号后,主器件发送AT24C02的字节地址,主器件在收到从器件的另一个应答信号后,再发送数据到被寻的存储单元。
AT24C02再次应答,并在主器件产生停止信号后开始数据擦写。
其字节写时序如下图所示:
2、系统的读操作
AT24C02的读操作有三种不同的方式:
立即地址读,选择读和连续读。
本系统采用连续读的方式,下面对联系读做简单的饿介绍。
在AT24C02发送完一个8位字节数后,主器件产生一个应答信号来响应,告知AT24C02还有跟多的数据传送,对应每个主机产生的应答信号AT89C02将发送一个8位数据字节,当主器件不发送应答信号而发送停止位时结束此操作,其连续读的时序如下图所示:
第4节系统调试与测试结果分析
根据系统设计方案,本系统的调试共分为三大部分:
遥控器软硬调试,接收电路软硬调试和接收发送联调。
测试包括遥控器的测试、掉电存储测试测试,接收电路功能调试
4.1使用的仪器仪表
数字万用表
烧写器
双踪稳压稳流电源
数字示波器
数字存储示波器
4.2系统调试及调试预想结果
根据系统设计方案,本系统的调试共分为三大部分:
遥控器调试,接收电路调试和发送接收联调。
初设的结果:
1、遥控器按键正常工作,并软件与硬件结合能够发出正常波形
2、接收到正常波形,并实现相应的功能
①开机数码管全部显示0,LED全部点亮输入6位密码后LED显示10H,按开锁键如果密码正确则开锁,并LED显示20H数码管显示1SSS语音提示“已经开锁”。
密码不正确则不开锁LED显示40H数码管显示1FFF,语音提示“密码错误”。
②输入6位密码后LED显示10H,按修改密码后,如果密码对比正确则LED显示02H数码管显示2S00,语音提示“请输入新密码”,如果密码对比不正确则显示04H数码管显示2FFF,语音提示“修改失败”。
如果对比正确,再输入六为新密码按确定键,LED显示11H数码管显示3SSS语音提示“密码修改成功”。
③按取消键LED显示00H数码管显示0,语音提示“清除”。
4.3测试过程及结果
1、遥控器部分测试过程及结果
测试过程
测试结果
通电,用数字万用表测试按键是否正常工作
所有正常
将程序烧写入芯片,用数字示波器测试芯片是否正常工作
正常工作
用数字存储示波器测试每个按键按下后对应输出波形是否正常
正常
2、接收主电路的测试过程及结果
测试过程
测试结果
将程序烧写入芯片,用数字示波器测试芯片是否正常工作
正常工作
写入程序观察指示灯是否正常工作
工作正常
将语音管脚置低电平看语音提示是否正确
正确
1、发送接收联调
测试过程
测试结果
通电,用数字存储示波器检测按键按下后接收头接收波形是否正确
正确
通电,按键按下后相应功能是否实现
实现
结束语
红外线遥控器是目前使用最广泛的一种通信和遥控手段。
由于红外线遥控器装置具有体积小、功耗低、抗干扰能力强、工作可靠、使用方便、成本低,将它应用于红外线遥控器密码锁又具有较强的隐蔽性、保密性。
能实现密码开锁、语音提示、智能修改密码等功能。
通过本次设计,使我学到了许多书本上无法学到的知识,也使也深该体会到电子技术应用领域的广泛,不仅使我对学过的电子知识有了很多的巩固,还对电子的学习产生了更浓厚的兴趣。
通过查找资料,确定选题,和导师协商,具体操作等等一系列的过程让我学到了很多平时无法学到的知识,累计到了很多经验,为我以后参加社会工作奠定了坚实的基础。
通过本次设计,我知道了耐心的调试,仔细的检查
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 MSC51 单片机 红外线 电子 密码锁 毕业设计