基于单片机的红外遥控电子密码锁设计毕业论文.doc

上传人:知****量 文档编号:43226879 上传时间:2022-09-17 格式:DOC 页数:59 大小:541.50KB
返回 下载 相关 举报
基于单片机的红外遥控电子密码锁设计毕业论文.doc_第1页
第1页 / 共59页
基于单片机的红外遥控电子密码锁设计毕业论文.doc_第2页
第2页 / 共59页
点击查看更多>>
资源描述

《基于单片机的红外遥控电子密码锁设计毕业论文.doc》由会员分享,可在线阅读,更多相关《基于单片机的红外遥控电子密码锁设计毕业论文.doc(59页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、 基于单片机的红外遥控电子密码锁设计毕业论文目录1 引言31.1 电子密码锁的背景与研究意义31.2 红外电子密码锁的现状与发展趋势41.3 课题研究方法52 红外通信原理52.1 红外的发射和接收52.1.1 编码解码62.1.2 调制72.1.3 解调接收73 硬件电路设计73.1 整系统框图73.2设计思想83.3 有关芯片的简介9 3.3.1 单片机 AT89C5193.3.2存储芯片AT24C02介绍113.3.3 I2C总线介绍123.3.4 LCD1602 液晶显示153.3.5红外接收头183.4电路图的设计193.4.1 复位电路193.4.2 振荡电路203.4.3 继电器

2、驱动电路203.4.4 24C02213.4.5 LCD 1602214 系统软件设计224.1 KEIL 软件的简介224.2 系统功能子程序224.2.1 数据读写模块224.2.2 红外发射接收模块244.2.5 主流程图265 电路仿真与调试275.1 报警电路275.2 显示电路275.3 开锁电路28致谢29参考文献30附录A 外文资料翻译31附录B 源程序38附录C 电路图601 引言1.1 电子密码锁的背景与研究意义在当今社会,安全防盗已成为社会问题,而锁自古以来就是防盗的重要工具,目前国大部分人使用的还是传统的机械锁,然而,眼下假冒伪劣的机械锁互开率非常之高,此外,即使是一把

3、质量过关的机械锁,通过急开锁,甚至可以在不损坏锁的前提下将锁打开。机械锁的这些弊端为一种新型的锁电子密码锁,提供了很大的发展空间。由于红外遥控具有许多优点, 例如红外线发射装置采用红外发光二极管遥控发射器易于小型化且价格低廉; 采用数字信号编码和二次调制方式,不仅可以实现多路信息的控制,增加遥控功能,提高信号传输的抗干扰性,减少误动作,而且功率消耗低;红外线不会向室外泄露,不会产生信号串扰;反应速度快、传输效率高、工作稳定可靠等。工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。所以红外线遥控是目前使用最广泛的一种通信和遥控手段。 在本设计中

4、,红外遥控密码锁和 PC 机、数据库相结合,能够实现适时的、强大的管理,使得整个红外遥控系统得到更好的完善。 本文从经济实用的角度出发,设计采用单片机为主控芯片,结合外围电路,组成电子密码控制系统,密码锁共6位密码,每位的取值围为09,用户可以自行设定和修改密码,每个密码按键都有声、光提示。用户想要打开锁,必先通过提供的键盘输入正确的密码才可以,密码输入错误有提示,为了提高安全性,当密码输入错误将报警,期间输入密码无效,以防窃贼多次试探密码。六位密码同时输入正确,锁才能打开。其特点如下:1) 性好,编码量多,远远大于弹子锁。随机开锁成功率几乎为零。2) 密码可变,用户可以随时更改密码,防止密码

5、被盗,同时也可以避免因人员的更替而使锁的密级下降。3) 误码输入保护,当输入密码多次错误时,报警系统自动启动。1.2 红外电子密码锁的现状与发展趋势在日常的生活和工作中, 住宅与部门的安全防、单位的文件档案、财务报表以与一些个人资料的保存多以加锁的方法来解决。若使用传统的机械式钥匙开锁,人们常需携带多把钥匙, 使用极不方便, 且钥匙丢失后安全性即大打折扣。在安全技术防领域,随着单片机的问世,出现了带微处理器的密码锁,它除具有电子密码锁的功能外,还引入了智能化、科技化等功能,从而使密码锁具有很高的安全性、可靠性。当今电子密码锁发展已经到了非常高的境界,由于电子元件特别是单片机应用在这几年得到空前

6、发展,无论功能性,稳定性都比较全面,在方面已做到人眼识别,指纹识别,人声识别基本上电影上有的现实也有。在国外发展比较早,所以应用也比较广泛,主要在家庭装较贵重地方,银行,保险柜等应用较多,在国这方面发展也较快,不管自己开发或是引进都有,在重要地方应用也较多,由于价钱比普通弹子锁较贵,早几年应用较少,现在越来越普与到平常化,未来的发展也会越来越被大众采用,由于它的功能、安全是弹子锁无法相比的5。发展前境也是非常大的。目前大部分的锁采用的都是机械式的,其最大的缺点是利用简单工具就能很容易地把锁打开。针对这种情况,我们设计了一种红外遥控密码锁,而一般设备都采用专用的遥控编码与解码集成电路,其制作简单

7、、容易,但由于特定功能的限制,只适用于专用的电器产品,其应用围受到限制。而设计的红外遥控密码锁系统能提高门禁系统的可靠性和安全性,适应市场需要。该系统具有普通电子密码锁功能的同时,还增加了遥控功能。该系统具有较强的实际应用价值,所涉与的技术包括:红外载波数据传输技术、单片机控制技术、红外遥控系统编码与译码技术、电路设计与演示板制作技术等。1.3 课题研究方法主要的设计实施过程:首先,选用ATMEL公司的单片机AT89C51,以与选购其他电子元器件。第二步,使用PROTEL99完成原理图,并设计PCB图完成人工布线(后因PCB板损坏决定采用万能板焊接的方法)。第三步,使用Keil uVision

8、3软件编写单片机的C语言程序、仿真、软件调试。第四部,使用PROTEUS软件进行模拟软、硬件调试。最后,联合软、硬件调试电路板,完成本次设计。2 红外通信原理红外遥控有发送和接收两个组成部分。发送端采用单片机将待发送的二进制信号编码调制为一系列的脉冲串信号,通过红外发射管发射红外信号。红外接收完成对红外信号的接收、放大、检波、整形,并解调出遥控编码脉冲。为了减少干扰, 采用的是价格便宜性能可靠的一体化红外接收头(HX1838, 它接收红外信号频率为38kHz,周期约26 s) 接收红外信号,它同时对信号进行放大、检波、整形得到 TTL 电平的编码信号,再送给单片机,经单片机解码并执行去控制相关

9、对象。单片机 HX1838红外发射电路 单片机 图2 原理方框图(编码与解码是一对逆过程,不仅在原理上是一对逆过程,在码的发收过程也是互反的,即以前发射端原始信号是高电平,那接收头输出的就是低电平,反之亦然。)2.1 红外的发射和接收红外线波长在750nm至1um之间的电磁波,它的频率低于可见光,是一种人的眼睛看不到的光线。红外遥控具有抗干扰能力强,信息传输可靠,功耗低,成本低,易于实现等显著优点。红外遥控由发送和接收两部分组成,发送端采用单片机将待发送的二进制信号编码调制为一系列的脉冲信号,通过红外发射管发射红外信号。红外接收采用性能可靠的一体化红外接收头接收红外信号,它同时对信号进行放大,

10、检波,整形,得到TTL电平的编码信号,再送给单片机,经单片机解码并进行相关操作。发送与接收示意图如下所示:图2.2发射与接收示意图2.1.1 编码解码0的编码与解码 0.56ms 0.56ms0.56ms0.56ms1的编码与解码1.685ms0.56ms1.685ms0.56ms 图 2.2 编码与解码遥控编码脉冲由前导码、16 位地址码(8位地址码、8 位地址码的反码)和 16 位操作码(8 位操作码、8 位操作码的反码)组成。前导码:是一个遥控码的起始部分,由一个9ms的高电平 ( 起始码 ) 和一个4. 5ms的低电平 ( 结果码 )组成,作为承受数据的准备脉冲。16位地址码:能区别不

11、同的红外遥控设备,防止不同机种遥控码互相干扰。16 位操作码:用来执行不同的操作。采用脉宽调制的串行码,以脉宽为0.56ms、间隔0.56ms、周期为1.12ms的组合表示二进制的“0”;以脉宽为1.68ms、间隔0.56ms、周期为2.24ms的组合表示二进制的“1”。2.1.2 调制 上述“0”和“1”组成的32位二进制码经38kHz的载频进行二次调制,然后再通过红外发射二极管产生红外线向空间发射。一般电视遥控器的遥控编码是连续的32位二进制码组,其中前16位为用户识别码,能区别不同的红外遥控设备,防止不同机种遥控码互相干扰。后16位为8位的操作码和8位的操作反码,用于核对数据是否接收准确

12、。 根据红外编码的格式,发送数据前需要先发送9ms的起始码和4.5ms的结果码。遥控串行数据编码波形如以下图所示: 图2.3 编码波形2.1.3 解调接收接收方一般使用HX1838一体化红外线接收器进行接收解码,当HX1838接收到38kHz红外信号时,输出端输出低电平,否则为高电平。所以红外遥控器发送红外信号时,参考上面遥控串行数据编码波形图,在低电平处发送38kHz红外信号,高电平处则不发送红外信号。 红外接收完成对红外信号的接收、放大、检波、整形,并解调出遥控编码脉冲。为了减少干扰,采用的是价格便宜性能可靠的一体化红外接收头(HX1838,它接收红外信号频率为38kHz,周期约26us)

13、 接收红外信号,它同时对信号进行放大、检波、整形得到 TTL电平的编码信号,再送给单片机,经单片机解码并执行去控制相关对象。3 硬件电路设计3.1 整系统框图 AT89C51 发射电路4*4键盘 复位电路 图3.1 遥控器整体框图 警报电路 接收电路 AT89C51 开锁电路 复位电路 1602显示电路 4*4键盘 24c02存储电路 图3.2本机总体框图该系统由发射模块和接收模块两部分构成,遥控器发射模块可以随身携带,只要在接收器附近,即可遥控开锁;接收器则集开锁、修改密码、报警和显示于一体。3.2设计思想本系统采用单片机AT89C2051和AT89C52作为核心的元件,利用红外遥控原理和单

14、片机相关功能设计的一款具有本机开锁,遥控开锁和可修改密码的电子密码锁。发射接收电路图如下: (a) (b) 图 3.3 发射与接收3.3 有关芯片的简介 3.3.1 单片机 AT89C51 图3.4 AT89C51 管脚图AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片含4K bytes的可反复擦写的只读程序存储器(EPROM)和128bytes的随机存取数据序存器(RAM),器件采用ATMEL公司的高密度/非易失性存储技术生产,兼容标准MCS-51指令系统,片置通用8位中央处理器(CPU)和FLASH存储单元,AT89C51单片机为许多嵌入式控制系统提供了一种灵活

15、行高且价廉的方案。1) 主要特性:8031 CPU与MCS-51 兼容 4K字节可编程FLASH存储器(寿命:1000写/擦循环) 全静态工作:0Hz-24KHz 三级程序存储器锁定 128*8位部RAM 32条可编程I/O线 两个16位定时器/计数器6个中断源 可编程串行通道 低功耗的闲置和掉电模式 片振荡器和时钟电路2)管教说明:VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当F

16、IASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,

17、P2口输出地址的高八位。在给出地址“1”时,它利用部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。 P3口也可作为AT89C51的一些特殊功能口,如下表所示:管脚 备选功能:P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外

18、部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。

19、如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有部程序存储器。注意加密方式1时,/EA将部锁定为RESET;当/EA端保持高电平时,此间部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源

20、(VPP)。XTAL1:反向振荡放大器的输入与部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3) 震荡特性XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。4) 芯片擦除整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。

21、 此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。3.3.2存储芯片AT24C02介绍管脚图如下图:AT24C02是美国Atmel公司的低功耗CMOS型EPROM,含2568位存储空间,具有工作电压宽(2.55.5 V)、擦写次数多(大于10000次)、写入速度快(小于10 ms)、抗干扰能力强、数据不易丢失、体积小等特点。而且他是采用了IC总线式进行数据读写的串行器件,占用很少

22、的资源和I/O线,并且支持在线编程,进行数据实时的存取十分方便。AT24C02中带有的片地址寄存器。每写入或读出一个数据字节后,该地址寄存器自动加1,以实现对下一个存储单元的读写。所有字节均以单一操作方式读取。为降低总的写入时间,一次操作可写入多达8个字节的数据。I2C总线是一种用于IC器件之间连接的二线制总线。他通过SDA(串行数据线)与SCL(串行时钟线)两根线在连到总线上的器件之间传送信息,并根据地址识别每个器件。 AT24C02正是运用了IC规程,使用主/从机双向通信,主机(通常为单片机)和从机(AT24C02)均可工作于接收器和发送器状态。主机产生串行时钟信号(通过SCL引脚)并发出

23、控制字,控制总线的传送方向,并产生开始和停止的条件。无论是主机还是从机,接收到一个字节后必须发出一个确认信号ACK。AT24C02的控制字由8位二进制数构成,在开始信号发出以后,主机便会发出控制字,以选择从机并控制总线传送的方向。管脚描述:SCL 为串行时钟:串行时钟输入管脚用于产生器件所有数据发送或接收的时钟这是一个输入管脚。SDL 为串行数据/地址: 双向串行数据/地址管脚用于器件所有数据的发送或接收SDL,是一个开漏输出管脚可与其它开漏输出或集电极开路输出进行线或。A0、A1、A2 为器件地址输入端:当使用24C02 时最大可级联8个器件,如果只有一个24C02被总线寻址,这三个地址输入

24、脚A0、A1、A2可悬空或连接到Vss。WP为写保护:如果WP 管脚连接到Vcc 所有的容都被写保护只能读当WP, 管脚连接到Vss 或悬空,允许器件进行正常的读/写操作12。3.3.3 I2C总线介绍I2C(InterIntegrated Circuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器与其外围设备。I2C总线产生于在80年代,最初为音频和视频设备开发,如今主要在服务器管理中使用,其中包括单个组件状态的通信。例如管理员可对各个组件进行查询,以管理系统的配置或掌握组件的功能状态,如电源和系统风扇。I2C总线的硬件结构:I2C串行总线一般有两根信号线,一根是双

25、向的数据线SDA,另一根是时钟线SCL。所有接到I2C总线设备上的串行数据SDA都接到总线的SDA上,各设备的时钟线SCL接到总线的SCL上。为了避免总线信号的混乱,要求各设备连接到总线的输出端时必须是开漏输出或集电极开路输出。设备上的串行数据线SDA接口电路应该是双向的,输出电路用于向总线上发送数据,输入电路用于接收总线上的数据。而串行时钟线也应是双向的,作为控制总线数据传送的主机。 总线的运行(数据传输)由主机控制。所谓主机是指启动数据的传送(发出启动信号)、发出时钟信号以与传送完毕时发出停止信号的设备,通常主机都是微处理器。被主机寻访的设备称为从机。为了进行通讯,每个接到I2C总线的设备

26、都有一个唯一的地址,以便于主机寻访。主机和从机的数据传送,可以由主机发送数据到从机,也可以由从机发到主机。凡是发送数据到总线的设备称为发送器,从总线上接收数据的设备被称为承受器。总线的构成与信号类型:I2C总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。在CPU与被控IC之间、IC与IC之间进行双向传送,最高传送速率100kbps。各种被控制电路均并联在这条总线上,但就像机一样只有拨通各自的才能工作,所以每个电路和模块都有唯一的地址,在信息的传输过程中,I2C总线上并接的每一模块电路既是主控器(或被控器),又是发送器(或接收器),这取决于它所要完成的功能。I2C总线在传送数据

27、过程中共有三种类型信号, 它们分别是:开始信号、完毕信号和应答信号。开始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据。完毕信号:SCL为高电平时,SDA由低电平向高电平跳变,完毕传送数据。 应答信号:接收数据的IC在接收到8bit数据后,向发送数据的IC发出特定的低电平脉冲,表示已收到数据。CPU向受控单元发出一个信号后,等待受控单元发出一个应答信号,CPU接收到应答信号后,根据实际情况作出是否继续传递信号的判断。若未收到应答信号,由判断为受控单元出现故障。目前有很多半导体集成电路上都集成了I2C接口。带有I2C接口的单片机有:CYGNAL的 C8051F0XX系列,PHI

28、LIPSP87LPC7XX系列,MICROCHIP的PIC16C6XX系列等。很多外围器件如存储器、监控芯片等也提供I2C接口。总线基本操作:I2C规程运用主/从双向通讯。器件发送数据到总线上,则定义为发送器,器件接收数据则定义为接收器。主器件和从器件都可以工作于接收和发送状态。 总线必须由主器件(通常为微控制器)控制,主器件产生串行时钟(SCL)控制总线的传输方向,并产生起始和停止条件。SDA线上的数据状态仅在SCL为低电平的期间才能改变,SCL为高电平的期间,SDA状态的改变被用来表示起始和停止条件10。1) 控制字节:在起始条件之后,必须是器件的控制字节,其中高四位为器件类型识别符(不同

29、的芯片类型有不同的定义,EEPROM一般应为1010),接着三位为片选,最后一位为读写位,当为1时为读操作,为0时为写操作。2)写操作:写操作分为字节写和页面写两种操作,对于页面写根据芯片的一次装载的字节不同有所不同。3) 读操作:读操作有三种基本操作:当前地址读、随机读和顺序读。图4给出的是顺序读的时序图。应当注意的是:最后一个读操作的第9个时钟周期不是“不关心”。为了完毕读操作,主机必须在第9个周期时发出停止条件或者在第9个时钟周期保持SDA为高电平、然后发出停止条件。3.3.4 LCD1602 液晶显示LCD1602 可显示两行英文字符,并且带 ASCII 字符库。LCD1602 模块部

30、可以完成显示扫描,单片机只要向 LCD1602 发送命令和显示容的 ASCII 码。表3.1引脚功能说明引脚符号功能说明1VSS一般接地2VDD接电源(+5V)3V0液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,可以通过一个10K的电位器调整对比度)。4RSRS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。5R/WR/W为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。6EE(或EN)端为使能(enable)端,下降沿使能。7DB0底4位三态、 双向数据总线 0位(最低位)8DB1底4位三态、 双向数据总线 1位

31、9DB2底4位三态、 双向数据总线 2位10DB3底4位三态、 双向数据总线 3位11DB4高4位三态、 双向数据总线 4位12DB5高4位三态、 双向数据总线 5位13DB6高4位三态、 双向数据总线 6位14DB7高4位三态、 双向数据总线 7位(最高位)(也是busy flag)15BLA背光电源正极16BLK背光 电源负极图3.4 LCD1602引脚图表3.2寄存器选择控制表RSR/W操作说明00写入指令寄存器(清除屏等)01读busy flag(DB7),以与读取位址计数器(DB0DB6)值10写入数据寄存器(显示各字型等)11从数据寄存器读取数据表3。3 显示地址123456789

32、1011121314151600H01H02H03H04H05H06H07H08H09H0AH0BH0CH0DH0EH0FH40H41H42H43H44H45H46H47H48H49H4AH4BH4CH4DH4EH4FH0011 00000x38设置162显示,57点阵,8位数据接口;显示开关与光标设置:(初始化)0000 1DCB D显示(1有效)、C光标显示(1有效)、B光标闪烁(1有效)0000 01NS N=1(读或写一个字符后地址指针加1 &光标加1),N=0(读或写一个字符后地址指针减1 &光标减1),S=1 且 N=1 (当写一个字符后,整屏显示左移)s=0 当写一个字符后,整屏

33、显示不移动数据指针设置:数据首地址为80H,所以数据地址为80H+地址码(0-27H,40-67H)其他设置:01H(显示清屏,数据指针=0,所有显示=0);02H(显示回车,数据指针=0)。通常推荐的初始化过程:延时15ms写指令38H延时5ms写指令38H延时5ms写指令38H延时5ms(以上都不检测忙信号) (以下都要检测忙信号)写指令38H写指令08H 关闭显示写指令01H 显示清屏写指令06H 光标移动设置写指令0cH 显示开与光标设置3.3.5红外接收头 图 3.7 红外接收头示意图规格:HX1838(铁壳)宽电压适应、低功耗、高灵敏度、优良的抗干扰特性;应用广泛:家用电器、空调、

34、玩具等红外遥控接收;表3.3.5.1 极限参数:电源电压VCC (v) 6.0工作温度TOPR () -25 +85功 耗PD(mw)35储存温度TSTG () -40 +125表3.3.5.2 光电参数: (T=25 VCC=5V f0=38KHZ) 参 数符号测试条件MinTypeMax单 位 工作电压 Vcc 2.7 5.5 V 接收距离 LL5IR5 IF =300mA(测试信号) 10 17 M 载波频率 f0 38k HZ 接收角度1/2 距离衰减1/2 +/-45 Deg BMP 宽度 fBW -3Db Bandwidth 2 3.3 5kHz 静态电流 ICC 无信号输入时 -

35、 0.8 1.5 mA 低电平输出VOL Vin=0V Vcc=5V 0.2 0.4 V高电平输出 VOHVcc=5V 4.5 Vcc V输出脉冲 宽 度 TPWL Vin=500Vp-p 500 600 700S TPWH Vin=50mVp-p 500 600 700S3.4电路图的设计3.4.1 复位电路单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作,例如复位后PC0000H,使单片机从第个单元取指令。无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位。在复位期间(即RST为高电平期间),P0口为高组态,P1P3口输出高电平;外部程

36、序存储器读选通信号PSEN无效。地址锁存信号ALE也为高电平。根据实际情况选择如图3-4所示的复位电路。该电路在最简单的复位电路下增加了手动复位按键,在接通电源瞬间,电容C1上的电压很小,复位下拉电阻上的电压接近电源电压,即RST为高电平,在电容充电的过程中RST端电压逐渐下降,当RST端的电压小于某一数值后,CPU脱离复位状态,由于电容C1足够大,可以保证RST高电平有效时间大于24个振荡周期,CPU能够可靠复位。增加手动复位按键是为了避免死机时无法可靠复位。当复位按键按下后电容C1通过R5放电。当电容C1放电完毕后,RST端的电位由R1与R2分压比决定。由于R11R15 因此RST为高电平

37、,CPU处于复位状态,松手后,电容C1充电,RST端电位下降,CPU脱离复位状态。R1的作用在于限制按键按下瞬间电容C1的放电电流,避免产生火花,以保护按键触。E1R1K1R210K 图3.8 复位电路3.4.2 振荡电路 图3.9振荡电路3.4.3 继电器驱动电路图 3.10 继电器驱动电路在继电器的使用中要注意的就是电流的驱动还有由于继电器部是电感所以应加一个二极管泄流如下图:3.4.4 24C02图 3.11 AT24C02由于只有一个24C02所以只需把A0,A1,A2接地,按照I2C协议,SCL,SDA需接10K上拉电阻。3.4.5 LCD 1602图 3.12 LCD 1602如上

38、图所示:lcd1602完成工作状态的显示。4 系统软件设计4.1 KEIL 软件的简介Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能表达高级语言的优势。C51工具包的整体结构

39、,其中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

40、 数据读写模块AT24C02 其读取和写入方框图如以下图所示: 入口 入口 启动24c02写入命令、地址 启动24c02写入命令、地址 NN读取一字节的数据并存入缓冲区、写入应答读取一字节的数据并存入缓冲区、写入应答YY 返回 数据读完 返回 数据读完(a) (b) 图4.1 数据读写模块流程图4.2.2 红外发射接收模块1)发射模块:将待发射数据缓冲区指定长度的数据以红外线为载波发射出去。每次发送一帧数据原理如上文红外通信原理所述。每按一个键将发送32个编码信息,和同步码,8位地址码,8位地址反码,8位数据码8位数据反码,且都采用高位在前,低位在后的顺序。以下图为发送同步码和16位地址码的程

41、序框图。发送数据与地址过程相似。 入口 将数据缓存区取反发送完8位数据?是数据0?调数据0的模块发射起始位从数据缓存区取一字节的数据 从高位取一位数Y调数据1的发射模块调数据0的发射模块N 图 4.2 发送模块程序流程图2) 接收与发送是一个逆过程,单片机外中断0以中断方式检测红外信号的第一个下降沿。以下图是其流程图: 入口 是否有9ms 的低电平?等待4.5ms跨越同步码 开始接收 判断数据0? N Y 1的解码 YNN Y 4次? 存储 正、反码比对是否一致? 0的解码 图 4.3 承受模块程序流程图4.2.5 主流程图如下图为主程序流程图,开始接上电源,程序进行初始化设置,然后在键盘上输入密码并判断是否开启接收,此系统进行键盘扫描,密码正确,开锁成功,密码错误出错报警,选择是否修改密码,若要修改密码,先输入旧密码密码,密码正确后设置新密码,错误时报警,确认后,密码修改成功,否则完毕最终返回。然后启动程序,进行保护,再次在键盘上输入密码,系统进行扫描,如果和之前一样,则执行相同程序,如不是,则执行另一种程序。 开锁YY NY 修改密码成功? 密码正确? 开锁成功? 报警

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作计划

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com