资源描述
-摘要随着社会科技的开展和人们的生活水平的提高,如何实现家庭防盗这一问题变的尤其的突出。各种防盗密码锁层出不穷,其中,红外遥控密码锁系统由于其*性高,使用灵活性好,平安系数高,除了具有普通电子密码锁功能的同时,还增加了遥控功能,给人们的生活平安保障带来了极大地便利。本设计以AT89C51为中央控制器,运用了两块单片机芯片,一片实现红外解码,一块用来按键控制,二级管显示以及数据存储,通过查找资料确定各个模块的功能及实现方法。首先在软件上进展调试,再根据硬件修改调试软件,最后将各个模块合理组合在一起,到达预计的功能与目标。论文中给出了红外发送器与红外接收器的设计电路,以及电子密码锁的典型设计电路局部和具体应用方法,设计出了一种对遥控信号进展准确译码方法和电路。本设计中,红外遥控密码锁和 PC机、数据库相结合,能够实现适时的、强大的管理功能,使得整个红外遥控系统得到更好的完善。系统能完成开锁、出错报警、超次锁定、修改用户密码等根本的密码锁的功能,并且能实现遥控、本机键盘开锁、声光提示等功能。由于红外遥控具有许多优点, 例如红外线发射装置采用红外发光二极管遥控发射器易于小型化且价格低廉; 采用数字信号编码和二次调制方式,不仅可以实现多路信息的控制,增加遥控功能,提高信号传输的抗干扰性,减少误动作,而且功率消耗低;红外线不会向室外泄露,不会产生信号串扰;反响速度快、传输效率高、工作稳定可靠等。关键词:单片机;红外线;遥控开锁;密码. z-ABSTRACTWith the development of society and peoples living standard enhancement, how to realize the anti-theft family this problem bees particularly prominent. A variety of anti-theft cipher lock emerge in an endless stream, wherein, the infrared remote control cipher lock system due to its high secrecy, the use of fle*ibility good, high safety factor, in addition to a mon electronic password lock function at the same time, also increase the remote control function, to the peoples life security brought greatly facilitates.This design using AT89C51 as central controller, using two chip, a realization of infrared decoding, a block to the button control, two level display and data storage, search through the data to determine the function of each module and the realization method, first in the software debugging, then according to modifications to the hardware debugging software, finally will each reasonable modules are bined together, achieve the e*pected goal and the function of. Papers presented in the infrared transmitter and the infrared receiver circuit design and electronic password lock the typical design of circuit part and the concrete application method, designed a pair of remote control signals accurately decoding method and circuit.In this design, infrared remote control locks and PC machine, a bination of database, to achieve the timely, powerful management capabilities, the infrared remote control system to better improve. The system can plete the lock, error alarm, super lock, modify the user password basic password lock function, and can realize remote control, the machine keyboard lock, diode remote control transmitter is easy and ine*pensive miniaturization; digital signal coding and the two modulation modes, which can not only realize the multiple*ed information control. z- increase the remote control function, to improve anti-interference signal transmission, reduce malfunction, and low power consumption; infrared will not leak to the outside, do not produce signal crosstalk; fast reaction speed, high transmission efficiency, such as stable and reliable work.分享到 翻译结果重试抱歉,系统响应超时,请稍后再试 支持中英、中日在线互译 支持网页翻译,在输入框输入网页地址即可 提供一键清空、复制功能、支持双语对照查看,使您体验更加流畅Keywords:Single chip microputer;Infrared ray;Remote control unlocking;Cipher. z-引言随着科技的开展,单片机已不是一个陌生的名词,它的出现是近代计算机技术开展史上的一个重要里程碑,因为单片机的诞生标志着计算机正式形成了通用计算机系统和嵌入式计算机系统两大分支。单片机单芯片的微小体积和低的本钱,可广泛地嵌入到如玩具、家用电器、机器人、仪器仪表、汽车电子系统、工业控制单元、办公自动化设备、金融电子系统、舰船、个人信息终端及通讯产品中,成为现代电子系统中最重要的智能化工具。本文所涉及的是市场占有率最高的是MCS51系列,因为世界上很多知名的IC生产厂家都生产51兼容的芯片。到目前为止,MCS51单片机已有数百个品种,还在不断推出功能更强的新产品。为了尽可能地减小系统的体积,该系统中使用的单片机均为ATMEL 公司的AT89C51,红外发射电路主要由红外线发射二极管所组成;接收模块中的红外接收局部。可防止自然光的干扰,具有极好的抗自然光干扰的性能, 可防止无用脉冲输出。该系统的工作过程是:首先由发射模块中的单片机在外部命令的控制下按一定的时间间隔连续产生1次同一数码指令信号,该指令信号是由16 位二进制数所组成的一串数码。然后该信号经过调制电路被调制到载波信号上,调制信号经过放大后驱动红外线发射二极管发射红外线信号。本设计是基于单片机的密码锁设计方案,根据要求,给出了该单片*码锁的硬件电路和软件程序,同时给出了单片机型号的选择、硬件设计、软件流程图、单片机存储单元的分配、汇编语言源程序及详细注释等内容。. z-. z-. z-目录摘要IABSTRACTI引言I第一章绪论11.1 课题背景及目的11.2 国内外研究现状11.3 课题研究方法21.4电子密码锁的开展趋势21.5本文研究的主要内容3第二章根本原理及方案的论证52.1 红外通讯原理52.2 密码存储局部的电路设计82.3 报警电路设计82.4 单片机工作的根本时序92.5 程序框图112.6方案的比较及确定112.7 本章小结12第三章模块的功能介绍133.1 红外遥控技术13硬件介绍133.1.2 实现方法:13. z-3.2 遥控器键盘153.3 I2C总线技术163.3.1 I2C总线特点163.3.2 I2C通信原理163.4 2764 介绍183.5 24C02介绍193.6 MA*232 介绍213.7 74LS573介绍223.8 AT89C51芯片介绍233.9 本章小结28第四章论文总结2致谢I参考文献I附录I设计原理图I源程序II. z-. z-第一章 绪 论1.1 课题背景及目的电子技术的飞速开展,给古老的锁具生产带来了巨大的变革,现代的电子技术与机械技术相结合,产生了一大批如声控锁、磁控锁、密码锁、遥控锁,指纹锁等先进的锁具。 目前国内外密码锁系统的主要方向的开展是:接触式密码锁系统,非接触式密码锁系统,智能识别密码锁系统,但是他们都相应的存在着不同的缺点。随着人们对平安的重视和科技的开展,许多电子智能锁指纹识别、IC卡识别已在国内外相继面世。例如:接触式密码锁系统本钱较低,体积小,卡片本身无须电源,但使用不太方便,而且有接触磨损。相比之下,红外遥控密码锁系统的本钱与接触式密码锁系统相当,而且可以进展近距离遥控,使用十分方便。而且它已经与 PC 机的数据库相结合,可以组成一套酒店房间的门禁管理系统。 由于红外遥控具有许多优点,例如红外线发射装置采用红外发光二极管遥控发射器易于小型化且价格低廉;采用数字信号编码和二次调制方式,不仅可以实现多路信息的控制,增加遥控功能,提高信号传输的抗干扰性,减少误动作,而且功率消耗低;红外线不会向室外泄露,不会产生信号串扰;反响速度快、传输效率高、工作稳定可靠等。工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。所以红外线遥控是目前使用最广泛的一种通信和遥控手段。在本设计中,而且它已经与 PC 机的数据库相结合,可以组成一套酒店房间的门禁管理系统。. z-1.2 国内外研究现状目前大局部的锁采用的都是机械式的,其最大的缺点是利用简单工具就能很容易地把锁翻开。针对这种情况,我们设计了一种红外遥控密码锁,而一般设备都采用专用的遥控编码及解码集成电路,其制作简单、容易,但由于特定功能的限制,只适用于专用的电器产品,其应用*围受到限制。而设计的红外遥控密码锁系统能提高门禁系统的可靠性和平安性,适应市场需要。该系统具有普通电子密码锁功能的同时,还增加了遥控功能。该系统具有较强的实际应用价值,所涉及的技术包括:红外载波数据传输技术、单片机控制技术、红外遥控系统编码及译码技术、电路设计与演示板制作技术等。1.3 课题研究方法本设计基于STC89C51单片机系列,运用了两块单片机芯片,一片实现红外解码,一块用来按键控制,二级管显示以及数据存储,通过查找资料确定各个模块的功能及实现方法,先在软件上进展调试,再根据硬件修改调试软件,最后将各个模块合理组合在一起,到达预计的功能与目标。基于以上思路,本次设计使用ATMEL公司的AT89C51实现基于单片机的电子密码锁的设计,其主要具有如下功能:设置6位密码,密码通过键盘输入,假设密码正确,则将锁翻开。密码可以由用户自己修改设定只支持6位密码,锁翻开后才能修改密码。修改密码之前必须再次输入密码,在输入新密码时候需要二次确认,以防止误操作。报警、锁定键盘功能。密码输入错误数码显示器会出现错误提示,假设密码输入错误次数超过3次,蜂鸣器报警并且锁定键盘。1.4电子密码锁的开展趋势从目前的技术水平和市场认可程度看,使用最为广泛的是键盘式电子密码锁,该产品主要应用于保险箱、保险柜和金库,还有一局部应用于保管箱和运钞车。键盘式电子密码在键盘上输入,与打差不多,因而易于掌握,其突出优点是“密码是记在被授权人脑子里的数字和字符,既准确又可靠,不会丧失除了忘记,难以被窃除非自己泄露。但是密码不能太简单,太简单了就容易被他人在键盘上试探出来,或者可能被旁观者窥测出来,造成*性缺乏。当然,密码又不能太复杂,太复杂了可能自己都糊涂了,或者输入密码操作成功率低,造成使用不便。因此,为了发扬优点、抑制弱点,键盘式电子密码也在不断开展中,如“任意设定密码技术使得被授权人可以根据自己的需要或喜好设定密码,常用常新;而“自动更改密码技术使得本次输入的密码将自动更改成下次应输入的密码,更改的规律不为他人所知,因而不怕旁观者窥测;独出心裁的“键盘乱序显示技术使得键盘上的固定键位每次显示出的字符不固定,并且显示的窄小角度只能由操作者正面看得到,因而即使旁观者看见操作动作也难以窥测出密码;“多重密码设定技术使得单组密码不一定有效,适合多人分权使用,需要输入两组以上的密码才被认可,大大提高了*性,如果限定输入这些密码的先后顺序或时间区段,则*性还可提高。在输入密码的过程中,为了限制试探密码的企图,通常输入错误码假设干次或假设干时间内输入不正确,即“封锁键盘,不再承受输入操作。总之,尽管新式电子防盗锁层出不穷,但键盘式电子密码防盗锁不仅在市场上居于主流地位,而且,还经常作为其他类型电子防盗锁的辅助输入手段。1.5本文研究的主要内容1.红外技术在现代生活中的应用以及该课题的国内外研究现状,探讨与确定研究本课题的方法。红外线电子密码锁采用数字信号编码和二次调制方式,不仅可以实现多路信息的控制,增加遥控功能,提高信号传输的抗干扰性,减少误动作,而且功率消耗低;红外线不会向室外泄露,不会产生信号串扰;反响速度快、传输效率高、工作稳定可靠等。2.单片机红外遥控密码锁利用红外技术实现两点间的近距离*通信和信息转发。红外遥控是单工的红外通信方式,本设计的红外遥控采用以通信方式为根底的红外遥控。它一般由红外发射和接收系统两局部组成。以及介绍每个引脚的功能,以及单片机的作用,通过介绍实现他的关键技术提出了系统设计的方案硬件解码方案和软件解码方案。3.本设计具体介绍了红外通讯模块,键盘模块,密码存储模块以及显示模块的根本知识与其实现的方法。红外通讯模块解决遥控解码问题,通过弄清楚红外的编码格式,就能通过软件解码方式读取遥控发射的数据。键盘局部介绍了键盘的原理与实现。密码存储模块运用了I2C总线技术,详细介绍了I2C总线技术的优缺点。. z-第二章 根本原理及方案的论证2.1 红外通讯原理红外遥控是单工的红外通信方式,本设计的红外遥控采用以通信方式为根底的红外遥控,而且本设计也使用了红外通信技术,故着重分析红外通信的根本原理。红外通信是利用红外技术实现两点间的近距离*通信和信息转发。它一般由红外发射和接收系统两局部组成。发射系统对一个红外辐射源进展调制后发射红外信号,而接收系统用光学装置和红外探测器进展接收,就构成红外通信系统。红外线是波长在 750nm至1mm之间的电磁波,它的频率高于微波而低于可见光,是一种人的眼睛看不到的光线。红外通信一般采用红外波段内的近红外线,波长在 0.75um至 25um之间。红外数据协会IrDA成立后,为了保证不同厂商的红外产品能够获得最正确的通信效果,红外通信协议将红外数据通信所采用的光波波长的*围限定在 850 至 900nm之内。红外通信的根本原理是发送端将基带二进制信号调制为一系列的脉冲串信号载波信号 ,通过红外发射管发射红外信号。常用的有通过脉冲宽度来实现信号调制的脉宽调制PWM和通过脉冲串之间的时间间隔来实现信号调制的脉时调制PPM两种方法。脉时调制PPM是红外数据协会(IrDA)和国际电子电工委员会(IEEE)都推荐的调制方式,本设计采用脉时调制方法,即用两个脉冲串之间的时间间隔来表示二进制信息,数据比特的传送仿照不带奇偶校验的RS232 通信,首先产生一个同步头,然后接着 8 位数据比特就像图中所示一样,正如图 2-1所示,红外发射管发射红外信号。二进制数0二进制数1图 2-1 PPM 调制波形图普通的红外遥控采用面向指令的帧构造,数据帧由同步码,地址码和指令码组成,指令码长度多为 816 个比特,传送多字节遥控协议时效率偏低,而增加指令码的长度不利于接收器同步,为此本设计选用一种面向字节的帧构造,采用类似于异步串行通信的帧构造,每帧由一个起始位二进制数 0 、8 个数据位和 2 个停顿位二进制数 1构成,如图 2-2 所示。每帧传送 1 个字节的数据,帧与帧间隔大于 2ms,帧构造不含地址信息,寻址问题由高层协议解决。数据帧帧间隔数据位停顿位图 2-2 数据帧构造示意图由于红外光存在反射,在全双工的方式下发送的信号也可能会被本身接收,因此,红外通信应采用异步半双工方式,即通信的*一方发送和接收是交替进展的。红外的发射和接收:红外线波长在750nm至1um之间的电磁波,它的频率低于可见光,是一种人的眼睛看不到的光线。红外遥控具有抗干扰能力强,信息传输可靠,功耗低,本钱低,易于实现等显著优点。红外遥控由发送和接收两局部组成,发送端采用单片机将待发送的二进制信号编码调制为一系列的脉冲信号,通过红外发射管发射红外信号。红外接收采用性能可靠的一体化红外接收头接收红外信号,它同时对信号进展放大,检波,整形,得到TTL电平的编码信号,再送给单片机,经单片机解码并进展相关操作,发送与接收示意图如图2-3所示:图2-3发送与接收示意图由上所述可知,遥控系统分为编码,调制,解调和解码四大部如图2-4所示:图2-4红外框图红外通信标准:1993年,由HP、PAQ、INTEL等二十多家公司发起成立了红外数据协会Infrared Data Association,简称IRDA,1993年6月28日,来自50多家企业的120多位代表出席了红外数据协会的首次会议,并就建立统一的红外通讯标准问题达成了一致。IRDA1.0简称为SIRSerial InfraRed,它是基于HP-SIR开发出来的一种异步的、半双工的红外通讯方式。SIR以系统的异步通讯收发器UART为依托,通过对串行数据脉冲的波形压缩和对所接收的光信号电脉冲的波形扩展这一编码解码过程3/16 EnDec实现红外数据传输。由于受到UART通讯速率的限制,SIR的最高通讯速率只有115.2kbps,也就是大家熟知的电脑串行端口的最高速率。IRDA标准包括三个根本的规*和协议:物理层规*Physical Layer Link Specification建立协议ink Access Protocol:IRLAP管理协议Link Management Protocol:IRLMP2.2密码存储局部的电路设计为了保存用户设置的密码, 该系统使用AT24C02 用来保存用户设置的密码,单片机AT89C51 的P3.6 接AT24C02 的SCL口作为它的串行移位时钟, AT89C51 的P3.7 接AT24C02的SDA 口作为它的串行数据或地址输入输出。该电路要注意的是SCLK、SDA 必须加上一上接电阻, 用户设置的密码存放在AT24C02 中, 当需要更改或读取用户密码时, 只需对AT24C02里的数据更改或读取。由于主芯片AT89C51 没有I2C 总线, 故本系统采用软件程序模拟I2C 总线时序来完成AT89C51 来与AT24C02的连接。2.3 报警电路设计本系统设计时考虑到防盗而设计了报警电路, 由蜂鸣器发声进展报警, 蜂鸣器接在CPU 的引脚P0.4 上, 通过PNP 型三极管做电流放大, 因此可以通过单片机控制蜂鸣器的频率及蜂鸣时间。当输入错误的密码进展开锁时, 系统会报警, 由P0.4 口输出低电平使得PNP 型三极管导通, 蜂鸣器两端加电, 由蜂鸣器发出1 秒的报警声, 当连续三次出现密码错误时, 则系统会长时间报警, 此举为了防止别人非法试探开锁。要完本钱系统功能, 首先要需要解决对红外信号的译码问题, 并在存储式示波仪上观察其具体波形, 这就要要求了解其编码规则。一般的编码发射的一帧码含有一个引导码, 用户码和键数据码。引导码由一个较长的载波波形和一段关断时间构成, 它作为随后发射的码的引导。用户码和键数据码是由逻辑“0和逻辑“1组成的具有规定长度的字符串。逻辑“0和逻辑“1是用上下电平的不同组合来表示的, 则可以用单片机的两个定时计数器, 对其上下电平进展计数,具体是这样的: 当单片机检测到第一个低电平, 则定时计数器T0 立即开场计数, 等到检测到高电平出现, T0 停顿计数, T1 又立即开场计数, 在T1计数的同时, 对T0 的计数保存, 再次出现低电平, T1 停顿计数, T0 又开场计数, 在T0 计数的同时保存T1 的计数, 这样就有了一组低和高的组合, 通过判断这个组合属于哪个*围即可译码“0或者“1, 如此循环, 直到译出所有的位。这样我们就可以根据译码所得的值命令单片机系统去完成相应的操作。2.4 单片机工作的根本时序1.机器周期和指令周期:1振荡周期: 也称时钟周期, 是指为单片机提供时钟脉冲信号的振荡源的周期。 2状态周期: 每个状态周期为时钟周期的 2 倍, 是振荡周期经二分频后得到的。 3机器周期: 一个机器周期包含 6 个状态周期S1S6, 也就是 12 个时钟周期。 在一个机器周期内, CPU可以完成一个独立的操作。 4指令周期: 它是指CPU完成一条操作所需的全部时间。 每条指令执行时间都是有一个或几个机器周期组成。MCS - 51 系统中, 有单周期指令、双周期指令和四周期指令。 2.时钟电路引脚:*TAL1:接外部晶振和微调电容的一端,在单片机内部,它是构成片内振荡器的反向放大器的输入端。当采用外部振荡器时,该引脚接收振荡器的信号,即把此信号直接接到内部振荡器的输入端。 *TAL2:接外部晶振和微调电容的另一端,在单片机内部,它是构成片内振荡器的反向放大器的输出端。当采用外部振荡器时,此引脚应悬空。3.控制信号引脚:RST/VPD:RST是复位信号输入端如图2-5,高电平有效。当此输入端保持2个机器周期的高电平时,就可以完成复位操作。RST引脚的第二功能是备用电源的输入端。图25复位电路连接图ALE/PROG:(Address Latch Enable/ Programming)当单片机上电正常工作后,ALE引脚不断向外输出正弦脉冲信号,此频率为振荡器频率的1/6。CPU外部存储器时,ALE作为锁存低8位地址的控制信号。此引脚的第二功能PROG作为8751编程脉冲输入端使用。PSEN:(Program Store Enable)在片外存储器时,此端定时输出负脉冲作为片外存储器的选通信号。EA/VPP:(Enable Address/Voltage Pulse Of Programming)当EA接高电平时,CPU片内ROM,并执行内部程序存储器中的指令,但当PC程序计数器的值超过4K时,将自动转去执行片外存储器内的程序。当EA脚接低电平时,CPU只片外ROM并执行外部程序存储器中的指令,而不管是否有片内程序存储器。VPP是对8751片内ROM固化程序时,作为施加较高编程电压12V21V的输入端。4.输入输出引脚:P0P3:4个8位双向输入输出端口,每个端口都有锁存器、输出驱动器和输入缓冲器。4个端口都可以做输入输出口使用,其中,P0和P2通常用于对外部存储器的。在这种方式下,把P0口作为地址/数据总线使用,分时输出外部存储器的地址和传送8位数据。当扩大外部存储器的地址为16位时,P2口作为地址总线的高8位地址使用。2.5程序框图图2-6程序框图2.6方案的比较及确定本设计的重点在于遥控解码,遥控解码的方式有硬件解码与软件解码。方案一:硬件解码。硬件解码:在承受遥控的一边可以连接一个专用解码芯片,只要按键盘上的键值,它就能直接把这个键值解码出来并存储,当你调用这个键值的时候只要从里面去读取就行了,所以它的解码率高,读取显示简单,这是它的优点。可是该芯片价格昂贵,而且只能解码对应的遥控器,兼容性差,本钱昂贵,不适合用作市场量产。方案二:软件解码。软件解码:根据遥控器选择的芯片不同,其遥控码格式也有不同。现在市场上主要有日本的NEC标准和飞利浦标准,通过软件的方式解码时解码的正确率就是一个很重要的指标了。在单片机编程的时候是选择用执行效率高的汇编语言还是选用可读性编写容易的C语言呢.不可否认汇编的执行效率是C语言的几倍甚至几十倍,而且误码率低,可是如果选择汇编的话编写难度可想而知,可是如果用C语言编写的话误码率及实时性又会变得比较差。综合以上考虑,如果我们能够在解码这局部用汇编,而显示及控制这局部用C语言编写的话,就能较好的完成我们预期的目标。因此我选用了一块AT89C51单片机芯片,一块负责红外解码,。事实证明,我的选择和预想中的一样,很好的解决了汇编与C语言难以共存的问题。基于上述比较,我们选择了方案二,采用汇编与C语言共同的软件解码方式。2.7 本章小结本章介绍了基于单片机红外遥控密码锁设计的两个重点,利用红外技术实现两点间的近距离*通信和信息转发。红外遥控是单工的红外通信方式,本设计的红外遥控采用以通信方式为根底的红外遥控。它一般由红外发射和接收系统两局部组成。发射系统对一个红外辐射源进展调制后发射红外信号红外通讯根本原理与单片机芯片AT89C51的根底知识。以及介绍每个引脚的功能,以及单片机的作用,通过介绍实现他的关键技术提出了系统设计的方案硬件解码方案和软件解码方案。以及而后对两个方案的优缺点进展比较,最终确定了实现设计的方案软件解码方案。. z-. z-第三章模块的功能介绍3.1 红外遥控技术硬件介绍遥控器里面是一个键盘编码器,每个按键对应一个编码,在把编码调制到一个高频信号上,其目的是为了降低发射的功率损耗;再把调制好的信号送给红外发光管把信号发送出去。正如红外遥控流程图所示,接收过程恰好与此相反,首先由红外接收管收到微弱的信号,经放大后解调把高频载波去掉,再进展解码,就可得到遥控器发过来的数据。键 盘编码调制L E D解 调广电放大解码图3-1 红外遥控流程图图3.1中遥控接收器局部的“光电放大和“解调由一体化接收头完成,单片机要做的只是“解码 。实验板上一体化接收头的数据输出线经过了 INT0 切换开关连接到单片机的 P32 脚即 INT0 ,INT0 切换开关弹起时连通。 实现方法:经遥控器发送的是串行数据, 通过脉冲的占空比来区别 0 和 1 ; 以脉宽为 0.565ms,间隔 0.56ms,周期为 1.125ms 的组合表示二进制0 ;以脉宽为 0.565ms,间隔为 1.685ms,周期为 2.25ms 的组合表示二进制1,其波形如以下图3-2所示,用0码,1码,来进展传输。0.56ms1.125ms0.56ms1.125ms0码1码0.56ms0.56ms1.125ms1.125ms图3-2 遥控码的“0和“1遥控器产生的遥控编码是连续的32位二进制码组,其中前16位为用户识别码,能区别不同的电器设备;后 16 位为 8 位操作码及其反码,最多可产生128 个不同的编码。 当遥控器一个键按下超过36ms,震荡器使芯片激活,将发射一组 108ms 的编码脉冲,这 108ms 发射代码由一个起始码 9ms , 一个结果码 4.5ms , 低8位地址码9ms18ms ,高 8位地址码9ms18ms ,8 位数据码9ms18ms及其反码9ms18ms组成。如果键按下超过 108ms 仍未松开,接下来发送的代码连发码就只由起始码9ms和完毕码4.5ms组成。解码关键在于如何识别0和1 , 0和1均以 0.56ms 的低电平开场,不同的是高电平的宽度不同, 0为0.56ms, 1为1.68ms,所以必须根据高电平的宽度区别0和1 。如果从 0.56ms 过后开场延时,0.56ms 后假设读到低电平,说明该位为0 ,反之为1 ;正如以下图3-3数据码的组成所描述一样。为了可靠起见,延时必须比 0.56ms 长一些,但又不能超过1.12ms,否则如果该位为0 ,读到的已是下一位的高电平,因此取0.84ms比较可靠。108ms108ms1.125ms1.125ms 图3-3 数据码的组成3.2 遥控器键盘每一条水平行线与垂直线列线的穿插处不相通,而是通过一个按键来连通,利用这种行列式矩阵构造只需要N条行线和M条列线,即可组成具有NM个按键的键盘。键盘扫描时,首先由I/O口低四位输出高电平,高四位输出低电平,假假设有键按下,则在I/O口低四位即可读出低电平,接着延时消抖,再具体判断是何键按下。判断键盘中有无键按下:将全部行线 置低电平 然后检测列线的状态 只要有一列的电平为低 则表示键盘中有键被按下 而且闭合的键位于低电平线与4根行线相穿插的 4个按键之中 假设所有列线均为高电平 则表示键盘中无键按下。判断闭合键所在的位置:在确认有键按下后 即可进入确定具体闭合键的过程 其方法是 依次将行线置为低电平 即在置*根行线为低电平时 其它线为高电平 当确定*根行线为低电平后 再逐行检测各列线的电平状态 假设*列为低 则该列线与置为低电平的行线穿插处的按键就是闭合的按键. 现将接收局部的键盘功能做一下说明,0至9号键为数字键,六位密码从中产生。“确认键,“更改键,“取消键和“MAS键为功能按键,具有控制开锁,更改密码和取消相关操作等功能。剩余的两个键在本设计中未用,可作为今后的功能扩展键使用。3.3 I2C总线技术I2C总线特点I2C总线最主要的优点是其简单性和有效性,由于接口直接在组件之上,因此I2C总线占用的2C总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。在CPU与被控IC串行 EEPROM24C02 读写实验 I2I2空间非常小,减少了电路板的空间和芯片管脚的数量,降低了互联本钱。总线的长度可高达 25 英尺,并且能够以10Kbps的最大传输速率支持 40 个组件。I2C总线的另一个优点是,它支持多(multimastering),其中任何能够进展发送和接收的设备都可以成为主总线。一个主控能够控制信号的传输和时钟频率。当然,在任何时间点上只能有一个主控。 I之间、IC与IC之间进展双向传送,最高传送速率 100kbps。各种被控制电路均并联在这条总线上,但就像机一样只有拨通各自的才能工作,所以每个电路和模块都有唯一的地址,在信息的传输过程中,I2C总线上并接的每一模块电路既是主控器 或被控器 ,又是发送器或接收器,这取决于它所要完成的功能。 I2C通信原理1.传输:SDA线上的数据必须在时钟的高电平时期保持稳定,SDA线上的电平状态I21数据传输,正像以下图3-4中所示,SDA 线只有在时钟的低电平时期才能改变。2.信号:SCL 为高电平时,SDA 由高电平向低电平跳变,开场传送数据。 3.信号:SCL为高电平时,SDA由低电平向高电平跳变,完毕传送数据。4.信号:接收数据的 IC 在接收到 8bit 数据后,向发送数据的IC 发出低电平脉。图3-4DA和SCL相互关系5.根本操作:I2C规程运用主/从双向通讯。器件发送数据到总线上,则定义为发送冲,表示已收到数据。CPU向受控单元发出一个信号后,等待受控单元发出一个应答信号,CPU接收到应答信号后,根据实际情况作出是否继续传递信号的判断。假设未收到应答信号,则判断为受控单元出现故障。器,器件接收数据则定义为接收器。主器件和从器件都可以工作于接收和发送状态。总线必须由主器件通常为微控制器控制,主器件产生串行时钟SCL控制总线的传输方向,并产生起始和停顿条件。正如图SCL与SDA波形关系图3-5所示,SDA线上的数据状态仅在SCL为低电平的期间才能改变,SCL为高电平的期间,SDA状态的改变被用来表示起始和停顿条件。图3-5 SCL与SDA波形关系3.4 2764 介绍 2764是8K*8字节的紫外线镲除、电可编程只读存储器,单一+5V供电,工作电流为75mA,维持电流为35mA,读出时间最大为250nS,参照如图3-6所示,28脚双列直插式封装,各引脚的含义为:图3-6 2764管脚图 A0-A12为13根地址线,可寻址8K字节;O0-O7为数据输出线;CE为片选线;OE为数据输出选通线;PGM为编程脉冲输入端;Vpp是编程电源;Vcc是主电源。正常工作只读时,Vpp=Vcc=+5V,PGM=+5V。编程时,Vpp+25V高压,PGM端参加宽度为50ms的负脉冲。EPROM电路:EPROM 2764的外部引线,这是一块8K8bit的EPROM芯片,它的引线与SRAM芯片6264是兼容的。这给使用者带来很大方便,因为在软件调试过程中,程序经常需要修改,此时可将程序先放在6264中,读写修改都很方便。调试成功后,将程序固化在2764中,由于它与 6264的引脚兼容,所以可以把2764直接插在原6264的插座上。这样,程序就不会由于断电而丧失。下面介绍2764各引脚的含义:1. A0A12:13根地址输入线。用于寻址片内的8K个存储单元。2.D0D7:8根双向数据线,正常工作时为数据输出线。编程时为数据输入线。 3.OE:输出允许信号。低电平有效。当该信号为0时,芯片中的数据可由D0D7端输出。4.CE:选片信号。低电平有效。当该信号为0时表示选中此芯片。5.PGM:编程脉冲输入端。对EPROM编程时,在该端加上编程脉冲。读操作时该信号为1。6.VPP:编程电压输入端。编程时应在该端加上编程高电压,不同的芯片对VPP的值要求的不一样,可以是+12.5V,+15V,+21V,+25V等。说明:EPROM的一个重要优点是可以擦除重写,而且允许擦除的次数超过上万次。一片新的或擦除干净EPROM芯片,其每一个存储单元的内容都是FFH。要对一个使用过的EPROM进展编程,则首先应将其放到专门的擦除器上进展擦除操作。擦除器利用紫外线光照射EPROM的窗口,一般经过1520min即可擦除干净。擦除完毕后可读一下EPROM的每个单元,假设其内容均为FFH,就认为擦除干净了。3.524C02介绍24C02是CMOS 2048位串行EEPROM,内部组织成 2568位。16 字节页面写。由于SDA是漏极开路输出,且可以与任何数目的漏极开路或集电极 开路输出“线或wire-Ored连接。上拉电阻的选择可参考 24C02 的数据手册一般为 10K。下面是通过I2C接口对 24C04 进展单字节写操作的例程。特性:与400KHz I2C 总线兼容1.8 到6.0 伏工作电压*围, 低功耗CMOS 技术写保护功能当WP 为高电平时进入写保护状态, 页写缓冲器自定时擦写周期 1,000,000 编程/擦除周期可保存数据100 年, 8 脚DIP SOIC 或TSSOP 封装温度*围商业级工业级和汽车级。24C02 是一个4K 位串行CMOS E2PROM 内部含有,512 个8 位字节,CATALYST 公司的先进CMOS 技术实质上减少了器件的功耗24C02 有一个8 字节页写缓冲,24C02 有一个16 字节页写缓冲器该器件通过,I2C 总线接口进展操作有一个专门的写保。管脚名称 ,功能,如图3-7所示A0 A1 A2 器件地址选择SDA 串行数据/地址SCL 串行时钟WP 写保护Vcc +1.8V 6.0V 工作电压Vss 地管脚描述:SCL 串行时钟:24C02 串行时钟输入管脚用于产生器件所有数据发送或接收的时钟,是一个输入管脚。SDA 串行数据/地址:24C02 双向串行数据/地址管脚用于器件所有数据的发送或接收SDA 是一个开漏。输出管脚可与其它开漏输出或集电极开路输出进展线。A0 A1 A2 器件地址输入端:这些输入脚用于多个器件级联时设置器件地址当这些脚悬空时默认值为0 ,24C02除外当使用24WC02 时最大可级联8 个器件如果只有一个24WC02 被总线寻址这三个地址输入脚A0 A1 A2 可悬空或连接到Vss脚。WP 写保护:如果WP 管脚连接到Vcc 所有的内容都被写保护只能读当WP 管脚连接到Vss 或悬空允许。器件进展正常的读/写操作。图3-7 24C02电路图3.6 MA*232 介绍图3-8MA*232管脚图 第一局部是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。 第二局部是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。 其中13脚R1IN、12脚R1OUT、11脚T1IN、14脚T1OUT为第一数据通道。 8脚R2IN、9脚R2OUT、10脚T2IN、7脚T2OUT为第二数据通道。 TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DB9插头;DB9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。 第三局部是供电,15脚GND、16脚VCC+5v。 编辑本段主要特点:1.合所有的RS-232C技术标准 2.需要单一 +5V电源供电 3.载电荷泵具有升压、电压极性反转能力,能够产生+10V和-10V电压V+、V- 4.耗低,典型供电电流5mA 5.部集成2个RS-232C驱动器 6.部集成两个RS-232C接收3.774LS573介绍74LS573管脚图如以下图3-9所示图3-9 74LS573三态总线驱动输出置数全并行存取缓冲控制输入使能输入有改善抗扰度的滞后作用原理:74LS573 的八个锁存器都是透明的D 型锁存器,当使能G为高时,Q 输出将随数据D输入而变。当使能为低时,输出将锁存在已建立的数据电平上,输出控制不影响锁存器的内部工作,即老数据可以保持,甚至当输出被关闭时,新的数据也可以置入。这种电路可以驱动大电容或低阻抗负载,可以直接与系统总线接口并驱动总线,而不需要外接口。特别适用于缓冲存放器,I/O 通道,双向总线驱动器和工作存放器。3.8AT89C51芯片介绍图3-10 89C51芯片引脚图STC89C51的芯片管脚图如图3-10所示1.一个8位的微处理器;2.片内数据存储器RAM,用以存放可以读/写的数据,如运算的中间结果、最终结果及显示的数据等;3.片内程序存储器ROM/EPROM,用以存放程序、一些原始数据和表格;4.四个8位并行I/O接口P0P3,每个口可以用作输入,也可以用作输出;5.二个定时器/计数器,每个定时器/计数器都可以设置成计数方式,用以对外部事件进展计数,也可以设置成定时方式,并可以根据计数或定时的结果实现计算机控制;6.六个中断源的中断控制系统;7.一个全双工UART接口通用异步接收发送器的串行I/O,用于实现单片机之间或单片机与计算机之间的串行通信;8.片内振荡器和时钟产生电路,但石英晶体和微调电容须要外接。可以看出STC89C51系列单片机也是一款功能强大的单片机。特点:1.增强型6时钟/机器周期,12时钟/机器周期8051CPU。2.工作电压:5.5V-3.4V5V单片机)/3.8V-2.0V3V单片机。3.工作频率*围:0-40MHz,相当于普通8051的0-80MHz,实际工作频率可达48MHz。4.用户应用程序空间4K/8K/13K/16K/20K/32K/64K字节。5.片上集成128字节/512字节RAM。6.通用I/O口32/36个,复位后为:P1/P2/P3/P4是准双向口/弱上拉,P0口是开路输出,作为总线扩展用时,不加上拉电阻,作为I/O口用时,需加上拉电阻。7.ISP在系统可编程/IAP在应用可编程,无需专用编程器/仿真器,可通过串口(P3.0/P3.1)直接下载用户程序,8K程序3秒即可完成一片。8.EEPROM功能。9.看门狗。10.内部集成MA*810专用复位电路(D版才有),外部晶体20M以下时,可省外部复位电路。11.共2个16位定时器/计数器,其中定时器0还可以当成2个8位定时器使用。12.外部中断2路:下降沿中断或低电平触发中断。13.通用异步串行口UART,还可用定时器软件实现多个UART。14.封装:LQFP-44,PDIP-40,PLCC-44,PQFP-44。引脚功能说明:VCC电源电压GND地P0口P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1时,可作为高阻抗输入端用。在外部数据存储器或程序存储器时,这组口线分时转换地址低8位和数据总线复用,在期间激活内部上拉电阻。在FLASH编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接“上拉电阻。P1口P1口是一个内部带上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动吸收或输出电流4个TTL逻辑门电路。对端口写“1,通过内部的上拉电阻把端口拉到高电平,此时可作输出口。作输入口使用时,因为内部存在上拉电阻,*个引脚被外部信号拉低时会输出一个电流。P1.0和P1.1的第二功能:P1.0 T2定时/计数器2外部计数脉冲输入,时钟输出P1.1 T2E*定时/计数2捕获/重装载触发和方向控制P2口P2是一个内部带上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动吸收或输出电流4个TTL逻辑门电路。对端口P2写“1,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,*个引脚被外部信号拉低时会输出一个电流。在外部程序存储器或16位地址的外部数据存储器例如执行MOV*DPTR指令时,P2口送出高8位地址数据。在8位地址的外部数据存储器如执行MOV*RI指令时,P2口输出P2锁存器的内容。FLASH编程或校验时,P2亦接收高位地址和一些控制信号。P3口P3口是一组带有内部上拉电阻的8位双向I/O口。P3口输出缓冲级可驱动吸收或输出电流4个TTL逻辑门电路。对P3口写入“1时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3口将用上拉电阻输出电流。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如下所示:P3.0 R*D(串行输入口) P3.1 T*D(串行输出口) P3.2 INTO(外中断0)P3.3 INT1(外中断1)P3.4 TO(定时/计数器0)P3.5 T1(定时/计数器1)P3.6 WR(外部数据存储器写选通信号)P3.7 RD(外部数据存储器读选通信号)此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。RST复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。ALE/PROG当外部程序存储器或数据存储器时,ALE地址锁存允许输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲PROG。如有必要,可通过对特殊功能存放器SFR区中的8EH单元的D0位置位,可制止ALE操作。D0置位后,只有一条MOV*和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE制止位无效。PSEN程序储存允许PSEN输出
展开阅读全文