首页 基于红外遥控的密码锁设计 毕业论文

基于红外遥控的密码锁设计 毕业论文

举报
开通vip

基于红外遥控的密码锁设计 毕业论文基于红外遥控的密码锁设计 毕业论文 摘要 基于红外遥控的密码锁设计 摘 要 随着社会科技和人们的生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出,传统的机械锁由于其构造的简单,被撬的事件屡见不鲜,电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的青睐。 红外电子密码锁是一种以高强度密码序列为基础,在单片机上实现的密码开关。它以红外光作为信息媒体,从而实现了遥控。该锁具有使用方便、操作简单、价格低廉等特点,给人们的生活带来了极大方便。 本设计以单片机AT89S52作为密码锁监控装置的...

基于红外遥控的密码锁设计  毕业论文
基于红外遥控的密码锁设计 毕业论文 摘要 基于红外遥控的密码锁设计 摘 要 随着社会科技和人们的生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出,传统的机械锁由于其构造的简单,被撬的事件屡见不鲜,电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的青睐。 红外电子密码锁是一种以高强度密码序列为基础,在单片机上实现的密码开关。它以红外光作为信息媒体,从而实现了遥控。该锁具有使用方便、操作简单、价格低廉等特点,给人们的生活带来了极大方便。 本设计以单片机AT89S52作为密码锁监控装置的检测和控制核心,LCD1602具有按键提示,输入错误提示,密码有效提示,根据51单片机之间的串行通信原理,利用红外来传输,这便于对密码信息的随机加密和保护。而且采用红外遥控相对于机械锁和键盘输入的电子密码锁具有较高的优势。如红外线发射装置采用红外发光二极管,遥控发射器易于小型化且价格低廉;采用数字信号编码和二次调制方式,不仅可以实现多路信息的控制,增加遥控功能,提高信号传输的抗干扰性,减少错误动作,而且功率消耗低;红外线不会向室外泄露,不会产生信号串扰;反应速度快、传输效率高、工作稳定可靠等。所以红外线遥控是目前使用最广泛的一种通信和遥控手段。软件设计采用自上而下的模块化设计思想,以使系统朝着分布式、小型化方向发展,增强系统的可扩展性和运行的稳定性。 关键词: 红外 单片机 LCD 密码锁 遥控 目录 目 录 第一章 引言 ............................................................................................ 1 1.1 课题选题意义 ............................................................................... 1 1.2 国内外研究现状 ............................................................................ 2 1.3 设计主要工作 ............................................................................... 3 第二章 硬件设计 .................................................................................... 4 2.1 系统框图 ....................................................................................... 4 2.2 最小系统 ....................................................................................... 4 2.3 红外遥控介绍 ............................................................................... 6 2.4遥控发射器及其编码 ..................................................................... 7 2.5 遥控接收器及其解码 .................................................................... 8 2.6 LCD1602显示的应用 ................................................................. 9 2.7 密码锁驱动电路设计 .................................................................11 2.8 红外遥控密码锁总接线设计 ......................................................11 第三章 软件设计 .................................................................................. 12 3.1 LCD1602显示程序设计 ............................................................ 12 3.2 红外遥控程序设计 .................................................................... 16 3.3 红外遥控密码锁主程序设计 ....................................................... 17 第四章 总结 .......................................................................................... 18 4.1 本文 工作总结 关于社区教育工作总结关于年中工作总结关于校园安全工作总结关于校园安全工作总结关于意识形态工作总结 ............................................................................. 18 4.2 存在不足 ..................................................................................... 19 参考文献 ................................................................................................ 20 致 谢 .................................................................... 错误~未定义书签。 附 录 ...................................................................................................... 21 1 第一章 引言 第一章 引言 1.1 课题选题意义 在许多电子杂志、报刊经常刊登有密码开关,密码锁这样的电路,大多数是使用常用的数字电路,然后通过键盘来实现密码控制功能。这种电路的特点是密码修改只能通过改变电路的连接来实现,密码很容易破解,电路复杂,故障率高。本制作是针对这些电路而设计,而且还增加了红外遥控功能,移动方便。如果使用该红外遥控密码开关安装在电子锁上,就成了一个功能强大,操作方便的电子密码锁了。因为不用安装控制键盘,所以安装方便、快捷,还消除了控制键盘被人为破坏的可能。 红外遥控技术在工农业生产,通信技术,家用电器等多种领域中得到了广泛的应用,特别是在门禁系统中的应用,更加受到了人们的瞩目。本设计的红外线遥控智能密码锁就是将红外遥控技术和单片机应用相结合的一种 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 。它的特点是:抗干扰能力强,工作可靠,使用方便,具有较强的隐蔽性、保密性。它与传统锁具的不同之处在于:它与微电脑相结合,能够实现适时、智能控制管理功能。红外遥控智能密码锁作为一种高科技产品,在酒店门锁领域已成为主导产品,现在它正以飞快的速度进入寻常百姓家。 密码锁具无需钥匙,开启方便,用途广泛。传统的机械密码锁组码位数低(3位数左右)、重码率高、安全性差、开启操作不便。电子式密码锁具以其高位数组码、按钮式操作、安全可靠等优点,逐步取代机械 1 第一章 引言 密码锁。该设计使用密码控制技术,克服了传统机械式密码锁具有的缺陷,具有电子式密码锁具的特点,组码位数最高可达到10位。按钮式开锁,无需光照和电源,机件牢固,安全可靠,造价低廉,集机械式、电子式密码锁具优点为一体,具有较好的市场发展前景和技术应用价值。 1.2 国内外研究现状 随着我国对外开放的不断深入,高档建筑发展很快,高档锁具市场的前景乐观。我国锁具行业对锁具高新技术的投入正逐年增大,高档锁的市场需求也逐年增加。在安防工程中,门禁系统的锁具产品是关系到整个系统安全性的重要设备,所以锁具产品的优劣也关系了整个安防工程的质量和验收。 智能门锁作为一种高科技产品,在酒店门锁领域已成为主导产品。一般情况下,酒店希望智能门锁的使用寿命至少在5年以上,所以选择智能门锁时必须考虑多种因素,如产品的品牌、质量、价格、服务等,以免带来经济损失。综观硝烟弥漫的智能门锁市场,浙江的智能门锁技术无论在品牌、质量、价格,还是在服务上,都走在国内该行业的前列的。 在电子控制方面,TCL智能门锁的控制电路主板采用自动贴片技术(SMT)、高温老化、在线测试、振动老化、侵漆防潮等生产工艺,从而彻底杜绝了因室内外的温差引起门锁内部水气凝结而对电路主板元器件的损坏,提高了电路的性能。而且,TCL智能门锁还采用智能编码技术,抗强光干扰,使门锁的功耗很低,降低更换门锁电池的频率。 在智能钥匙的加密方面,智能门锁的各种智能卡钥匙均应采用具备 2 第一章 引言 物理密码验证功能、安全性好、可靠性高的电子钥匙,可保存数据在10年以上,而所有的电子钥匙为了提高保密性能在编码上都采用加密算法,除了采用具有独立知识产权开发的软件系统制作电子钥匙外,电子钥匙是根本不可能复制的,克服了机械钥匙很强的可复制性,使门锁整体的安全性能降低的缺点,提高了门锁的安全性能。 在国外,美国、日本、德国的智能密码锁保密性较好,并结合感应卡技术,生物识别技术,使智能密码锁系统得到了飞跃式的发展。这几个国家的密码锁识别的密码更复杂,并且综合性比较好,已经进入了成熟期,出现了感应卡式门禁系统,指纹门禁系统,虹膜门禁系统,面部识别门禁系统,乱序键盘门禁系统等各种技术的系统,它们在安全性,方便性,易管理性等方面都各有特长,新型的密码锁系统的应用也越来越广。 1.3 设计主要工作 课题主要解决系统在硬件和软件两方面的问题。 硬件方面解决单片机与外围电路的接口问题,还要解决红外遥控系统的编码解码。本设计的红外遥控发射器直接采用市售的成品遥控器,内部芯片型号为LC7461。采用这个芯片的遥控器非常普遍,很容易买到,且价格也很便宜,所以只需要了解红外遥控器的编码。 在软件方面,主要工作是怎样防止人为的多次试探密码和增加破解密码的难度。除此之外,程序还要完成基本的密码修改和开锁功能,并通过蜂鸣器长时间鸣叫报警通知屋主或保安。 3 第二章 硬件设计 第二章 硬件设计 2.1 系统框图 本文所设计的红外遥控密码锁系统由AT89S52单片机及其最小系统、红外接收头、红外发射器、蜂鸣器、电磁锁、LCD1602液晶显示等部分组成。其硬件原理图如图2.1所示。 蜂鸣器红外接收头 红主ISP下载接口控LCD1602外器 件发复位电路SAT8952 射继电器 器晶振电路 电磁锁 图2.1 红外遥控密码锁系统框图 2.2 最小系统 本设计的单片机采用AT89S52系列单片机。AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得 4 第二章 硬件设计 AT89S52为众多嵌入式控制应用系统提供高灵活、有效的解决方案。AT89S52具有以下标准功能: 8k字节Flash,256字节RAM,32 位I/O 口线,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。其中最小系统包括ISP下载电路、复位电路、晶振电路。 复位电路:此设计采用手动按键复位方式实现系统的复位操作.手动复位要求在电源接通的条件下,在单片机运行期间,用按钮开关操作使单片机复位.其结构如图2.3中R1,C4和K1.手动按键复位是通过按键将RST与VCC接通来实现. 晶振电路:单片机内部具有一个高增益反相放大器,用于构成振荡器.通常在引脚XTALl和XTAL2跨接石英晶体和两个补偿电容构成自激振荡器,结构如图2.22 中Y1,C5,C6.本设计选择12MHz频率的石英晶体,补偿电容采用30pF左右的瓷片电容. C5VCCVCCUSB 1C4CN230pF10ufBT0+XTAL2P151092BUTTONRSTCRY18712MHZRST65XTAL1R121P174330pF10KP162143 C6ISP 图2.2 ISP电路接线图 图2.3复位电路接线图 图 2.4 晶振电路接线图 5 第二章 硬件设计 VCC40P101RM1P10VCCP1121P11P12339P002P12P00P134P01338P13P01P14537P024P14P02P156P03536VCCP15P037P16P04635P16P04P178P057C434P17P0510uf+P06833BUTTONP06RST932P079RSTP07VCCR1AT89S5210K10K*8R31031P30P30/RXDEA1130P3110KP31/TXDALE1229P32P32/INT0PSEN13P33P33/INT114P34P34/T01528P27P35P35/T1P271627P26C5P36P36/WRP261726P25P37P37/RDP2530pf25P24CRY1P2412MHZXTAL11824P23K3XTAL2P23XTAL21923P22K230pfXTAL1P2222P21K1P21C62021P20GNDP20 图2.5 最小系统结构电路图 2.3 红外遥控介绍 通用红外遥控系统由发射和接收两大部分组成,应用编/解码专用集成电路芯片来进行控制操作。发射部分包括键盘矩阵、编码调制、LED红外发送器;接收部分包括光、电转换放大器、解调、解码电路。遥控器里面是一个键盘编码器,每个按键对应一个编码,在把编码调制到一个高频信号上,其目的是为了降低发射的功率损耗;再把调制好的信号送给红外发光管把信号发送出去。接收过程恰好与此相反,首先由红外接收管收到微弱的信号,经放大后解解调(把高频载波去掉),再进行解码,就可得到遥控器发过来的数据。如图2.6所示。 6 第二章 硬件设计 LED编码调制键盘 遥控发射器 解调光/电放大解码 遥控接收器 图2.6 红外遥控系统框图 2.4遥控发射器及其编码 红外遥控发射器专业芯片很多,根据编码 格式 pdf格式笔记格式下载页码格式下载公文格式下载简报格式下载 可以分成脉冲宽度调制和脉冲相位调制两大类,这里我们以运用比较广泛,解码比较容易的脉冲宽度调制来加以说明,现以LC7461组成发射电路为例说明编码原理。当发射器按键按下后,既有遥控码发出,所按的键不同遥控码也不同。这些遥控码具有以下特征: 采用脉宽调制的串行码,以脉宽0.56ms,周期为1.125ms的组合表示二进制的“0”;以脉宽为0.56ms、周期为2. 25ms.其波形图如图2.7所示。 2.25ms1.125ms bit“1”bit“0” 0.56ms0.56ms 图2.7 红外遥控码波形图 LC7461产生的遥控编码是连续的42位二进制码组,其中前26位为用户识别码,能区别不同的电器设备,防止不同机种遥控码互相干扰。后16位为8位操作码(功能码)及其反码用于核对数据是否接受正确。 7 第二章 硬件设计 当发射端一个键按下超过36ms,LC7461芯片的振荡器使芯片激活,将发射一个特定的同步码头,对于接收端而言就是一个9ms的低电平,和一个4.5ma的高电平。这个同步码头可以是使程序知道从这个码头以后开始接收数据。 解码在于如何识别“0”和“1”,从位的定义我们可以发现“0”、“1”均以0.56ms的低电平开始,不同的是高电平的宽度不同,“0”为0.56ms,“1”为1.68ms,所以必须根据高电平的宽度区别“0”和“1”。如果从0.56ms低电平过后,开始延时,0.56ms以后,若读到的电平为低,说明该位为“0”,反之则为“1”,为了可靠起见,延时必须比0.56ms长些,但又不能超过1.12ms,否则如果该位为“0”,读到的已是下一位的高电平,因此取(1.12ms+0.56ms)/2=0.84ms最为可靠,一般取0.84ms左右即可。 根据红外编码的格式,程序应该等待9ms的起始码和4.5ms的结果码完成后才能读码。 2.5 遥控接收器及其解码 LT0038是塑封一体化红外接收器,它是一种集红外线接收、放大、整形于一体的集成电路,不需要任何外接元件,就能完成从红外线收到输出与TTL电平信号兼容的所有工作,没有红外遥控信号是为高电平,收到红外信号是为低电平,而体积和普通的塑料三极管大小一样,它适合于各种红外线遥控和红外线数据传输。接收器对外只有3个引脚:Out、GND、Vcc与单片机接口非常方便,如图2.8所示 8 第二章 硬件设计 123 图2.8 红外遥控接收器图 注: 1、脉冲信号输出接单片机的P33口; 2 、GND接系统的地线(0V); 3 、Vcc接系统的电源正极(+5V) 2.6 LCD1602显示的应用 LCD1602显示器具有体积小、功耗低、显示 内容 财务内部控制制度的内容财务内部控制制度的内容人员招聘与配置的内容项目成本控制的内容消防安全演练内容 丰富、超薄轻巧等 优点,因此,在袖珍式仪表和低功能应用系统中得到越来越广泛的应用。 16BLKLCD1602液晶显示是2行*16个字符的字符型显示器,它由32个字符点15BLAP0714D7P0613阵块组成,每个字符点阵块由5*7或5*10个点阵组成,可以显示ASCIID6P0512D5P0411D4码表中的所有可视的字符,采用+5V电源供电,外围电路配置简单,价P0310D3P029D2格便宜,具有很高的性价比。如图2.9所示LCD1602及其接口设计图。 P018D1P007D01602E6ELCD16021602RW5R/W1602RS4RSVSS3VL2VDD1 CN3VCC 1 2 VCC VR0 10K 图2.9 LCD1602及引脚连接图 9 第二章 硬件设计 (1)LCD1602显示器模块引脚名称和功能表 表2.1 LCD1602显示器模块引脚名称和功能 引脚序号 名 称 功 能 1 Vss 电源地 2 VDD 电路电源 5V?10% 3 Vo 液晶驱动电压 4 RS 寄存器选择 1:数据寄存器 0:指令寄存器 5 R/W 读/写信号 1:读 0:写 6 EN/E 显示器模块使能信号输入端,高电平有效 7~14 DB0-DB7 8位双向数据总线 15 BL1 LED背光板电源正端(+5V) 16 BL2 LED背光板电源负端 (2)DDRAM地址与LCD显示屏上的显示位置的对应关系 DDRAM存储器显示字符的字符码,其容量的大小决定模块最多的字符数目。 表2.2 DDRAM地址与LCD显示屏上的显示位置的对应关系 LCD 16字*2行 0102030405060708090A0B0C0D0E0F1027„00 404142434445464748494A4B4C4D4E4F50...67即第一行的地址为00H~0FH,第二行的地址为40H~4FH。 10 第二章 硬件设计 2.7 密码锁驱动电路设计 电磁锁是用继电器来驱动的,当单片机通过RELAY发信号给了继电 器,继电器吸合(接常开触点),使解锁机构通电,打开门锁。如图2.10 密码锁驱动电路图。 图2.10 密码锁驱动电路图 16BLK15BLA2.8 红外遥控密码锁总接线设计 P0714D7P0613D6P0512D5根据单片机最小系统结构电路图、LCD1602、继电器、红外接收头P0411D4P0310D3P029与单片机接线图,最后进行总接线设计,总接线图如下: D2P018D1 P007D061602EE5LCD16021602RWR/W1602RS4RS3VLVSS2VDD1 VCC 123VCCP07VR0 AT89S52P0610KP33P17P05 P04继电器电路解锁机构RELAY P03 P02图2.11 红外遥控密码锁总接线图P01 P00 11 P25 P26 P27 第三章 软件设计 第三章 软件设计 3.1 LCD1602显示程序设计 LCD1602是利用液晶的物理特性,通过电压对其显示区域进行控制,有电压就有显示这样就可以显示。LCD1602模块是专门用于显示字母、数字、符号等的点阵型液晶显示模块,提供内部上电自动复位电路,外加电源后,自动对模块进行初始化操作,将模块设置为默认的显示工作状态。 字符型LCD1602显示器模块是一种智能器件,它的内部有两种寄存器:指令寄存器和数据寄存器。单片机主控制系统对LCD的指令寄存器写操作,可以将“清屏”等控制指令发给LCD;对指令寄存器读操作,得到的数据最高位是LCD的状态标志位,低7位是地址计数器信息。对LCD的数据存储器写操作,可以修改当前地址中的显示字符;读操作可以得到当前显示地址中的显示数据。 (1)LCD1602控制指令说明 表3.1 LCD1602控制指令说明 指令功能 RS R\W D7 D6 D5 D4 D3 D2 D1 D0 清屏 0 0 0 0 0 0 0 0 0 1 归位 0 0 0 0 0 0 0 0 1 x 输入方式设置 0 0 0 0 0 0 0 1 I\D S 显示开关控制 0 0 0 0 0 0 1 D C B 光标或字符位移 0 0 0 0 0 1 S\C R\L * * 功能设置 0 0 0 0 1 DL N F * * CGRAM地址设置 0 0 0 1 6位CGRAM地址码 12 第三章 软件设计 设置显示地址 0 0 1 7位DDRAM地址码 读忙标志和地址计数器 0 1 BF 7位当前显示地址码 写数据 1 0 8位数据 读数据 1 1 8位数据 这里介绍几个编程是经常用到的几个指令: 1) 清屏 RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 0 0 0 0 0 1 2) 显示开关控制 RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 0 0 1 D C B 功能:设置显示、光标及闪烁开、关 其中:D表示显示开关:D=1为开,D=0为关 C表示光标开关:C=1为开,C=0为关 B表示闪烁开关:B=1为开,B=0为关 3)光标或字符位移 RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 0 0 S/C R/L * * 功能:光标或字符位移动,不影响DDRAM 其中:S/C=1:画面平移一个字符位; S/C=0:光标平移一个字符位; R/L=1:右移;R/L=0;左移; 13 第三章 软件设计 4) 功能设置 RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 DL N F * * 功能:工作方式设置(初始化指令)。 其中:DL=1,8位数据接口;DL=0,四位数据接口; N=1,两行显示;N=0,一行显示; F=1, 5*10点阵字符;F=0, 5*7点阵字符; (2)LCD1602接口时序: 1)写操作时序 RS tsp1tHO1 R/W tPWtHO1 tF EtHO2tRtD DB0-DB7Valid Data tc 图3.1 写操作时序图 2)读操作时序 RS tHO1tSP1R/W tPWtFtHO1 EtHO2tRtSP2 DB0-DB7Valid Data tc 图3.2 读操作时序图 14 第三章 软件设计 表3.2 时序参数 时序参数 符号 极限值 单位 测试条件 最大值 典型值 最小值 E信号周期 tc 400 — — ns 引脚E E脉冲宽度 tpw 150 — — ns E上升沿\下降沿时间 tR,tF — — — ns 地址建立时间 tSP1 30 — 25 ns 引脚E、RS、 S\W 地址保持时间 tHD1 10 — — ns 数据建立时间(读操作) tD — — — ns 引脚 DB0~DB7 数据保持时间(读操作) tHD2 20 — 100 ns 数据建立时间(写操作) tSP2 40 — — ns 数据保持时间(写操作) tHD2 10 — — ns (3)LCD1602显示程序流程说明 根据LCD1602的指令表和接口作时序程图,对显示字符进行编程,主要是显示开/关指令、 显示起始行设置指令、读状态指令、写数据指令的应用,此设计显示字符对应的点阵为:5*7或5*10组成,最后整合得显示程序流程图,如图3.3显示流程图所示。 开始 写指令 判定LCD忙状态写显示数据到LCD Y LCD显示 LCD初始化设定 图3.3 显示流程图 结束设定显示位置 15 第三章 软件设计 3.2 红外遥控程序设计 红外遥控的工作原理,红外遥控的发射电路是采用红外发光二极管来发出经过调制的红外光波,红外接收电路将红外发射器发射的红外光转换为相应的电信号,再送后置放大器。 发射端一般由指令键、指令编码系统、调制电路、驱动电路、发射电路等几部分组成。当按下指令键时,指令编码电路产生所需的指令编码信号,指令编码信号对载体进行调制,再由驱动电路进行功率放大后由发射电路向外发射经调制定指令编码信号,如图3.4红外遥控的发射程序流程图。 接收端一般由接收电路、放大电路、调制电路、指令译码电路、驱动电路、执行电路(机构)等几部分组成。接收电路将发射器发出的已调制的编码指令信号接收下来,并进行放大后送解调电路,解调电路将已调制的指令编码信号解调出来,即还原为编码信号。指令译码器将编码指令信号进行译码,最后由驱动电路来驱动执行电路实现各种指令的操作控制(机构),如图3.5红外遥控的发射程序流程图。 开始开始 串行口初始化串行口初始化 N接收数据发射数据,Y发送数据到CPU串行口 N数据接收完成 Y N数据送完?N 接收数据正确?不处理返回主程序 Y Y图3.4红外遥控的发射程序流程图 图3.5红外遥控的接收程序流程图 返回执行相应程序 16 第三章 软件设计 开始 关闭中断 N引导码 Y N高电平 Y 延时0.85ms NY低电平 编码为“1”编码为“0” 延时0.85ms N42位 Y 开启中断 结束 图3.6 中断解码程序流程图 3.3 红外遥控密码锁主程序设计 根据控制要求以及各项程序流程,进行总体设计如下图3.7主程序流 程图所示。 开始 有红外中断, 调用中断解码程序 红外解码 密码对否, N接收码正确否,报警打开密码锁 Y NY 中断返回 图3.7主程序流程图 17 第四章 总结 第四章 总结 4.1 本文工作总结 这次毕业设计历时1个多月,从一开始资料查找、理论学习,到后来的调试和测试过程,这一切都使我的理论知识和动手能力进一步提高。 通过本次红外系统的设计,我大有收获。从得到题目到查找资料,从电路板的调试到失败后再一次全部重新开始„„在这一个充满挑战伴随挫折,充满热情伴随打击的过程中,我感触颇深,它已不仅是一个对我三年学习知识情况和我的应用动手能力的检验,而且还是对我的钻研精神,面对困难的心态,做事的毅力和耐心的考验。我在这个过程中深刻的感受到了做毕业设计的意义所在。本文的创新点在于用遥控远端控制的功能,因此给 人们带来很多便利,这一点也正是本人开发和设计此系统的根本原因 这个课题的根本技术就是单片机控制技术,加部分外围电路来实现一些复杂的功能。可以根据要求改变软件来实现功能的更新和扩展。 本课题的重点、难点是: (1)初步接触电子密码锁的原理、结构、应用等各方面从头开始琢磨; (2) 考虑电路实现原理以及与单片机的接口; (3) 红外发送与接收技术; 18 第三章 软件设计 通过完成本课题,我了解并掌握了红外遥控的基本理论知识,更深入的掌握单片机在实际电路中的开发和应用。为以后从事单片机软硬件产品的设计开发打下了一定的基础,培养了从事产品研发的信心。 4.2 存在不足 没有考虑过多外部因素对系统的影响,比如密码丢失,误操作对系统的影响。报警与提示功能做得不够完善,遥控的有效距离没有进行系统的论证。这些因素有待进一步完善。 关于红外遥控系统的智能控制,在工业、学校、生活中用得很广,各种成品是层出不穷,如果把它结合当今的感应卡技术,生物识别技术进行扩展,能使智能密码锁系统得到了飞跃式的发展,同时也使本设计更有研究意义。 19 参考文献 参考文献 [1] 林伸茂.8051单片机彻底研究基础篇[M].北京:人民邮电出版社,2003: 24-153. [2]华成英,童诗白.模拟电子技术基础[M] 北京:高等教育出版社,2006 [3] 张红, 于平, 程文播. 基于单片机控制的LCD显示屏系统[J]. 微计算 机信息, 2009:92-93 [4] 康华光等.电子技术基础第2版[M].北京:高等教育出版社,2004: 10-156. [5] 胡汉才.单片机原理及其接口技术[M]. 北京:清华大学出版社,2006. [6] 马鸿文.基于AT89C52单片机的自动存取柜的设计与实现[M].微计算 机信息,2006:101-103. [7] 曹巧媛.单片机原理及应用[M].北京:电子工业出版社,2002. [8] 牛翌光.单片机原理及接口技术[M].北京:电子工业出版社,2008: 32-79. [9] 杨路明.C语言程序设计[M].北京:北京邮电大学出版社,2005:52-268. [10] 张文峥,李先亮,张其善.IrDA 红外通信在导航仪中的应用[J]. 2000. [11] 邱玉春,李文俊.单片机系统中的红外通信接口[J].2000:56-163. [12] 黄耀军,周云,严国萍.计算机红外无线互连的设计几实现[J].2000. [13] 麦山,皮佑国.基于单片机的 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 红外遥控系统[J].1998. [14] 陆东旭,甄钊博. 自制简单的51开发板[J]. 电子制作, 2008,(01) [15] 吴金戌.8051单片机实践与应用研究[M] .北京:清华大学出版社,2002. 20 附录 附 录 附录一:LCD1602显示程序设计 /*--------------------------------------- 判忙函数 ---------------------------------------*/ 名称:LCD1602 ----------------------------------------*/ bit LCD_Check_Busy(void) { #include "1602.h" #include "delay.h" #ifdef CHECK_BUSY DataPort= 0xFF; sbit RS = P2^7; //定义端口 RS_CLR; sbit RW = P2^6; RW_SET; sbit EN = P2^5; EN_CLR; _nop_(); #define CHECK_BUSY EN_SET; #define RS_CLR RS=0 return (bit)(DataPort & 0x80); #define RS_SET RS=1 #else #define RW_CLR RW=0 return 0; #endif #define RW_SET RW=1 #define EN_CLR EN=0 } #define EN_SET EN=1 /*--------------------------------------- #define DataPort P0 写入命令函数 /*--------------------------------------- ----------------------------------------*/ 21 附录 void LCD_Write_Com(unsigned EN_SET; DataPort= Data; char com) { _nop_(); while(LCD_Check_Busy()); //忙 EN_CLR; 则等待 } RS_CLR; /*--------------------------------------- RW_CLR; 清屏函数 EN_SET; ----------------------------------------*/ DataPort= com; void LCD_Clear(void) _nop_(); { EN_CLR; LCD_Write_Com(0x01); } DelayMs(5); /*---------------------------------------- } 写入数据函数 /*-------------------------------------- ----------------------------------------*/ 写入字符串函数 void LCD_Write_Data(unsigned ----------------------------------------*/ char Data) void LCD_Write_String(unsigned { char x,unsigned char y,unsigned while(LCD_Check_Busy()); //忙char *s) 则等待 { RS_SET; RW_CLR; while (*s) 22 附录 { /*--------------------------------------- 初始化函数 LCD_Write_Char(x,y,*s); s ++; x++; ----------------------------------------*/ } void LCD_Init(void) } { /*---------------------------------------- LCD_Write_Com(0x38); 写入字符函数 /*显示模式设置*/ ----------------------------------------*/ DelayMs(5); void LCD_Write_Char(unsigned LCD_Write_Com(0x38); char x,unsigned char y,unsigned DelayMs(5); char Data) LCD_Write_Com(0x38); { DelayMs(5); if (y == 0) LCD_Write_Com(0x38); { LCD_Write_Com(0x08); LCD_Write_Com(0x80 + x); /*显示关闭*/ } LCD_Write_Com(0x01); else /*显示清屏*/ { LCD_Write_Com(0x06); LCD_Write_Com(0xC0 + x); /*显示光标移动设置*/ } DelayMs(5); LCD_Write_Data( Data); LCD_Write_Com(0x0C); } /*显示开及光标设置*/ 23 附录 } 附录二:延时子程序设计 #include "delay.h" void DelayMs(unsigned char t) /*--------------------------------------- { uS延时函数, ----------------------------------------*/ while(t--) void DelayUs2x(unsigned char t) { { //大致延时1mS while(--t); DelayUs2x(245); } DelayUs2x(245); /*--------------------------------------- } mS延时函数 } ----------------------------------------*/ 附录三:红外遥控程序设计 #include //头文件, #include #include"keyboard.h" #include"delay.h" #define TURE 1 24 附录 #define FALSE 0 /* 外部中断0函数 */ sbit IR=P3^3; //红外接口标志 void ex0_isr (void) interrupt 2 unsigned char irtime;//红外用全using 1//外部中断1服务函数 局变量 { bit irpro_ok,irok; static unsigned char i; unsigned char IRcord[4]; //处//接收红外信号处理 理后的红外码,分别是 客户码, static bit startflag; 客户码,数据码,数据码反码 //是否开始处理标志位 unsigned char irdata[33]; //33个 if(startflag) 高低电平的时间数据 { /*函数声明 */ void ShowString (unsigned char if(irtime<63&&irtime>=33)//line,char *ptr); 引导码 TC9012的头码, /*定时器0中断服务函数 */ 9ms+4.5ms void tim0_isr (void) interrupt 1 i=0; using 1//定时器0中断服务函数 irdata[i]=irtime;//存储每个电 { 平的持续时间,用于以后判断是 irtime++; 0还是1 //用于计数2个下降沿之间的时 irtime=0; 间 i++; } if(i==33) 25 附录 { void EX0init(void) { irok=1; i=0; IT1 = 1; //指定外部中断1下 } 降沿触发,INT0 (P3.2) } EX1 = 1; //使能外部中断 else EA = 1; //开总中断 {irtime=0;startflag=1;} } } /*红外键值处理 */ /* 定时器0初始化 */ unsigned char KeyPro(void) void TIM0init(void)//定时器0初//红外键值散转程序 始化 { { switch(IRcord[3]) { TMOD=0x02;//定时器0工作方case 0x43:return 0;break; 式2,TH0是重装值,TL0是初case 0x47:return 1;break; 值 case 0x4B:return 2;break; TH0=0x00; //重载值 case 0x4F:return 3;break; TL0=0x00; //初始化值 case 0x53:return 4;break; ET0=1; //开中断 case 0x57:return 5;break; TR0=1; case 0x5B:return 6;break; } case 0x5F:return 7;break; /*外部中断初始化 */ case 0x63:return 8;break; 26 附录 case 0x67:return 9;break; cord=irdata[k]; if(cord>7) case 0x2B:return 10;break; // 按了 F1键 { default:break; value=value|0x80; } } irpro_ok=0; //处理完成后清楚 else 标志位 { value=value; } } /* 红外解码函数处理*/ if(j<8) /unsigned char KeyScan(void)//红 { 外码值处理函数 value=value>>1; { } unsigned char i, j, k; k++; unsigned char cord,value; } IRcord[i]=value; k=1; value=0; for(i=0;i<4;i++) //处理4个字节 } irpro_ok=1;//处理完毕标 { 志位置1 for(j=1;j<=8;j++) //处理1个字节 8位 } { 27 附录 附录四:主程序设计 unsigned char passwordtemp[16]; *------------------------------------- 名称:红外遥控密码锁 //最大输入16个 unsigned char inputtimes; -------------------------------------*/ #include //头文件 //密码输入错误次数 #include unsigned char #include"1602.h" passwordlength,PLEN; //输 #include"delay.h" 入密码长度,实际密码长度 #include"keyboard.h" bit Flag; sbit RELAY=P1^7; PLEN=sizeof(password)/sizeof(pas sbit BEEP=P1^6; sword[0]);//用于计算出实际密码 Unsigned char code 长度 password[]={1,3,1,4,5,1,2,0};//可EX0init(); //初始化外部中断 以更改此密码 TIM0init(); //初始化定时器 LCD_Init(); //初始化液晶屏 /*---------------------------------------- DelayMs(10); //延时用于稳定, 主程序 可以去掉 ----------------------------------------*/ LCD_Clear(); //清屏 main() LCD_Write_String(0,0,"Welcome! { "); unsigned char num,i=0,j; LCD_Write_String(0,1,"Input 28 password!"); //写入第二行信息, LCD_Write_Char(i,1,'*');// 输入的密码用"*"代替 提示输入密码 while (1) //主循环 } { i++; //输入数值累加 if(irok) } //如果接收好了进行红外处理 if(10==num)//输入按键值10,按 { 了F1键,表示输入结束,需要 KeyScan(); 进行比对 irok=0; { passwordlength=i-1; //计 if(irpro_ok) // 红外处理完毕标算输入密码长度 志位置1后 i=0; //计数器复位 { if(passwordlength==PLEN)//长num=KeyPro(); //取遥控键盘值 度相等则比较,否则直接输出错 if(i==0) //输入是第一个字符误 的时候需要把该行清空,方便观 { 看密码 Flag=1;//先把比较位置1 {LCD_Write_String(0,1," for(j=0;j>>>");//密码正确显示的LCD_Write_String(0,1,"Wrong 3 信息 times!");//密码错误,提示重新输 DelayMs(10); 入 RELAY=!RELAY; BEEP=!BEEP; inputtimes=0;//输入正确则次数 while(1);//停止该位置,复位清零,重新计数 才能重新输入。 Flag=0; //清除正确标志 } } } else } { } LCD_Write_String(0,1," } ");//清除该行 30 6 附件 套 1 四 电仪控系统 } 1 电器控制柜 套 1 2 照明系统 套 1 3 电线电缆 套 1 4 桥架管线 套 1 5 附件 套 1 序号 名称 规格型号 单位 数量 备注 一 制冷系统 1 压缩机组 4AV10 台 4 2 冷凝器 LN-70 台 1 3 贮氨器 ZA-1.5 台 1 4 桶泵组合 ZWB-1.5 台 1 5 氨液分离器 AF-65 台 1 6 集油器 JY-219 台 1 7 空气分离器 KF-32 台 1 8 紧急泄氨器 JX-108 台 1 9 冷风机 KLL-250 台 8 10 冷风机 KLD-150 台 4 11 冷风机 KLD-100 台 2 12 阀门 套 86 13 电磁阀 套 6 14 管道及支架 吨 18.6 3 15 管道及设备保温 m22 16 管道保温包扎 镀锌板 吨 1.6 17 附件 套 1 二 气调系统 1 中空纤维制氮机 CA-30B 台 1 2 二氧化碳洗涤器 GA-15 台 1 3 气动电磁阀 D100 台 14 4 电脑控制系统 CNJK-406 台 1 5 信号转换器 8线 台 1 6 果心温度探头 台 7 37 库气平衡袋 5 m 个 7 8 库气安全阀 液封式 个 7 9 小活塞空压机 0.05/7 台 1 10 PVC管 套 1 11 附件 套 1 三 水冷系统 1 冷却塔 DBNL-100 台 2 3 2 水泵 SBL80-160I 台 2 3 水泵 SBL50-160I 台 2 4 阀门 套 30 5 管道及支架 吨 2.8
本文档为【基于红外遥控的密码锁设计 毕业论文】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_260251
暂无简介~
格式:doc
大小:77KB
软件:Word
页数:32
分类:工学
上传时间:2017-12-02
浏览量:11