红外遥控密码锁的设计(毕业设计)_第1页
红外遥控密码锁的设计(毕业设计)_第2页
红外遥控密码锁的设计(毕业设计)_第3页
红外遥控密码锁的设计(毕业设计)_第4页
红外遥控密码锁的设计(毕业设计)_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第 1 页 共 52 页 红外遥控密码锁的设计 前言 红外线 IrDA, 简称 IR, 是一种点对点的无线通讯方式,只能进行短距离的无线数据的传输,且中间不能有障碍物。红外线又称红外光波, 在电磁波谱中,光波的波长范围为 0.01um 1000um;波长为 0.76um 1000um的光波为红外光 (线 ),红外线遥控是利用近红外光传送遥控指令的,波长为 0.76um 1.5um;用近红外作为遥控光源,是因为目前红外发射器件与红外接收器件 的发光与受光峰值波长一般为 0.8um 0.94um,在近红外光波 段内,二者的光谱正好重合,能够很好地匹配,可以获得较高的传输效率及较高的可靠性。 目前红外线得到了很普片的应用,如 红外线鼠标,红外线打印机,红外线键盘等等。 本论文设计的是基于 C51 单片机的红外遥控密码 锁 。该锁采 用 6位 数作为密码, 红外遥控密码锁的应用研究主要应用了单片机的编程进行红外的编码与解码,并通过单片机实现密码的设置、修改及识别功能。 一 绪论 1.1 课题背景 进入二十一世纪以来各种电子信息技术进入高速发展阶段,包括信息系统技术 微电子、计算机和现代通信技术、传感器技术,这也包括红外线技术,红外线是一种人 的肉眼看不见的光线,最近二三十年来,初露头角的红外技术,在各个领域里获得了广泛的应用。开始应用到生产上,并形成了一门崭新的技术 红外技术。本设计针对传统机械锁的不足而设计的通过红外来控制的密码锁。 1.2 红外通讯 红外通讯,顾名思义,就是通过红外线传输数据。在电脑技术发展早期,数据都是通过线缆传输的,线缆传输连线麻烦,需要特制接口,颇为不便。于是后来就有了红外、蓝牙、等无线数据传输技术。 红外通讯技术利用红外线来传递 第 2 页 共 52 页 数据,是无线通讯技术的一种。红外线的特征:红外传输是一种点对点的传输方式,无线,不能离的 太远,要对 准方向,且中间不能有障碍,由于红外线的直射特性, 红外通讯技术不 太 适合传输障碍比较多的地方。因此,红外通讯技术多数情况下传输距离短、传输速率不高。 1.3 密码锁的发展趋势与特点 密码锁产生也是经历了一些阶段的,有传统的机械密码锁,电子密码锁,数字密码锁等。随着科学技术的发展,一些以芯片特别是单片机为处理核心的新型密码锁开始不断出现。 电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁 等 任务 。 本论文就以 AT89C51 单片机设计了一个红外遥控密码锁。 二 密码锁的总 体设计 2.1 密码锁的结构与组成 该锁采用 80C51 作为本设计的核心,由遥控发射部分及主机接收部分组成。 2.1.1 遥控发射部分 遥控发射器主要由 AT89C51 单片机,红外发射二级管,矩形键盘,数码显示管及复位电路 等 组成。该部分的结构图如图 2-1所示。 图 2-1 遥控发射结构框图 AT89C51 红外发射器 显 示 复 位 晶 振 键 盘 第 3 页 共 52 页 2.1.2 主机接收部分 主机接收部分主要由 AT89C51 单片机,红外接收头,矩形键盘,数码显示管,报警器,电磁锁及复位电路 等 组成。该部分的结构图如图 2-2所示。 图 2-2 主机结构框图 2.2 密码锁的工作原理 2.2.1 基本工作原理 主机上通过键盘输入 6 位密码,将输入的密码与设定的密码进行比较,如果相同则驱动电磁锁进行开锁,如果不相同则不解锁;当从遥控器上输入 6 位密码时利用红外给主机一个中断信号,使主机执行中断服务程序(解码程序),来控制解锁与否。 红处线发射及接收控制 电路均采用 8051 单片机来实现,电路简单,输出控制方式可选择,实用性强。具体工作过程如下: 发射时如图 2-3 所示,通过定时器 T1( P3.5)口,利用定时中断来发射信号,定时器 1 中断服务程序的功能是:红外管发射的信号需经过高频(采用38.5KHZ)调制载波才可发射出去,利用定时器 1 的定时作用,在发射高频脉冲时,通过定时对 P3.5 口的取反的操作,使发射信号调制成 38.5KHZ 的高频。再经过红外发射二级管发射,发射距离为 8-10米。 AT89C51 红外接收头 显 示 复 位 晶 振 键 盘 电磁锁 报警器 第 4 页 共 52 页 图 2-3 红外发射框图 接收时如图 2-4 所示,利用 P3.2 口(外部中断 0)的下降沿触发中断来接收信号,并通过 P3.3 口来判断高低电平。外部中断 0 的 中断服务程序的功能是:由接收第一位码的 下降沿触发中断后,对第一位(起始位)码的码宽进行验证。若第一位低电平码的脉宽小于 2ms,将作为错误帧处理。当间隔位的高电平脉冲宽大于 3ms 时,结束接收,然后根据累加器 A中的脉冲数,执行相应的功能操作。 图 2-4 红外接收框图 AT89C51 P3.5 红外发射二级管 AT89C51 P3.2( INT0) P3.3 红外接收头 第 5 页 共 52 页 2.2.2 红外发射信号的编码 遥控器信息码是由 AT89C51 单片机的定时器 T1调制成 38.5KHZ 红外载波信号,而关键是它的编码,在这里遥控器的编码采用脉冲个数编码格式,不同的脉冲个数代表不同的操作码信息,最少为 2 个脉冲(采用 2 个),其它信息码的脉冲个数逐个递增。为了使接收尽量可靠,第一位码宽为 3ms,其余码宽为 1ms,码间距为 1ms,遥控码数据间隔大于 10ms。遥控器上每个键都有唯一的一个键号,单片机通过查得按下键的键值发约定个数的脉冲。遥控器的编码格式如图 2-5所示。 频率为 38.5KHZ,即周期约为 26us,第一位码需 115 个脉冲周期,其余为 38个脉冲周期,结束帧至少为 385 个脉冲周期。 按键 0 编码输出格式 115 个 38 个 26us 3ms 1ms 1ms 按键 1编码输出格式 115 个 38 个 38 个 3ms 1ms 1ms 1ms 1ms 第 6 页 共 52 页 两帧信号之间的输出格式 一帧信号 两帧信号间隔 一帧信号 115 个 38 个 38 个 115 个 38 个 3ms 1ms 1ms 至少为 10ms 3ms 1ms 1ms 图 2-5 遥控器编码图 2.2.3 红外接收 信号的解码 接收信号的解码是根据红外线接收器输出脉冲帧的格式来进行解码的,即用累加器 A分别对符合条件的负跳变脉冲进行计数。当红外线接收器输出脉冲帧数据时,第一位码的低电平将启动中断程序,实时接收数据帧。在接收数据帧时,根据发射帧的格式将对第一位(起始)码的码宽进行验证。若第一位低电平码的脉冲宽小于 2ms,将作为错误码处理。当间隔位的高电平脉冲大于 3ms 时,结束接收,然后根据累加器 A中的脉冲个数,执行相应的操作。图 2-6为红外线接收器输出的一帧遥控码波形图。 停止位 10ms 1ms 10ms 3ms 1ms 图 2-6 红外接收遥控码波形图 第 7 页 共 52 页 2.3 密码锁的主要功能 遥控密码锁的基本设计功能主要有如下几个部分: 1 设定密码:在该设计中设 定了一组原始密码: 123456 用户可以通过矩形键盘的修改键来修改原始密码。比如:按一下修改键,接着在本机上依次输入六位密码,再按确认 (#)键即表示密码被设置好了,那么下次用户输入这组数据即可开锁。 2 密码输入有效显示:为了确信是否有键按下以及防止密码外泄,在电路中设置了数码管显示,即在显示时并不是显示用户按下的数字符号,而是在输入一位时,数码管则显示一个字符“ H”, 这样既巧妙地提醒了用户又保护了 用户密码,此本设计可靠性优点之一。 3 密码错误报警:当用户输入的密码连续三次出现密码错误时,系统会长期报警 不止,这时必须按复位方可停止。乃安全可靠性能之二。 4 遥控开锁:这是本论文设计中的最大特点之处,用户可以不必在主机上输入密码开锁。只要手执遥控器,键入正确密码,便会自动开锁;如果密码错误,同样也会报警。这是本设计优越性能之三。 三 硬件电路设计 3.1 单片机 AT89C51 简介 3.1.1 主要特性 在本设计中,是以 AT89C51 单片机为核心的。 AT89C51 单片机是由 ATMEL 公司推出的 AT89 系列的单片机。 AT89C2051 是一种带 2K 字节闪烁可编程可擦除 片机。单片机的可擦除只读存储器可以反复擦 除 100 次。该器件采用 ATMEL 高密度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能 8 位 CPU 和闪烁存储器组合在单个芯片中, ATMEL 的 AT89C51 是一种高效微控制器, AT89C51 是它的一种精简版本。引脚排练如图 3-1 所示。 它的性能与主要特点如下: (1) 与 MCS-51 微控制器产品系列兼容。 (2) 片内有 4KB 可在线重复编程的快闪擦写存储器( Flash Memory)。 (3) 存储器可循环写入 /擦除 1000 次。 第 8 页 共 52 页 图 3-1 AT89C51 引脚排列图 (4) 宽工作电压范围: Vcc 可为 2.7V-6V。 (5) 128 8 位内部 RAM。 (6) 32 条可编程 I/O 线。 (7) 两个 16 位定时器 /计数器。 (8) 中断结构具有 5个中断源和 2 个优先级。 (9) 可编程全双工串行通道。 (10) 空闲状态维持低功耗和掉电状 态保存存储内容。 3.1.2 管脚说明 主要引脚的具体描述如下; Vcc: 电源。提供掉线、空闲、正常 +5V 工作电压。 Vss(GND): 接地。 P0口 : P0 口可以作普通的双向 I/O 口使用,也可以在 访问外部存储器时用作低 8 位地址线和数据总线。 P1口 : P1口是一个内部提供上拉电阻的 8位双向 I/O口,向 P2口管脚写入1 后,被内部上拉为高电平可用作输入口,当作为输入脚时,被外部拉低的P1口会因为内部上拉而输出电流。 P1口还具备第二功能。 P2口 : P2口是一个内部提供上拉电阻的 8位双向 I/O口,向 P2口管 脚写入1 后,被内部上拉为高电平可用作输入口,当作为输入脚时,被外部拉低的 第 9 页 共 52 页 P2 口会因为内部上拉而输出电流。在访问外部程序存储器和外部数据存储器时,可作为地址总线的高位字节。 P3口 :也是一个双向功能口既可以作普通输入输出口使用,也可以按每一位的定义实现第二功能操作。 P3 口的第二功能如表 1.1 所示。 口 线 第二功能 信 号 名 称 P3.0 RXD 串行输入口 P3.1 TXD 串行输出口 P3.2 /INT0 外部中断 0 P3.3 /INT1 外部中断 1 P3.4 T0 定时器 /计数器 0 P3.5 T1 顶时器 /计数器 1 P3.6 /WR 外部数据存储器写选通 P3.7 /RD 外部数据存储器读选通 表 1.1 RST: 复位输入。当振荡器复位器件时,要保持 RST脚两个机器周期的高电平时间 ALE/PROG: 当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位 字节。 在平时, ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6,因此它可用作对外部输出的脉冲或用于定时目的。 /PSEN: 外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次 /PSEN 有效。但在访问外部数据存储器时,这两次有效的 /PSEN信号将不出现。 /EA/VPP: 当 /EA 保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式 1 时, /EA 将内部锁定为 RESET;当 /EA 端保持高电平时,此间内部程序存储器。在 FLASH编程期间,此引脚也用于施加 12V 编程电源 (VPP)。 XTAL1: 反向振荡放大器的输入及内部时钟工作电路的输入。 第 10 页 共 52 页 XTAL2: 来自反向振荡器的输出。 3.1.3 芯片可擦除性 AT89C51 单片机还具有芯片 擦除 性,整个 PEROM 阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持 ALE管脚处于低电平 10ms 来完成。在芯片擦操作中,代码阵列全被写“ 1”且在任何非空存储字节被重复编程以前,该操作必须被执行。 此外, AT89C51 设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉 电模式。在闲置模式下, CPU 停止工作。但 RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存 RAM 的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。 3.1.4 单片机的电源电路 电源电路由桥式整流 ,滤波电容 ,7805 稳压器及电源指示灯组成。交流电经过桥式整流变成直流电 ,再经过电容滤波。 7805 集成稳压器稳压成为稳定的 5V电源。用一个发光二级管指示灯指示电源状态。电源电路如图 3-2 所示。 图 3-2 电源电路图 3.1.5 复位电路 第 11 页 共 52 页 单片机复位时 RESET需要保持 96个晶振周期的高电平 (即需 8个机器周期 )。复位以后 P0 P3 口输出高电平,堆栈指针 SP 指向 07H,其他特殊功能寄存器和程序计数器 PC 清零。只要 RESET 保持高电平, AT89C51 就会循环复位。 RESET 当由高电平变为低电平后,单片机从程序存储器 0地址开始执行程序。但单片机复位不影响内部 RAM 的状态,包括工作寄存器 R0 R7。 常见的复位电路有:上电复位电路和上电按钮复位电路,在本设计中均采用上电按钮复位电路,如图 3-3 所示。 图 3-3 复位电路 3.1.6 晶振电路 所谓的晶振电路即指单片机的时钟电路。该电路通常有内部时钟电路和外部时钟电路。一般选用前者。单片机芯片内部有一个反相放大器构成的振荡器。反相放大器的输入端为 XTAL1,输出端为 XTAL2,把 XTAL1 和 XTAL2与外部石英晶体及两个电容连接起来可构成一个石英晶体振荡器如图 3-4所示。时钟发生器是一个 2 分频电路。它把晶体振荡器的频率 2 分频后供给片内其他电路。一般电容 C1和 C2起到稳定振荡频率、快速起振的作用。 C1 晶振 C2 图 3-4 晶振电路 3.2 红外发射与接收装置 XTAL1 XTAL2 第 12 页 共 52 页 红外遥控系统一般由红外发射装置和红外接收设备两大部分组成。红外发射装置又可由键盘电路、电源和应用电路组成。通常为了使信号能更好的被传输发送端将基带二进制信号调制为脉冲串信 号,通过红外发射管发射。红外接收 装置通常由一红外接收头组成的接收 电路。 3.2.1 发射装置 常用的发射器为红外发光二级 管它是 录像机、影碟机、音响装置、空调器等各类红外遥控系统中不可缺少的电子器件,它将脉冲编码遥控指 令 用红外发光二极管发射红外线去控制受控装置时,受控装置中均有相应的红外光 电转换元件,通过这个转换把相应的光信号转换为电信号。 这里采用红外 发光二极管如 SE303 PH303,外形和发光二极管 LED 相似,发出红外光(近红外线约 0.93 m )。管压降约 1.4V ,工作电流一般小于 20mA。为了适应不同的工作电压,回路中常串有限流电阻。发射红外线去控制相应的受控装置时,其控制的距离与发射功率成正比。为了增加红外线 的控制距离,红外发光二极管工作于脉冲状态,因为脉动光(调制光)的有效传送距离与脉冲的峰值电流成正比,只需尽量提高峰值电流 ,就能增加红外光的发射距离。提高峰值电流的方法,是减小脉冲占空比,即压缩脉冲的宽度。减小 脉 冲占空比还可使小功率红外发光二极管的发射距离大大增加。要使红外发光二极管产生调制光,只需在驱动管上加上一定频率的脉冲电压。红外发射电路如图 3-5所示。 图 3-5 红外发射电路 3.2.2 接收装置 常用的红外接收装置有 如红外接收二极管,光电三极管等。实用中已有 第 13 页 共 52 页 红外发射和接收配对的二级管。 在本设计中采用 红外一体化接收头 HS0038,接收头图如图 (12)所示。 它有如下优点:一体化的红外接收装置将遥控信号的接收、放大、检波、整形集于一身,并且输出可以让单片机识别的 TTL 信号,这样大大简化了接收电路的复杂程度和电路的设计工作,方便使用。 接收头连接图及红外接收电路图如图 3-6所示 。 HS0038 黑色环氧树脂封装,不受日光、荧光灯等光源干扰,内附磁屏蔽功耗低,灵敏度高。在用小功率发射管发射信号情况下,其接收距离可达 35 m。它 能与 TTL、 COMS 电路兼容。 HS0038 为直立侧面收光型。它接收 红外信号频率为38KHZ,周期约 26 s,同时能对信号进行放大、检波、整形,得到 TTL 电平的编码信号。三个管脚 (1、 2、 3)分别是地、 5 V 电源、解调信号输出端 。 图 3-6 红外接收图 3.3 3 4 矩阵键盘 在单片机运用系统中,经常使用简单的键盘和 BCD 拨码盘作为系统的输入。键盘由一组常开的按键组成,可以通过键盘输入数据或命令。每个按键都 被赋予一个代码,称为键码。键码分为编码键盘和非编码键盘。编码键盘是通过一个编码电路识别闭合键的键码,而非编码键盘是通过软件来识别键盘的。 通常因由于机械触点的弹性作用,触点在闭合和断开瞬间的电接触情况不稳定,造成了电压信号的抖动现象,键抖动的时间一般为 5 10ms。为了避免一次闭合引起 CPU 多次处理,通常回采取去抖动措施。 非编码键盘有独立式键盘和行列式 (矩阵 )键盘。由于前者在按键较多时会站用较多的 I/O 口,因此采用行列式 (矩阵 )键盘。 1. 矩阵键盘及其接口 行列式键盘又叫矩阵键盘,是将 I/O 线的一部分作为行线, 另一部分作为列 第 14 页 共 52 页 线,按键设置在行线和列线的交叉点上,它是通过检测键盘有无闭合以及查找闭合键的键号,一般采用扫描法。在这里设计了一 3 4 的矩阵键盘。 如图 3-7 所示。 (1) 先向所有的行线输出 0,列线输出 1, 然后检测各列线的按键状态,由相应的列线读入累加器 A中。有键按下时,对应的列线输入 0,无键按下时所有的列线输入为 1。 (2) 若有键闭合,依次从行线上逐列输出 0,然后依次检测各列线的状态。若为1,说明闭合键不在该列;若有的为 0,则说明闭合键在该列与行线的交点上。由于每个按键所有的行号与列号不相同,所以每个按 键按行号加列号的值赋予了一个键号。 图 3-7 矩阵键盘图 3.4 74LS164 芯片 在显示部分,运用 LED 静态显示,静态显示方式编程简单,但占用单片机I/O 口线多适合于显示器位数较少的场合。 AT89C51 单片机应用系统中,当串行口空闲时,可用来拓展并行 I/O 口 (这里设定串行口工作在移位寄存器方式 0 状态下 ),作为 LED 静态显示接口。在这里运用 74LS164 来扩展并行 I/O 口,节约单 片机资源 。 74LS164 是一个串行输入 第 15 页 共 52 页 并行输出的移位寄存器 。 并 带有清除端 。引脚排练图以及逻辑图如图 3-8所示。 74LS164 引脚定义图 74LS164 逻辑 图 图 3-8 74LS164 器件图 引脚说明: 74LS164 是串行输入、并行输出的移位寄存器,其引脚功能如下: A、 B 串行输入端。 Q0-Q7 并行输入端。 /MR 清除端。 CP 时钟 脉冲输入端。在脉冲上升沿实现移位;当 CP=0、 /MR=1 时,输出保持不变。 3.5 数码管 单片机运用系统中,使用的显示器主要有 LED(发光二级管显示器)和 LCD(液晶显示器)。这两种显示器成本低廉,配置灵活,与单片机接口方便。 LED 显示器结构与原理: LED 显示器是由发光二级管显示字段的显示器件有共阴极与共阳极两种,如图 (15)所示。其中 7 只发光二级管 (a-g7 段 )构成字符“ 8”,另外还有一只小数点发光二级管 dp。当某个发光二级管的阳极为高电平时,发光二级管点亮。当人为控制某几段发光二级管点亮就能显示某个 数码或字符。 LED 显示器有静态显示与动态显示两种方式。 LED 显示器的字码段 (7 段码 )如表 3-9 所示。 第 16 页 共 52 页 图 3-9 LED 显示器 显示字符 共阴极字段码 共阳极字段码 显示字符 共阴极字段码 共阳极字段码 0 3FH C0H 9 6FH 90H 1 06H F9H A 77H 88H 2 5BH A4H B 7CH 83H 3 4FH B0H C 39H C6H 4 66H 99H D 5EH A1H 5 6DH 92H E 79H 86H 6 7DH 82H F 71H 8EH 7 07H F8H P 73H 8CH 8 7FH 80H 熄灭 00H FFH 表 1.2 LED显示器的字段码( 7 段码) 3.6 发光二级管 LED 1 LED 简介 发光二极管简称为 LED。由镓 (Ga)与砷 (AS)、磷 (P)的化合物制成的二极管, 其核心是 PN 结。 当电子与空穴复合时能辐射出可见光,因而可以用来制成发光二极管,在电路及仪器中作为指示灯,或者组成文字或数字显示。它是半导体二极管的一种,可以把电能转化成光能;而红外二极管在正向导通时会发出红外 光。常简写为 LED。发光二极管与普通二极管一样是由一个PN结组成,也具有单向导电性。 2 LED 特性 (1) 发光二极管的反向击穿电压约 5 伏。主要特性是 正向导通、反向截止、 第 17 页 共 52 页 击穿特性。 它的正向伏安特性曲线很陡,使用时必须串联限流电阻以 控制通过管子的电流,以防止击穿。 图 3-10 LED 伏安特 性图 (2) 发光二极管 (LED)的主要参数 a. 最大正向电流 Ifm: 允许加的最大正向直流电流,超过此值 LED 损坏。 b. 正向工作电流 IF: 指 LED 正常发光时的正向电流值。 c. 正向工作电压 VF: 在给定的正向电流下测得的工作电压。 d. 最大反向电压 VRm: 允许加的最大反向电压,超过此值 LED 可能被击穿损坏。 e. 伏安特性 : LED 的电压与电流的关系可用图 3-10表示。 3.7 电磁继电器 在开锁部分采用电磁继电器。通过单片机来控制其线圈的通断电,从而控制其触点的吸和与断开。 继电器是一种电子控制器件,它具有控制系统 (又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。一般用符号“ J”表示。 1 电磁继电器的工作原理和特性 电磁式继电器一般由铁芯、线圈、衔铁、触点簧片等组成的。只要在线圈两端加上一定的电压,线圈中就会流过一定的电流,从而产生电磁效应,衔铁就会在电磁力吸引的作用下克服返回弹簧的拉力吸向铁芯,从而带动衔铁的动触点与静触点(常开触点)吸合。当线圈断电后,电磁的吸力也随之消失,衔铁就会在 第 18 页 共 52 页 弹簧的反作用力返回原来的位置,使动触点与原来的静触点(常闭触点)吸合。这样吸合、释放,从而达到了在电路中的导通、切断的目的。驱动电路如图 3-11所示。 2 电磁式继电器的主要参数 (1) 额定工作电压 : 是指继电器正常工作时线圈所需要的电压。根据继电器的型号不同,可以是交流电压,也可以是直流电压。在这采用直 流电压 (+5V)的工作电压来驱动。 (2) 直流电阻 : 是指继电器中线圈的直流电阻 . (3) 吸合电流 : 是指继电器能够产生吸合动作的最小电流。在正常使用时,给定的电流必须略大于吸合电流, 这样继电器 才能稳定地工作。 图 3-11 电磁继电器驱动电路图 3.8 报警器 在报警部分,使用扬声器。从单片机发出的引脚 (P2.3)控制信号,经一个三极管放大后再驱动扬声器,使整个系统产生报警。报警电路如图 3-12 所示。 图 3-12 报警电路图 第 19 页 共 52 页 4 软件程序设 4.1 遥控发射部分程序设计 该部分主要分为主程序、按键扫描程序以及遥控编码脉冲发射程序。 1. 主程序 主要是对定时器 T1 定时的方式的设定、计数器的初始化等 。主程序程序流程图如图 4-1所示。 N Y N Y Y 图 4-1 主程序流程图 主程序的初始化程序如下 : 开始 初始化 键盘扫描 有键闭 合 ? 转按键功能程序 转脉冲发射程序 *键按下? 开始发送 返回 第 20 页 共 52 页 START: LCALL CLEAR LJMP START LCALL KEYIN RET AJMP START CLEAR: MOV P1,#0FFH CLR P3.5 MOV SP,#70H MOV IE,#00H;关总中断与中断 1 MOV TMOD,#20H;设定时器 T1 方式 2自动重装模式 MOV TH1,#0F3H;定时 13us MOV TL1,#0F3H SETB EA;开总中断 MOVE SCON,#OOH;置串行口工作方式 0 2. 按键扫描程序 在此设计的是 3行 4列的矩阵键盘 。程序流程图如图 4-2所示。 N N Y Y Y N Y 图 4-2 按键扫描程序流程图 开始 有键闭 合 ? 延时 10ms 有键闭 合 ? 逐列逐行扫描 判断闭合键键号 闭合键释放否 ? 闭合键号放入 A 返回 第 21 页 共 52 页 按键扫描程序如下 : KEYIN : MOV P1,#0F8H MOV R3,A MOV A,P1 MOV A,R5 CJNE A,#0F8H,NEXT1 LJMP NEXT7 KEYOUT: RET NEXT6: MOV A,R4 NEXT1: LCALL DELAY10MS ADD A,#04H;行号加四 MOV A,P1 MOV R4,A CJNE A,#0F8H,NEXT2 DJNZ R7,KEYOUT LJMP KEYOUT MOV A,R2;进行下一列扫描 NEXT2: MOV R4,#0;行号 RL A MOV R7,#03H;扫描行 数 MOV R2,A MOV R2,#0FEH LJMP NXLOOP NXLOOP: MOV R3,#0;列号 QJZ: MOV A,R4;置行号 MOV R6,#04H ADD A,R3;行号加列号 MOV P1,R2 MOV 30H,A;置键号 MOV A,P1 MOV A,P1 ANL A,#0F8H ANL A,#0F0H CJNE A,#0F8H,NEXT3 CJNE A,#0F0H,KEYOUT LJMP KEYOUT LCALL DELAY10MS;待按键释放 NEXT3 : CLR C CJNE A,#0F0H,KEYOUT RLC A MOV A,30H;键号放入 A NEXT7: RLC A RET MOV R5,A JC NEXT4 LJMP QJZ;求键值 NEXT4: DJNZ R6,NEXT5 LJMP NEXT6 NEXT5: MOV A,R3 INC A;列号加一 第 22 页 共 52 页 3. 遥控编码脉冲发射程序 遥 控器的编码采用脉冲个数编码格式,不同的脉冲个数代表不同的操作码信息。程序流程图如图 4-3所示。 Y N 图 4-3 遥控器编码程序流程图 遥控编码脉冲发射程序如下 : SEND: JNB BEGIN,START;BENGIN 为 *(开机 )键标志 CLR RS1;选工作寄存起器 1 SETB RS0 MOV R1,A;装入发射脉冲数 MOV R0,#0FAH;第一个码 :250x0.012ms=3ms AJMP SEND2 SEND1: MOV R0,#53;中间码 :83x0.012=1ms 发射开始 装入发射脉冲个数 发送 3ms 停发 1ms (R1)-1=0? 发 1ms 脉冲 停发 1ms 停发 10ms 以上 返回 第 23 页 共 52 页 SEND2: SETB TR1;开高频定时器 1 中断调制 (38KHZ) SETB ET1 NOP NOP NOP NOP NOP NOP NOP NOP DJNZ R0,SEND2 MOV R0,#64H;码距 :100x0.010ms=1ms SENDOUT: CLR ET1;关高频定时器 1 中断调制 (38KHZ) CLR TR1 CLR P3.5 NOP NOP NOP NOP NOP DJNZ R0,SENDOUT DJNZ R1,SEND1;若 R1 中仍有脉冲则继续发送 1ms 的码 LCALL DELAY500MS RET INTT1: CPL P3.5 RETI 4.2 主机接收部分程序设计 主机程序部分主要分为主程序 、按键扫描程序以及解码接收程序。 1. 主程序 第 24 页 共 52 页 主程序中主要是对外部中断 0 的设定以及一些存储单元的清零等初始化工作。主程序程序流程图如图 4-4所示。 N Y 图 4-4 主程序流程图 主程序的初始化程序如下 : START: LCALL CLEAR MOV MIMACWCS,#0;密码错误存储单元清零 LCALL KEYIN MOV WZDMIMACWCS,#0 LJMP START NOP CLEAR: MOV SP,#60H NOP SETB IT0;负跳变中 断 NOP SETB EX0;开外部中断 0 NOP SETB EA;开总中断 NOP CLR P2.0;关锁 LJMP START CLR P2.3;关报警 RET MOV 20H,#0;清零 MOV 21H,#0 MOV 29H,#0 MOVE SCON,#00H;置串行口工作方式 0 开始 初始化 键盘扫描 有键按下 ? 转按键功能子程序 第 25 页 共 52 页 2. 按键扫描程序如同上所示。 3. 解码接收程序。 解码接收程序利用外部 中断 0 的中断服务程序实现的。外部中断 0服务子程序流程图如图 4-5所示。 N Y N Y 图 4-5 解码接收程序流程图 解码接收程序如下 : INT0SERVE: PUSH ACC PUSH PSW PUSH DPL PUSH DPH CLR EX0;中断一来关外中断 0 JNB P3.3,INT0SERVE1;确认中断 INT0RET: POP DPH;若为干扰信号则开中断 0退出中断 POP DPL 中断开始 低电平脉宽 2ms? 接收并对低电平 (负 )脉冲计数 高电平脉宽 3ms? 按脉冲个数至对应功能程序 中断返回 第 26 页 共 52 页 POP PSW POP ACC SETB EX0 RETI INT0SERVE1: CLR A MOV DPH,A;用数据寄存器对第一个码的低电平计时 MOV DPL,A INT0SERVE2: JB P3.3,INT0SERVE3;开始对低电平计时当 p3.3 为高电平 1 时 ;计时结束跳出循环并计时低电平是否大于 2ms INC DPTR NOP NOP AJMP INT0SERVE2;循环周期为 8us INT0SERVE3: MOV A,DPH;利用 DPTR 的高 8 位判断低电平是否大于 2ms JZ INT0RET;A 不为 0,说明 DPL 有进位则 255x8us=2ms 即为 ;第一个脉冲 ,A为 0,说明小于 2ms 是一个干扰 ;则退出中断程序 CLR A INT0SERVE4: INC A;脉冲个数加一 INT0SERVE5: JNB P3.3,INT0SERVE5;为低电平则 等待 MOV R1,#06H;为高电平则开始对高电平计时 INT0SERVE6: JNB P3.3,INT0SERVE4;当 P3.3 有副负脉冲时,且前一高电平小 ;于 3ms ,则脉冲个数加一 LCALL DELAY513US DJNZ R1,INT0SERVE6;若前一高电平脉宽大于 3ms时即为一结帧 DEC A DEC A JZ FUNCION0;A 为 0则接收 0 号键 DEC A 第 27 页 共 52 页 JZ FUNCION1;A 为 0则接收 1 号键 DEC A JZ FUNCION2;A 为 0则接收 2 号键 DEC A JZ FUNCION3;A 为 0则接收 3 号键 DEC A JZ FUNCION4;A 为 0则接收 4 号键 DEC A JZ FUNCION5;A 为 0则接收 5 号键 DEC A JZ FUNCION6;A 为 0则接收 6 号键 DEC A JZ FUNCION7;A 为 0则接收 7 号键 DEC A JZ FUNCION8;A 为 0则接收 8 号键 DEC A JZ FUNCION9;A 为 0则接收 9 号键 DEC A DEC A JZ FUNCION11;A 为 0 则接收 11 号键 LJMP INT0RET;退出中断服务子程序 RET 第 28 页 共 52 页 结论 本课题研究的是具有单片机功能的红外 遥控密码锁 , 通过掌握其原理及控制过 程 ,以及运用编程来解决红外的编码与解码问题。 最终目的在于学会独立查资料选方案,采购选择器件,巩固所学知识设计单片机程序 , 印刷电路版布局能力、提高计算机的文字录入水平,提高计算机绘图能力,掌握一个电子专用软件设计电子电路,加强电子制作的动手能力,学会电路的调试方法解决实际出现的问题 。 利用一个廉价的单片机芯片来控制一个红外线遥控 系统使其具有远距离遥控 功能。 第 29 页 共 52 页 致谢 首先感谢各位在百忙之中抽出时间对本次设计进行指导的老师。通过这次毕业设计,使我有机会再次对以前所学的知识进行了一次系统的复习,有很多知识点在平常的学习中没有掌握好,再加上使用机会不多,在做毕业设计的过程中的确遇到了不少困难,如在红外编码与解码的程序编写中就找了很多参考资料。在做此毕业设计的时候我也充分利用了身边一切可用的资源,如网络、书籍、老师、同学,结合一切力量终于完成 了毕业设计的全部的内容。最后感谢指导老师在毕业设计中给予我的指导。 第 30 页 共 52 页 参考文献 1单片机原理及接口技术 主编:胡汉才 清华大学出版社 2单片机 与接口 应用 技术 主编: 陶国正 苏州大学出版社 38051 单片机 主编:林伸茂 人民邮电出版社 4跟我学用单片机 主编:肖洪兵 北京航天航空大 学出版社 5基于单片机的电子安全密码锁的设计 主编:郭海英 现代电子技术出社 6电子技术基础(数字) 主编:康华光 高等教育出版社 7红外线与超声波遥控 主编:苏长赞 北京人民邮电出版社 8现代遥控技术及应用 主编:王俊峰 薛鸿德 人民邮电出版社 9数字电子实验及课题设计 主编:郁汉淇 高等教育出版社 10芯源单片机教程 作者:季国 上海芯源电子电器设计中心 第 31 页 共 52 页 附录 A 完整硬件电路图 主机硬件电路图如图所示 : 第 32 页 共 52 页 遥控器硬件电路图如图所示 : 附录 B 源程序清单 第 33 页 共 52 页 遥控器发射程序 : BEGIN BIT 20H.0; 开机标志 ORG 0000H LJMP START ORG 001BH LJMP INTT1 CLEAR:MOV P1,#0FFH CLR P3.5 MOV SP,#70H MOV SCON,#00H

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论