红外电子密码锁设计说明书方案.doc_第1页
红外电子密码锁设计说明书方案.doc_第2页
红外电子密码锁设计说明书方案.doc_第3页
红外电子密码锁设计说明书方案.doc_第4页
红外电子密码锁设计说明书方案.doc_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

目目 录录 第一章第一章 绪论绪论.1 1.1 引言.1 1.2 红外通信基本原理.2 1.3 设计要求.3 第二章第二章 系统设计系统设计 .4 2.1 通信接口组成及工作原理.4 2.2 红外钥匙(从机)组成及工作原理.5 2.3 红外遥控门锁(主机)组成及工作原理.5 2.4 红外钥匙(从机)与红外遥控门锁(主机)之间的通讯协议 .6 第三章第三章 方案选择和论证方案选择和论证7 3.1 红外编码和发射模块.7 3.2 红外解码和接收模块.8 3.3 红外钥匙(从机)子系统设计.11 3.4 数据存储模块设计.11 3.5 红外遥控门锁子系统设计.15 3.6 红外遥控电子密码锁的总体原理图和 pcb 板图设计.17 3.7 电路的仿真.20 第四章第四章 系统软件设计系统软件设计22 4.1 keil uvision 2 软件简介22 4.2 系统功能子程序.22 第五章第五章 系统调试系统调试 .30 5.1 调试仪器.30 5.2 整体调试.30 5.3 硬件单元调试.30 5.4 软件调试.31 第六章第六章 结论结论.32 致致 谢谢33 参考文献参考文献 34 附附 录录35 附录 1 主要元器件清单.35 附录 2 程序清单.36 红外电子密码锁 【摘要】:随着社会科技和人们的生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出, 传统的机械锁由于其构造的简单,被撬的事件屡见不鲜,电子锁由于其保密性高,使用灵活性好, 安全系数高,受到了广大用户的亲呢。 红外电子密码锁是一种以高强度密码序列为基础,在单片机上实现的密码开关。它以红外光作 为信息媒体,从而实现了遥控,也可以配备一个结构简单的接触式通讯接口,坚固并且防损。该锁 具有使用方便、操作简单、价格低廉等特点,给人们的生活带来了极大方便。特别适用于那些正常 人体不宜接近的特殊场合,比如高辐射区、高传染区等。 关键词关键词 : : 红外线红外线 遥控遥控 电子密码锁电子密码锁 单片机单片机 infraredinfrared electronicelectronic locklock abstractabstract : with the scientific and technological community and peoples living standards, how to achieve family security issues that have become prominent in particular, the traditional mechanical lock because of its simple structure, the prize was not uncommon events, electronic lock because of its secrecy, flexibility in the use of good safety factor, by the vast number of users qinne. infrared electronic locks is a high-strength code sequence based on the realization of the single-chip switch password. it infrared light as an information media, in order to achieve the remote control can also be equipped with a simple contactless communications interface, strong and loss prevention. the lock has a user-friendly, simple, inexpensive, and other characteristics of peoples lives a great convenience. especially suitable for those close to a normal human would not be appropriate for special occasions, such as high-radiation areas, high-transmission areas. keykey wordswords :infra-red:infra-red remoteremote controlcontrol electronicelectronic lockslocks microcontrollermicrocontroller 0 第一章第一章 绪论绪论 1.1 引言 锁是置于可启闭的器物上,用以关住某个确定的空间范围或某种器具的,必须以钥匙 或暗码打开的扣件。锁具发展到现在已有一百多年的历史了,人们对它的结构、机理也 研究得很透彻,因此,不用钥匙就能打开的方法和工具也层出不穷。现代人类文明社会 里,由于社会中各种矛盾冲突十分剧烈,人们的思想道德观念,价值观念,文化修养水 平等差异,群众中良莠不齐,善良的人们能够自觉规范自已的行为, “非礼不为” ,虽无 钥匙亦不会乱闯。然而,那些毫无道德观念的盗贼却想方设法利用高科技手段撬门开锁, 使广大居民防不胜防。 为什么会出现这种情况呢?因为传统锁具都存在致命的弱点: 第一、 锁芯采用常见的铜、铝、锌等材料,抵抗不了强力破坏; 第二、 锁具制作工艺,技术落后,无法阻止技术手段的开启。 目前,市场上很多国内外的锁具,实际上都不具备真正的防盗功能。在惯偷面前, 两根钢丝或几件简单的工具就可以把这些锁打开,有的惯偷甚至公开扬言:“没有我打 不开的锁。 ”其实,不是他们多高明,而是一般锁具技术原理太过简单。面对这一残酷 的现状,新时代提出了锁具必须革命的迫切的要求。 随着社会科技的进步,锁已发展到了密码锁、磁性锁、电子锁、激光锁、声控锁等 等。在传统钥匙的基础上,加了一组或多组密码,不同声音,不同磁场,不同声波,不 同光束光波,不同图像。 (如指纹、眼底视网膜等)来控制锁的开启。从而大大提高了 锁的安全性,使不法之徒无从下手,人们也就能对自身财产安全有了更多的保障。 本设计就是其中的一种,红外遥控电子密码锁。本设计是利用红外传输为途径,方 便远距离开锁,不用像传统锁那样一定要将钥匙插进锁里才能开启;利用单片机来随机 产生密码并加密,防止了在开锁时被人中途拦截了密码信息而复制出另外的钥匙来,这 是因为密码是随机产生的,每次开锁的具体密码均是不一样的,所以就算窃取了上次开 锁的密码也是不能将锁打开。本设计的最大特点就在于采用了双单片机的双向通讯,密 码是在锁与钥匙两边均有加密的,从而杜绝了开锁信息被盗取的可能性。该设计具有使 用方便、操作简单、价格低廉等特点,特别适用于那些正常人体不宜接近的特殊场合。 1 1.2 红外通信基本原理 红外遥控是单工的红外通信方式,本设计的红外遥控采用以通信方式为基础的红外 遥控,而且本设计也使用了红外通信技术,故着重分析红外通信的基本原理。 红外通信是利用红外技术实现两点间的近距离保密通信和信息转发。它一般由红外 发射和接收系统两部分组成。发射系统对一个红外辐射源进行调制后发射红外信号,而 接收系统用光学装置和红外探测器进行接收,就构成红外通信系统。 红外线是波长在750nm至1mm之间的电磁波,它的频率高于微波而低于可见光,是一 种人的眼睛看不到的光线。红外通信一般采用红外波段内的近红外线,波长在0.75um至 25um之间。红外数据协会(irda)成立后,为了保证不同厂商的红外产品能够获得最佳 的通信效果,红外通信协议将红外数据通信所采用的光波波长的范围限定在850至900nm 之内。 红外通信的基本原理是发送端将基带二进制信号调制为一系列的脉冲串信号(载波 信号) ,通过红外发射管发射红外信号。常用的有通过脉冲宽度来实现信号调制的脉宽 调制(pwm)和通过脉冲串之间的时间间隔来实现信号调制的脉时调制(ppm)两种方法。 脉时调制(ppm)是红外数据协会(irda)和国际电子电工委员会(ieee)都推荐的调制方 式,本设计采用脉时调制方法,即用两个脉冲串之间的时间间隔来表示二进制信息,数 据比特的传送仿照不带奇偶校验的rs232通信,首先产生一个同步头,然后接着8位数据 比特,如图1-1所示。 图1-1 ppm调制波形图 载波信号的频率 f=38khz,载波周期t=26.32us,本设计使用单片机软件产生载波, 取t=26us,脉冲宽度t1=10t=260us,二进制数0的脉冲串周期t2=500us,二进制数1的脉 冲串周期t3=1000us。 普通的红外遥控采用面向指令的帧结构,数据帧由同步码,地址码和指令码组成, 2 指令码长度多为816个比特,传送多字节遥控协议时效率偏低,而增加指令码的长度 不利于接收器同步,为此本设计选用一种面向字节的帧结构,采用类似于异步串行通信 的帧结构,每帧由一个起始位(二进制数0) 、8个数据位和2个停止位(二进制数1)构 成,如图2-8所示。每帧传送1个字节的数据,帧与帧间隔大于2ms,帧结构不含地址信 息,寻址问题由高层协议解决。 图2-2 数据帧结构示意图 由于红外光存在反射,在全双工的方式下发送的信号也可能会被本身接收,因此, 红外通信应采用异步半双工方式,即通信的某一方发送和接收是交替进行的。 1.3 设计要求 1.3.1 基本要求 通过红外遥控,单片机之间的串口通信来实现近距离遥控开锁。 利用软件来加密和解密,加强密码的安全性。 锁和钥匙要成配套,不同套之间的钥匙和锁不能使用。 要有钥匙丢失之后,可将该钥匙报废的功能。 1.3.2 说明 红外通信元件不限,其安装位置及安装方式自定。 红外传输要有 1m 以上的距离。 单片机类型不限,经济实用,性价比高为上。 单片机内的序列号是产品在出厂时就已经设定,无法更改。 3 第二章第二章 系统设计系统设计 根据设计任务要求,本设计的系统结构框图如图2-1 计算机 通 信 接 口 红外遥控门锁 (主机) 红外钥匙 (从机) 图2-1 系统结构框图 2.1 通信接口组成及工作原理 通信接口电路是连接前台计算机和红外钥匙、红外遥控门锁的的通信桥梁。它通过 一个rs-232串行通信接口将红外钥匙和红外遥控门锁连接到计算机。其结构框图如图2- 2: rs-232-c标准是最简单最常用的串行通信标准,该标准是美国电气工业协会(eia) 1969制订的。rs-232-c标准传输信号采用rs-232-c 计算机通 信 接 口 rs232 接 口 红外钥匙读写接口 红外遥控门锁读写接口 图2-2 通信接口结构框图 逻辑电平,与ttl(05v)、cmos(015v)逻辑电平完全不同:逻辑0电平规定为 +5v+15v之间,逻辑1电平为-5v-15v之间,因此,一般使用专用芯片把微处理器信 号电平(ttl电平) 转换为rs-232-c电平。该标准的传输速率只能达到20kb/s,最大传输 距离15m。 rs-232-c通信口与计算机连接常用db25插座和db9插座,其接口连线分三种:信号 线、握手线与地线。 rs-232-c通信握手方式有两种:硬件握手和软件握手,常用的近距离通信采用软件 握手方式,三根数据线和地线就可以连接起来通信。 4 2.2 红外钥匙(从机)组成及工作原理 红外钥匙是红外遥控密码锁的遥控器部分,红外钥匙内部存储了本套系统的序列号、 注册及加密方法等信息。其结构框图如图2-3: 单 片 机 数据存储红外发送 红外接收软件看门狗 图2-3 红外钥匙结构框图 红外钥匙采用软件编码方式,取代传统的专用芯片编码。在待机状态下,整个红外 钥匙系统工作在完全掉电方式,当有键盘按下,系统上电工作,发射一个信息给主机, 然后接收了主机发过来的随机密码信息,再将接收到的休息加密经红外线调制后发射出 去。 2.3 红外遥控门锁(主机)组成及工作原理 红外遥控门锁是整套系统的主控部分,其内部包含了本套系统的序列号及其识别方 法、注册信息、随机密码的产生机制和解密从机密码及郊验等信息。其结构框图如图 24: 单 片 机 数据存储 软件看门狗 红外发送红外接收 显示 开锁驱动 图2-4 红外遥控门锁结构框图 待机状态下,红外遥控门锁系统工作在完全掉电状态,整个系统除了实时时钟电路 和红外检测开关外,均不加电。当有检测到有红外线时,打开电控开关,系统上电工作, 开始接收红外线数据。收到信息后就产生一个随机数发送给从机,当接收到经过从机将 发过去的随机数与本套系统序列叫加密后的信息,就解密并检验解密后的序列号是否正 5 确,否就继续等待,是就通过。 2.4 红外钥匙(从机)与红外遥控门锁(主机)之间的通讯协议 第一步:从机:“我来了” ; 主机:“谁啊”m1(随机数) ; 第二步:从机:m1 与序列号(一套钥匙与锁唯一且独一的固定号码,出厂时固加硬件上 的)加密后得到 n1,发数 n1; 主机:n1 与 m1 解密后得到序列号,比较序列号是否相同,不同继续等待握手, 相同时,发送“密码”m2(随机数) ; 第三步:从机:m2 与密码加密后得到 n2,发送 n2; 主机:n2 与 m2 解密后得到密码,密码相同则继续,不同继续等待握手,相同 时发送“新的密码”新的密码; 第四步:从机:保存密码,将密码再返回给主机; 主机:密码对了,发送“结束” ,开锁;不对,再发送密码; 从机:结束。 注册协议: 第一步:同上; 第二步:不同时同上;相同时,发送“注册啦”密码; 第三步:从机:保存密码,将密码返回给主机; 主机:密码对了,注册完毕,发送“结束 ” ,不对重发。 6 第三章第三章 方案选择和论证方案选择和论证 3.1 红外编码和发射模块 方案一:专用芯片解决方案。 专用红外编码芯片种类很多,如日本三菱公司的 m50426ap、pt2262、bl9148、zd6631等,此类芯片一般集载波振荡、编码、发射于一体, 具有很强的抗干扰能力,外围电路简单,使用很方便,而且价格也很低。通用的遥控器 上大多使用此类专用芯片。 但是,专用芯片也有致命的弱点:专用芯片的应用灵活性很差,其内部编码已经固 定,无法修改内部数据,不适用于经常需要改动传送数据的场合;专用芯片几乎都是面 向指令型的编码遥控方式,传输效率较低;大多数的专用芯片的内部编码及技术数据已 经公诸于世,会产生安全漏洞。 方案二:微处理器与专用芯片组合解决方案,见图3-1。 图3-1 pt2262红外编码发射电路 该方案由微处理器与专用编码芯片pt2262组合完成编码工作,载波产生由mc4011与 38khz晶振一起构成,振荡产生38khz方波。 pt2262的功能是让待发射数据以6位为一体的方式并行发出。pt2262把6位并行数据 转换成串行数据,减轻编程负担,使传输速度更快。pt2262的a6/d0a11/d5共6个复用 端口全部用作数据口,则pt2262自动把微处理器送出的6位数据变成串行数据从dout口 7 发出。 该方案可由微处理器任意制定密码位数、编码解码算法和同步信号,大大提高了数 据保密度。其缺点是由于使用了pt2262,增加了硬件成本和电路复杂性。 方案三:微处理器单独解决方案。电路如图4-2所示。 1k r4 rpot q2 2n3906 q1 2n3906 vccds3 led0 pl2tx 2k r3 res1 2k r7 res1 图3-2 软件编码发射电路 该方案使用微处理器的i/o口直接产生38khz已调波,驱动红外发光二极管,发射红 外数据。38khz方波由cpu的定时器产生或由软件编程产生。 红外编码工作由软件完成,因此,红外编码方案可以任意设计,外部只需配接非常 简单的硬件电路,大大降低了了电路的复杂性,有利于降低成本,减小遥控器的体积。 由于使用软件编码方案,占用了cpu的一定的时间,cpu处理速度 受到一定的影响, 但是,对于遥控器这一类功能比较单一的系统来说,处理任务比较少,根本影响不了 cpu的处理效率,仅仅是增加了软件编程的负担。 经比较,方案三既可满足题目要求,电路又非常简单,硬件成本又很低,仅仅是增 加了软件的编程负担,使得红外编码非常灵活,所以采用该方案。 3.2 红外解码和接收模块 方案一:分立元件解决方案,电路如图3-3所示。 图中rd1为红外接收管;r3、r4,vt1构成反相放大器;vt2、r5、c2构成滤波器, 滤掉38khz的高频载波;r6、r7、vt3构成整形电路, 8 图3-3 低电压红外接收电路 将滤波后的波形处理为较好的方波;c1、c3为耦合电容;r2为限流电阻,当接收到 较强的信号是保护vt1。 该方案最大的优点是供电电压比较低,可用两节电池3v电压供电。 但是,由于电路使用分立元件构成,其稳定性和抗干扰能力不高,影响红外数据传 输的准确性。 方案二:集成电路解决方案,电路如图3-4所示。 该方案使用一体化红外接收器,集红外接收和放大于一体,不需任何外接元件,就 能完成从红外接收到输出与ttl电平兼容的所有工作,而体积和普通的塑封三极管大小 一样。 1 2 3 p3 一一 一一一 vcc rx 10k r10 res1 图3-4 tl1838接收电路 tl1838一体化接收头的简介: tl1838的管脚分布如图4-5所示,2脚、3脚分别为地电源和地,1脚是解调信号输出, 其电平与ttl兼容。tl1838系列特性如下: 38khz 宽电压一体红外接收头 9 作电压:2.75.5v 工作电流:1.4ma 距离:15m 频率:38k 角度:45 波长:940nm 铁壳:有 tl1838是黑色环氧聚光透镜,滤除了可见光的干扰。内含红外线pin接收管、选频 放大器和解调器。 当红外线发射器发出的信号经空间传送到tl1838时,它内部的pin红外线接收管将 红外线转换为电信号,该信号经选频放大、解调后由1脚输出与ttl电平兼容的电信号, 该信号可以直接送入微处理器进行处理。 tl1838的输出波形如图3-6所示。当接收到频带内的红外信号时,tl1838接收器会 输出低电平,否则数据高电平,从而“将时断时续”的红外信号解调成原来的连续方波 信号。 图3-6 (a) 已调制红外信号 (b) tl1838输出信号 tl1838的优点是稳定性好,抗干扰能力很强,外围电路非常简洁,成本又不高,适 用于各种红外遥控和红外数据传输,是替代其它红外接收放大器的理想元件。而且它的 10 工作电压是2.75.5v,有效传输距离为15m,是一款性价比很高的红外一体化接收头。 经比较,方案二既可满足题目要求,电路又非常简单,硬件成本又很低,通过软件 编程,使得红外编码非常灵活,所以采用该方案。 3.3 红外钥匙(从机)子系统设计 根据红外遥钥匙(从机)的功能需求和总体设计方案,建立红外钥匙(从机)的逻 辑框图,如图3-7所示。 红外遥控器(钥匙)的硬件特点: 硬件以美国atmel公司的at89c2051为控制核心,dip-20封装,体积小,功能齐全, 工作电压范围2.7v6v;(考虑到价格等因素,实验用at89s52) 设置电压监控功能,当电源电压低于2.75v时,产生一下下降沿脉冲,向单片机申请 电压低中断; 低功耗控制电路管理整个系统的电源,待机状态下,低功耗控制电路关闭整个系统 的电源,系统功耗几乎为零; at24c01 红外接收 红外发送 开关按键 看门狗 5v 电 源 图3-7 红外遥控器逻辑框图 3.4 数据存储模块设计 由于红外钥匙(从机)大部分时间工作的掉电状态下,因此,有必要对红外钥匙 (从机)正常工作所需的数据进行保护,例如红外钥匙(从机)本身的序列号和加密程 序,由于实验所有的单片机内存储空间有限,所以本设计采用了串行eeprom at24c02, 电路原理图如图3-8所示。 11 图3-8 数据存储电路 红外钥匙(从机)的加密程序和主机产生的密码存放在 at24c02 中,当需要更改或 读取密码时,只需对 at24c02 里的数据更改或读取。该电路要注意的是 scl、sda 必须 加上一上拉电阻,阻值为 10k。 3.4.1at24c01 芯片介绍: at24c01 是美国 atmel 公司生产的 i 2c 串行 e2prom。它为可用电擦除、可编程只读 存储器,自定时写周期,包括自动擦除时间不超过 10ms,典型时间为 5ms。芯片 2.7v 至 6v 的工作电压,可擦写 100 万次,数据保存可长达 100 年, 提供 8 脚 dip 和 soic 封装。at24c01 允许在一个写周期内同时对 1 字节到 1 页的若干字节进行编程写入,一 页的大小取决于芯片内寄存器的大小。 3.4.1.1 管脚介绍: wp:写保护。将该管脚接 vcc,e 2prom 就实现写保护(只读) 。将该管脚接地或悬空, 可以对器件进行读写操作 scl:串行时钟脚串行输入输出数据时,该脚用于输入时钟。 sda:串行数据/地址输入脚双向串行数据/地址脚,用来输入输出数据。该脚为射 (漏)极开路输出,需接上拉电阻。 a0a1a2:片选或页选地址输入。用于芯片寻址。at24c01 内部无连接。 3.4.1.2 器件地址的约定: 主器件在发送启动命令后开始传送,主器件发送相应的从器件的地址,8 位从器件 地址的高 4 位固定为 1010。接下来的 3 位(见图 4-11)用来定义存储器的地址,对于 12 at24c02 位无意义。最后一位为读写控制位。 “1”表示读操作, “0”表示写操作。 图 3-9 at24c01 从器件寻址 3.4.1.3 应答信号 每次数据传送成功后,接收器件发送一个应答信号。当第九个时钟信号产生时,接 收器件将 sda 下拉为低,通知已经接收到 8 位数据。at24c02 应答时序如图-10 所示 图 3-10 at24c01 应答时序 3.4.1.4 at24c02写操作 字节写 在字节写模式下,主器件发送起始命令和从器件地址信息给从器件。在从器件响应 应答信号后,主器件将要写入数据的地址发送到at24c01的地址指针,主器件在收到从 器件的应答信号后,再送数据到相应数据存储区地址。at24c01再响应一个应答信号, 主器件产生一个停止信号;然后,at24c01启动内部写周期。at24c01字节写时序如图3- 11所示。 图 3-11 at24c01 字节写时序 页写操作时,最多可以一次向 at24c01 中写入 8 个字节的数据。在写入命令后, 主器件发送 8 个字节的数据,每传送完一个字节数据后,at24c02 响应一个应答信号, 13 寻址字节低位自动加 1,而高位保持不变。 如果主器件在发送停止信号前发送的字节数 超过 8 个,先前写入的数据被自动覆盖。接收到 8 字节数据后和主器件发送的停止信号 后,at24c01 启动内部写周期将数据写到数据区。页写时序如图 3-11 所示。 图3-11 at24c02页写时序 3.4.1.5 读操作 对 at24c02 读操作的初始化和写操作时一样,仅把 r/w 位置为 1,有三种读操作 方式:立即地址读;选择地址读;立即/选择地址连续读。 立即地址读: at24c01 的地址计数器内容为最后操作字节的地址加 1。如果 n=e(at24c01 中 e=255) ,则寄存器将会翻转到地址 0 继续输出数据,在 at24c01 接收到从机地址以后 (r/w=1) ,它首先发送一个应答信号,然后发送 8 位一字节的数据。主机产生一个停止 信号。at24c02 立即地址读时序如图 3-12 所示。 图3-12 at24c01立即地址读时序 选择地址读 选择/随机读操作允许主机对寄存器的任意字节进行读操作。主机首先进行一次空 写操作,发送起始条件、从机地址和它想读取的字节数据的地址,在 at24c01 应答以后, 主机重新发送起始条件位和从机地址位 ,此时 r/w 置为“1” 。 at24c01 响应并发送应 答信号然后输出要求的 8 位字节数据。主机不发送信号应答,但是产生一个停止位。 14 at24c01 选择地址读如图 3-13 所示。 图 3-13 at24c01 选择地址读 连续读 在连续读方式中,首先执行立即读或选择字节读操作。在 at24c01 发送完 8 位一 字节数据后,主机产生一个应答信号来响应,告知 at24c01 主机要求更多的数据,对应 每个主机产生的应答信号 at24c01 将发送一个 8 位的数据字节。当主机发送非应答信号 时结束读操作,然后主机发送一个停止信号。 从 at24c01 输出的数据按顺序输出,由 n 到 n+1。读操作时的地址计数器在 at24c01 整个寄存器区域增加,这样整个寄存器区域可在一个读操作内全部读出。当超过 e(对 于 24c01, e=255)字节数据被读出时,计数器将循环计数继续输出数据。连续读时序如 图 3-14 所示。 图3-14 at24c01连续读时序 3.5 红外遥控门锁子系统设计 根据红外遥控门锁的功能需求和总体设计方案,建立红外遥控门锁的逻辑框图,如图 3-15 所示。 15 图315 红外遥控门锁逻辑框图 红外遥控门锁硬件特点: 红外遥控门锁以美国atmel公司的at89s52为控制核心,dip-40封装,功能齐全, 工作电压范围2.7v6v; 低功耗控制电路管理整个系统的电源,待机状态下,低功耗控制电路关闭整个 系统的电源,仅向红外开关和实时时钟供电, 功耗只有几十微安; 红外开关是低功耗控制电路的启动控制开关,当有红外线进入有效区域,红外 开关动作,低功耗控制电路打开电控开关,向系统供电,操作完毕,系统掉电; 数据存储由串行的e 2prom实现; 351 数据存储模块设计 红外遥控门锁子系统的数据存储模块与红外钥匙(从机)子系统的数据存储模块 设计在硬件上基本相同。电路参见下面的电路总图。 352 红外接收模块设计 红外遥控门锁子系统的红外接收模块采用一体化的红外接收集成电路,具体设计 在方案比较部分已做详细的论述,在此不再赘述。 16 353 红外发射模块设计 红外遥控门锁子系统的红外发射模块与红外钥匙(从机)的发射模块几乎相同, 具体设计在方案比较部分已做详细的论述,在此不再赘述。 354 开锁驱动模块设计 锁体部分使用技术成熟的电驱动锁,本设计没有涉及到,仅给出开关量输出接口。 355 工作指示模块设计 本模块使用了发光二极管指示工作状态,包括开锁成功指示和钥匙注册指示。 3.6 红外遥控电子密码锁的总体原理图和 pcb 板图设计 系统以单片机 at89s52 作为控制中心,完成四方面的功能:红外信号的发射和接收; 处理红外传输信号,红外信号的检测;密码的加密和解密;开锁和注册的显示。 单片机 at89s52 资源丰富,内含一个 8 位的微处理器(cpu),8kb 的片内程序存储 器 rom(read only memory),256b 的片内数据存储器 ram(random access memory), 四个 8 位并行 i/o 接口 p0p3,三个定时/计数器,五个中断源,一个全双工通用异步 接收发送器 uart(universal asynchronous receiver transmitter),有片内震荡器 和时钟产生电路,内部晶振 11.0592m,内置看门狗定时器 wdt(watch dog timer)和 在系统编程 isp(in system program) 6 .50。 单片机接收从传感器检测电路输入的逻辑信号和脉冲信号,并将输入的信号进行处 理运算,以控制电流或控制电压的形式输出给被控制的单元电路,完成各项任务的要求。 为了方便单片机引脚的使用,将单片机所有 i/o 口引脚用接口引出。在实际应用中,串 行通信与单片机控制电路密切相关,因此把串行通信与单片机控制电路联合一起组成单 片机最小系统,电路如图 316319 所示。电路设计时,考虑到器件对电源噪声很 敏感,因此 vcc 必须要对地加去耦电容 c2 和 c3(从机只加 c2)。 红外钥匙(从机)总体电路原理图: 17 p1.0/t2 1 p1.1/t2ex 2 p1.2 3 p1.3 4 p1.4 5 p1.5 6 p1.6 7 p1.7 8 rst 9 p3.0/rxd 10 p3.1/txd 11 p3.2/int0 12 p3.3/int1 13 p3.4/t0 14 p3.5/t1 15 p3.6/wr 16 p3.7/rd 17 xtal2 18 xtal1 19 vss 20 p2.0/a8 21 p2.1/a9 22 p2.2/a10 23 p2.3/a11 24 p2.4/a12 25 p2.5/a13 26 p2.6/a14 27 p2.7/a15 28 psen 29 ale/prog 30 ea/vpp 31 p0.7/ad7 32 p0.6/ad6 33 p0.5/ad5 34 p0.4/ad4 35 p0.3/ad3 36 p0.2/ad2 37 p0.1/ad1 38 p0.0/ad0 39 vcc 40 u1 at89s52 vcc vcc 1 2 3 p4 一一 一一一一一一 1k r4 rpot q1 2n3906 q2 2n3906 vcc ds1 led0 pl1 pl1 33pf c1 cap 33pf c3 cap 12 y1 12mhz 200 r2 res1 s1 sw-pb 22uf c4 cap pol2 1k r1 res1 vcc txtx vcc rx rx 1 2 p1 一一 vcc 12 34 56 78 910 p2 header 5x2 mosi rst miso vcc sck rst mosi miso sck e0 1 e1 2 e2 3 gnd 4 sda 5 scl 6 mode 7 vcc 8 u2 st24c01rb5 2k r3 res1 vcc t0 t0 s2 sw-pb 100pf c2 cap pol1 1 2 3 4 p3 一一一一 rx tx vcc 2k r5 res1 10k r6 res1 2k r8 res12k r7 res1 pcb板图(元件位置示意图): pcb制板图: 18 红外遥控门锁(主机)电路原理图: ds1 led0 ds2 led0 1k r5 res1 1k r6 res1 p1.0/t2 1 p1.1/t2ex 2 p1.2 3 p1.3 4 p1.4 5 p1.5 6 p1.6 7 p1.7 8 rst 9 p3.0/rxd 10 p3.1/txd 11 p3.2/int0 12 p3.3/int1 13 p3.4/t0 14 p3.5/t1 15 p3.6/wr 16 p3.7/rd 17 xtal2 18 xtal1 19 vss 20 p2.0/a8 21 p2.1/a9 22 p2.2/a10 23 p2.3/a11 24 p2.4/a12 25 p2.5/a13 26 p2.6/a14 27 p2.7/a15 28 psen 29 ale/prog 30 ea/vpp 31 p0.7/ad7 32 p0.6/ad6 33 p0.5/ad5 34 p0.4/ad4 35 p0.3/ad3 36 p0.2/ad2 37 p0.1/ad1 38 p0.0/ad0 39 vcc 40 u1 at89s52 1 2 3 p3 一一 一一一 vcc vcc 1k r4 rpot q2 2n3906 q1 2n3906 vcc vcc ds3 led0 s3 sw-pb 1 2 3 4 5 6 7 8 9 p2 res pl2 pl2 33pf c1 cap 33pf c4 cap 12 y1 12mhz 200 r2 res1 s2 sw-pb 22uf c5 cap pol2 1k r1 res1 vcc vcc rx rx txtx 1 2 3 4 5 6 7 8 16 15 14 13 12 11 10 9 s1 sw dip-8 1 2 p1 一一 vcc 12 34 56 78 910 p4 header 5x2 mosi rst miso vcc sck sck miso mosi rst e0 1 e1 2 e2 3 gnd 4 sda 5 scl 6 mode 7 vcc 8 u2 st24c01rb5 t0 2kr3 res1 vcc t1 t0 t1 100uf c2 cap 1 2 3 4 p5 header 4 tx rx vcc 10pf c3 cap 2k r7 res1 1k r9 res1 1k r8 res1 10k r10 res1 pcb 板图(元件位置示意图): 19 pcb 制板图: 3.7 电路的仿真 3.7.1proteus isis 软件简介: proteus isis 是英国 labcenter 公司开发的电路分析与实物仿真软件。它运行于 windows 操作系统上,可以仿真、分析(spice)各种模拟器件和集成电路,该软件的特点 20 是:实现了单片机仿真和 spice 电路仿真相结合。具有模拟电路仿真、数字电路仿真、 单片机及其外围电路组成的系统的仿真、rs232 动态仿真、i2c 调试器、spi 调试器、键 盘和 lcd 系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。 支持主流单片机系统的仿真。目前支持的单片机类型有:68000 系列、8051 系列、 avr 系列、pic12 系列、pic16 系列、pic18 系列、z80 系列、hc11 系列以及各种外围芯 片。提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能, 同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有 这些功能;同时支持第三方的软件编译和调试环境,如 keil c51 uvision2 等软件。 具有强大的原理图绘制功能。总之,该软件是一款集单片机和 spice 分析于一身的仿真 软件,功能极其强大。本章介绍 proteus isis 软件的工作环境和一些基本操作。 3.7.2 红外电子密码锁电路的仿真 利用 proteus isis 和 keil c51 uvision2 互联来实现电路的仿真(为了简便,而 且只是验证方案的可实性,所以没加上红外模块): 21 第四章第四章 系统软件设计系统软件设计 4.1 keil uvision 2 软件简介 keil c51 是美国 keil software 公司出品的 51 系列兼容单片机 c 语言软件开发系 统,与汇编相比,c 语言在功能上、结构性、可读性、可维护性上有明显的优势,因而 易学易用。用过汇编语言后再使用 c 来开发,体会更加深刻。 keil c51 软件提供丰富的库函数和功能强大的集成开发调试工具,全 windows 界面。 另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到 keil c51 生成的目 标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时 更能体现高级语言的优势。 c51 工具包的整体结构,其中 uvision 与 ishell 分别是 c51 for windows 和 for dos 的集成开发环境(ide),可以完成编辑、编译、连接、调试、仿真等整个开发流程。 开发人员可用 ide 本身或其它编辑器编辑 c 或汇编源文件。然后分别由 c51 及 a51 编译 器编译生成目标文件(.obj)。目标文件可由 lib51 创建生成库文件,也可以与库文件一 起经 l51 连接定位生成绝对目标文件(.abs)。abs 文件由 oh51 转换成标准的 hex 文件, 以供调试器 dscope51 或 tscope51 使用进行源代码级调试,也可由仿真器使用直接对目 标板进行调试,也可以直接写入程序存贮器如 eprom 中。 4.2 系统功能子程序 4.2.1 数据读写模块 模块名:24cxx,其读取和写入方框图如 41、42 所示。 22 4.2.2 红外数据发射模块设计 将待发射数据缓冲区指定长度的数据以红外线为载波发射出去。每次发送一帧数据。 其模块框图如图 43 所示。 红外遥控系统通信协议: 本系统制定了严格的红外数据通信协议。 数据的发射和接收以数据包的形式进行,数据包的开始为起始标志 stx,随后为数 据块的长度、和数据块内容,最后为校验码及数据包结束标志 ext。stx 和 etx 分别规 定为 ascii 字符的 02h 和 03h,其余各项均用 ascii 字符表示。数据块长度和校验码各 占 2 个字节,数据块最大长度为 32 个字节,数据块的内容为发送者身份标识、指令、 和数据,发送者身份标识和指令各占 1 个字节,用 ascii 字符表示,具体参见各个子系 统的数据结构描述。 图4-2 数据写入模块框图图4-1 数据读取模块框图 23 图4-3 红外数据发射模块框图 4.2.3 红外数据接收模块 红外数据接收原理: 接收部分由单片机 at89s52 的中断 into、定时器 t0 及红外数据接收模块构成一个 红外遥控接收器。定时器用于测量两个脉冲串之间的时间间隔,设定工作于方式 1,定 时常数为零,每次启动测量前,定时器均清零。中断 int0 由红外接收电路输出的负脉 冲触发,单片机响应中断后启动定时器 t0。考虑到发射器和接收器中断响应的延迟以及 24 接收器信号接收延迟的影响,接收器允许脉冲的间隔最大误差为 100us,即二进制数位 “0”的脉冲串有效间隔范围为 400us600us,即二进制数位“1”的脉冲串有效间隔范 围为 900us1100us,不在此范围内的脉冲串被认为是干扰信号或误码。 接收器以帧为单位进行接收数据。当红外接收电路收到频带内信号时输出一个负脉 冲并触发 int0,单片机响应中断,先清零定时器 t0,启动定时器 t0 定时,收到第二个 脉冲时,读出定时器 t0 的计数值并计算该脉冲信号与前一个脉冲信号之间的时间间隔, 如为 500us,则收到一个二进制数“0” ,即起始位,否则继续搜索起始位。起始位正确 后开始接收数据位,在以后 8 个脉冲中,间隔为 500us 的脉冲是二进制数“0” ,间隔为 1000us 的脉冲是二进制数“1” ,否则认为是帧错误。收到 8 个数据后接收第一个停止位 (必须是二进制数“1” ,否则认为是帧错误) 。收完第一个停止位(第二个停止位是用 来触发中断检测前一脉冲是否为第一个停止位) ,如停止位正确且已成功接收 1 个起始 位 8 个数据位、1 个停止位,则数据帧正确,保存数据,准备接收下一个数据帧,否则 接收错误,复位定时器,重新检测起始位。 在数据接收过程中,如果发现相邻的两个脉冲的间隔不在允许的范围内,则认为数据 位有错误,此时将按接收帧错误处理 红外数据接收模块框图如图 44 所示。 25 图 44 红外数据接收框图 4.2.4 红外钥匙(从机)子系统软件结构设计 根据红外钥匙(从机)子系统的功能需求分析,以及红外钥匙(从机)子系统的硬 件电路,设计红外钥匙(从机)子系统的软件结构图,如图 4-4 所示。 26 红外钥匙(从 机)子系统 软件看门狗 遥控开锁 红外发射 红外接收 加密 数据存储 注册 图 4-5 红外钥匙(从机)子系统软件结构图 4.2.5 红外遥控门锁(主机)子系统软件结构设计 根据红外遥控门锁(主机)子系统的功能需求分析,以及红外遥控门锁子系统的硬 件电路,设计红外遥控门锁子系统的软件结构图,如图 4-5 所示。 红外遥控门锁 (主机)子系 统 软件看门狗 红外发射 红外接收数据校验 开锁、注册 显示 随机数产生 解密 图 4-6 红外遥控门锁子系统软件结构图 4.2.6 红外钥匙(从机)主程序框图 27 n y n n n y y y 开始 系统唤醒上电 系统初始化 循环记事器赋初 红外发射 延时等待接收 收到数据? 信号加密 红外发射 延时等待 收到数据? 信号加密 红外发射 延时等待 收到数据? 信号加密 红外发射 延时等待 收到数据? 结束 系统掉电 图4-7红外钥匙(从机)主程序框图 28 4.2.7 红外遥控门锁(主机)主程序框图 n y y n y n y n n n y y y 开始 系统唤醒上电 系统初始化 延时等待接收完毕 收到数据? 产生随机码 红外发射 延时等待 收到数据? 解密、数据检验 产生随机码 m1 延时等待 收到数据? 红外发射 延时等待 收到数据? 结束 系统掉电 数据是否正确? 红外发射 n y 红外发射 延时等待 收到数据? 解密、数据检验 数据是否正确? 产生随机码 m2 n解密、数据检验 数据是否正确? 开锁 图48外遥控门锁主程序框图 29 第五章第五章 系统调试系统调试 5.1 调试仪器 调试使用的仪器设备如表 51 所示。 表 51 调试使用的仪器设备 序号名称、型号、规格数量备注 1组装兼容计算机1带 2 个 9 针串口 2直流稳压电源25v 3万用表1- 4串口调试 usbisp 线1- 5keil c51 单片机编译软件美国 keil software 公司 6proteus isis 仿真软件英国 labcenter 公司 7示波器1 - 5.2 整体调试 本装置的调试主要分为硬件调试、软件调试等两大部分。 经过初步的分析设计后,在制作硬件电路的同时,调试也在穿插进行。这样有利于 问题的分析和解决,不会造成问题的积累,而且不会因为一个小问题而进行整体电路的 检查,从而可以节约大量的调试时间。软件编程中,我是首先完成单元功能模块的调试, 然后进行系统调试,整体上与硬件调试的方法差不多。联机调试是最重要的一部分,同 时也是本装置成功的关键。有许多新问题都不是很容易解决的。 5.3 硬件单元调试 5.3.1 红外钥匙(从机)调试 当按键按下后,系统上电,确保单片机能够自锁电子开关,维持电子开关的导通, 系统正常供电。在红外遥控器(钥匙)软件尚未编写的情况下,首先模拟单片机的自锁 操作,发现电子开关能自锁,系统正常供电。考虑到按键操作时间一般为几十毫秒到几 秒,单片机复位时间仅为 200ms 左右,一般来得及输出自锁高电平。后来软件编好以后, 30 发现系统确实能正常上电工作。 5.3.2 红外遥控门锁(主机)调试 调试时使用串口 usb-isp 线一步步监控单片机的红外反射和接收信号是否符合要求, 来进一步地调整个别电路。红外遥控门锁的电路都是经典电路,无须过多调试。 5.4 软件调试 对于本系统而言,软件程序所实现的功能比较多,所以软件程序的调试显得相当的 烦琐。整个程序是使用 c 语言。 用 51 系列单片机的下载线将程序下载到单片机内,用串口 usb 线来

温馨提示

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

评论

0/150

提交评论