红外遥控密码锁_第1页
红外遥控密码锁_第2页
红外遥控密码锁_第3页
红外遥控密码锁_第4页
红外遥控密码锁_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

1、江苏师范大学物电学院江苏师范大学物电学院课程设计报告课课 程程 名名 称:称: 电 子 综 合 设 计 题题 目:目: 红外遥控密码锁 专专 业业 班班 级:级: 11 物 41 学学 生生 姓姓 名:名: 张紫轩 学学 生生 学学 号:号: 11224021 日日 期:期: 2014 年 10 月 25 日 指指 导导 教教 师:师: 杨增汪 物电学院教务部印制物电学院教务部印制2说明:1、报告中的第一、二、三项由学生在课程设计开始前填写,由指导教师指导并确认签字。2、学生成绩由指导教师根据学生的设计情况给出各项分值及总评成绩,并填写成绩评定表。3、所有学生必须参加课程设计的答辩环节,凡不参

2、加答辩者,其成绩一律按不及格处理。答辩小组成员应由 2 人及以上教师组成。答辩后学生根据答辩情况填写答辩记录表。4、报告正文字数一般应不少于 3000 字,也可由指导教师根据本门课程设计的情况另行规定。5、平时表现成绩低于 6 分的学生,取消答辩资格,其该课程设计成绩按不及格处理。6、课程设计完成后,由指导教师根据完成情况写出总结。7、此表格式为徐州师范大学物理与电子工程学院提供的基本格式,指导教师可根据本门课程设计的特点及内容做适当的调整。3一、课程设计目的、任务和内容要求:近年来,随着改革开放的深入发展,电子电器的飞速发展。人民的生活水平有了很大提高。各种高档家电产品和贵重物品为许多家庭所

3、拥有。然而不法分子也是越来越多,原因在于大部分人防盗意识还不够强,造成偷盗现象屡见不鲜。越来越多的居民家庭对财产安全问题十分担忧。因此,出于安全方便等方面的需求,电子密码锁相继问世。本设计是以单片机 AT89C52 为主控芯片,并结合外围液晶显示 LCD1602、红外遥控 HX1838,以及复位、电源等电路组合而成。系统能够完成开锁显示基本功能,还能够通过红外来控制单片机的开锁,以及掉电储存密码的功能。整个设计在 Keil 开发环境下,用 C 语言编写主控芯片的控制程序来实现具有多功能的电子密码锁。具体设计任务如下:1.熟悉红外密码锁系统的工作原理;2.制定红外密码锁各模块的设计方案;3.焊接

4、硬件电路、编写程序,调试程序;4.写课程设计报告。设计要求:设计一个红外密码锁,要求:1.能通过红外遥控器控制密码锁的开关;2.能显示密码长度;3.能判断密码正确与否;4.能通过改变代码修改设定密码。 4二、进度安排:第3 天: 查找资料,熟悉红外密码锁以及显示模块的设计原理,给出设计总体方案;第 46 天: 各模块的详细设计;第 712 天: 硬件连线编写程序,调试;第 1314 天:写课程设计报告。三、主要参考文献:1. 陈玻若 . 红外系统. 普通高等教育兵工类规划教材 19952. 郭天祥. 新概念 51 单片机 C 语言教程入门、提高、开发、拓展全攻略M. 北京:电子工业出版社, 2

5、009.13. 郑阿奇. Visual C+实用教程M. 北京:电子工业出版社, 20104. 王宜怀.张书奎等. 嵌入式技术基础与实践M. 北京:清华大学出版社,2011指导教师签字: 年 月 日江苏师范大学物理与电子工程学院课程设计报告目录摘要摘要.6 6ABSTRACTABSTRACT.6 61.1.绪论绪论.7 71.1 本系统设计意义以及目的 .71.2 红外密码锁的发展趋势 .82.2.设计方案简述设计方案简述.9 92.1 本系统基本结构 .92.2 本系统方案和器件选型方案论证 .102.2.1 本系统方案论证.102.2.2 本系统器件选型方案论证.103.3.详细设计详细设

6、计.11113.1 本系统硬件电路概述 .113.2 系统硬件各模块设计简介 .123.2.1 主控芯片 AT89C52 .123.2.2 红外模块 HX1838 .143.2.3 显示模块 LCD1602 .153.3 本系统主程序设计流程框图 .174.4.设计结果及分析设计结果及分析.18184.1 本系统硬件调试 .184.2 本系统调试 .185.5.总结总结.1919参考文献参考文献.1919附录附录 系统部分程序系统部分程序.2020 江苏师范大学物理与电子工程学院课程设计报告6摘 要近年来,随着改革开放的深入发展,电子电器的飞速发展。人民的生活水平有了很大提高。各种高档家电产品

7、和贵重物品为许多家庭所拥有。然而不法分子也是越来越多,原因在于大部分人防盗意识还不够强,造成偷盗现象屡见不鲜。越来越多的居民家庭对财产安全问题十分担忧。因此,出于安全方便等方面的需求,电子密码锁相继问世。本设计是以单片机 AT89C52 为主控芯片,并结合外围液晶显示 LCD1602、红外遥控 HX1838,以及键盘输入、复位、电源等电路组合而成。系统能够完成开锁显示基本功能,还能够通过红外来控制单片机的开锁,以及掉电储存密码的功能。整个设计在 Keil 开发环境下,用 C 语言编写主控芯片的控制程序来实现具有多功能的电子密码锁。关键词:密码锁, AT89C52,显示, 红外AbstractI

8、n recent years, with the deepening of reform and opening-up, with the rapid development of electronic appliances.The peoples living standard has been greatly improved.A variety of high-grade household electrical appliances and the valuables have for many families.However criminals are also more and

9、more, because most people security awareness is not strong enough, causing steal phenomenon it is often seen.More and more households in property safety is concerned about.Therefore, for the safe and convenient and other aspects of the demand, electronic password lock in succession.The design is bas

10、ed on SCM AT89S51 as main control chip, and the combination of peripheral LCD1602 liquid crystal display, memory chip AT24C02, infrared remote control HS0038, and keyboard input, reset, power circuit assembly.The system can complete the lock, alarm, modify passwords and other functions, can also thr

11、ough infrared to control chip lock, and power-down save password function.The whole design in the KEIL development environment, using C language master control chip control procedures to achieve multifunctional electronic cipher lock.KeywordsKeywords: Password lock , AT89C52, Display, Infrared江苏师范大学

12、物理与电子工程学院课程设计报告7 1. 绪论1.1 本系统设计意义以及目的随着新技术的不断开发与应用,近年来单片机发展十分迅速,一个以微机应用为主的新技术革命浪潮正在蓬勃兴起,单片机的应用已经渗透到冶金、电力、建材、化工、机械、石油、食品等各个行业。单片机控制无疑是人们追求的目标之一,它所给人们带来的方便也是不可否认的其中单片机控制就是一个典型的例子。MCS-52 系列单片机应用广泛,是学习单片机技术较好的系统平台,同时也是单片机微型计算机应用系统开发的一个重要系列。目前,单片机原理与应用教材大都采用汇编语言讲解和设计程序实例,但汇编语言学习困难。在实际应用系统开发调试中,特别是开发比较复杂的

13、应用系统时,为了提高开发效率和使程序便于移植,现在多用 C 语言。在信息产业飞速发展的今天,我们生活中必不可需的设备都向着小型化、便携化、智能化、自动化的方向发展。所以电子密码锁随着快节奏的生活应运而生。在我国六七十年代还是传统的一把钥匙配一把锁,不管是单位还是个人每天都要认真检查是否锁上了门,而且钥匙还不能随便乱放,一旦不小心忘记放在哪里很可能就打不开门了。传统的锁也相当的不安全,会有一些不法分子想尽办法打开你的房锁去偷盗东西。电子密码锁的产生使得这些问题都不再是问题,我们只需简单的记住六位密码即可。人们从前使用的锁不但不方便,而且安全系数也比较低。随着社会的进步和人们生活水平的提高,老式的

14、锁已经跟不上人们的要求,况且人们对防盗的要求越来越高,特别是对使用的便捷性也有了更高的需求。因此近几年一种新型的电子密码锁应运而生,受到了人们的青睐。有报警功能的密码锁这时正为人们解决了不少问题。但是市场上的密码锁大部分都是用于一些大公司财政机构、价格高昂,一般人们难以接受。如果再设计和生产一种价格低廉、性能灵敏可靠的密码锁,必将在防盗和保证财政安全方面发挥更加有效的作用。密码锁是现代生活中经常用到的工具之一,广泛应用于保险柜、房门、宾馆、车库等。电子密码锁克服了机械式密码锁量少、安全性能差的缺点,特别是使用单片机控制的智能电子密码锁,不但功能全,而且具有更高的安全性和可靠性。并且电子密码锁只

15、需记住一组密码,无需携带钥匙,免除了人们携带钥匙的烦恼,被越来越多的人所喜欢。随着我国第三产业的飞速发展,电子密码锁会在不久的将来得到广泛的应用,方便社会和个人。江苏师范大学物理与电子工程学院课程设计报告81.2 红外密码锁的发展趋势20 世纪 80 年代后,随着电子锁专用集成电路的出现,电子锁的体积缩小,同时可靠性提高,成本也相对提高,所以只适合使用在安全性要求较高的场合,且需要有电源提供能量,使用还局限在一定范围,难以普及,所以对密码锁的研究一直没有明显进展。到了 90 年代,美国、意大利、德国、日本、加拿大、韩国以及我国的台湾、香港等地的微电子技术的进步和通信技术的发展为密码锁提供了技术

16、上的支持,从而推动密码锁走向实际应用的阶段。目前,在西方国家,电子密码锁技术相对先进,种类齐全,电子密码锁已被广泛应用于智能门禁系统中,使之更加安全更加可靠实现大门的管理。我国于 90 年代初期开始对密码锁进行初步的探索。到目前为止,随着电子技术和信息技术的发展,电子密码锁的技术领域已发展的十分成熟。从目前的技术水平和市场认可程度看,使用最为广泛的是键盘式电子密码锁,该产品主要应用于保险箱、保险柜和金库,还有一部分应用于保管箱和运钞车。在其他技术领域还有遥控式电子密码锁以及卡片式密码锁等。江苏师范大学物理与电子工程学院课程设计报告92.设计方案简述2.1 本系统基本结构本系统采用以单片机为核心

17、元件的控制方案。由于单片机种类繁多,各种型号都有其一定的应用环境,因此在选用时要多加比较,合理选择,以获得最佳的性价比。一般来说在选取单片机时从下面几个方面考虑:性能、存储器、运行速度、I/O 口、定时/计数器、串行接口、模拟电路功能、工作电压、功耗、封装形式、抗干扰性、保密性,除了以上的一些方面外,还有一些最基本的条件,比如:中断源的数量和优先级、工作温度范围、有没有低电压检测功能、单片机内有无时钟振荡器、有无上电复位功能等。在开发过程中还要考虑开发工具、编程器、开发成本、开发人员的适应性、技术支持和服务等因素。基于以上因素本设计选用单片机 AT89C52 作为本设计的核心元件,利用单片机灵

18、活的编程设计和丰富的 I/O 端口,及其控制的准确性,实现基本的密码锁功能。在单片机的外围电路外接 LCD1602 显示器用于显示作用。其原理如下图 1 所示。AT89S51 图图 1 单片机控制方案单片机控制方案单片机AT89C52显示电路红外遥控复位电路江苏师范大学物理与电子工程学院课程设计报告102.2 本系统方案和器件选型方案论证2.2.1 本系统方案论证目前大部分的锁采用的都是机械式的,其最大的缺点是利用简单工具就能很容易地把锁打开。针对这种情况,我们设计了一种红外遥控密码锁,而一般设备都采用专用的遥控编码及解码集成电路,其制作简单、容易,但由于特定功能的限制,只适用于专用的电器产品

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

20、片机的 C 语言程序、仿真、软件调试。第四部,使用PROTEUS 软件进行模拟软、硬件调试。最后,联合软、硬件调试电路板,完成本次设计。江苏师范大学物理与电子工程学院课程设计报告113.详细设计3.1 本系统硬件电路概述本系统硬件电路设计包括单片机最小系统的设计,以及红外遥控的设计,液晶显示部分的设计,还有电源部分的设计,以下是系统的整体框图:江苏师范大学物理与电子工程学院课程设计报告123.2 系统硬件各模块设计简介3.2.1 主控芯片 AT89S51在本设计中选用 ATMEL 公司的 AT89C52 单片机作为主控芯片。它是一款低功耗,AT89C52 就是一款广泛应用的,高性能 CMOS

21、8 位单片机,由于系统控制方案简单,数据量也不大,考虑到电路的简单和成本等因素,因此在本设计中选用 ATMEL 公司的 AT89S51 单片机作为主控芯片。主控模块采用单片机最小系统是由于 AT89C52 芯片内含有 8 B 的 E2PROM ,无需外扩存储器,电路简单可靠,其时钟频率为 024 MHz,并且价格低廉,批量价在 10 元以内。AT89C52 是一款功能强大的微型计算机,它可为许多嵌入式控制应用系统提供高性价比。单片机的最小系统是由复位电路、时钟电路和电源组成。复位操作有上电自动复位、按键复位和外部脉冲复位 3 种方法。本文采用的是上电复位它是通过系统外部的复位电路来实现的。根据

22、电路原理可知电容两极板间的电压不能突变当单片机电源接通电源的瞬间单片机的 9 管脚会产生一个阶跃信号,所以RTS 端维持高电平由于这个充电时间远远大于 1ms,一般就可以实现对单片机的上电自动复位,即接通电源就完成了系统的初始化。初始化是为了让单片机从地址 0000H 开始执行, 除此之外单片机要想正常工作还必须有时钟电路,时钟电路是产生时序的基础,单片机每执行一条指令都是建立在时序电路上的,为了能保证单片机执行指令的同步,电路就要在唯一的时钟信号控制下按时序的先后进行工作。它分为内部时钟电路和外部时钟电路。本文采用的是内部时钟电路,在 MCS51 单片机的内部有一个高增益的反向放大器,其输入

23、端为引脚 XTAL1,输出端为 XTAL2,只要在外部接上两个电容和一个晶振,就能够成一个稳定的自激振荡器。这里主要看一下电容和晶振的选择,晶振的大小与单片机的振荡频率有关,电容的大小影响着振荡器振荡的稳定性和起振的快速性,通常选择 1030pF 的瓷片电容。本系统电容选择为 33pF,晶振为 12MHz 之所以选择这一频率的晶振是为了在进行单片机与电脑进行串口通信时容易产生和电脑时钟同步的波特率,另外在设计电路时,晶振和电容应尽可能的靠近芯片,这样可以提高系统的抗干扰能力,电源部分,电源与地之间可以接一个 0.1uF 的电容,它用来滤除电源的纹波,使单片机稳定工作,单片机最小系统如图 3-1

24、 所示。 江苏师范大学物理与电子工程学院课程设计报告13 单片机引脚说明:VCC:电源电压输入端。 GND:电源地。 P0 口:P0 口是一个 8 位漏极开路双向 I/O 端口,每个引脚可以吸收 8TTL 门电流。P0 口当作数据输出时需要加上拉电阻,当 P0 口的 I/O 口被写“1”后,被定义为高阻抗输入状态。P0 可以用于外部程序数据存储器,P0 口可以是地址的低八位以及数据输出口。 P1 口:P1 口是一个 8 位双向的 I/O 端口单片机内部加上了上拉电阻的端口,P1口缓冲器可接收的 4TTL 栅极电流输出。P1 口的 I/O 口被写 “1”后,内部上拉的是高的,可以作为输入,P1

25、口外部下拉低时输出电流,这是因为有内部上拉的缘故。P2 口:P2 口是一个 8 位双向的 I/O 端口单片机内部加上了上拉电阻的端口,P2口缓冲器可接收的 4TTL 栅极电流输出。当 P2 口的 I/O 口被写“1”后,内部上拉的是高的,可以作为输入,P2 口外部下拉低时输出电流,这是因为有内部上拉的缘故。当 P2 口用于外部程序存储器或外部数据存储器时 P2 口是地址高八位输出。P3 口:P3 口是一个 8 位双向的 I/O 端口单片机内部加上了上拉电阻的端口,P3口缓冲器可接收的 4TTL 栅极电流输出。P3 口的 I/O 口被写“1”后,内部上拉的是高的,可以作为输入,P3 口外部下拉低

26、时输出电流,这是因为有内部上拉的缘故。P3 口除了普通 I/O 口功能,还有其第二功能P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断 0) 江苏师范大学物理与电子工程学院课程设计报告14P3.3 /INT1(外部中断 1) P3.4 T0(T0 定时器的外部计数输入) P3.5 T1(T1 定时器的外部计数输入) P3.6 /WR(外部数据存储器的写选通) P3.7 /RD(外部数据存储器的读选通) RST:复位引脚高电平时 MCU 复位,复位信号输入端口,当 MCU 要复位时,给与此引脚高电平,高电平持续时间是不少于两个机器周期的时间。ALE/

27、PROG:地址锁存使能以及编程脉冲信号端口。当单片机访问外部的存储器时,地址锁存使能锁存地址低八位。通常情况下,ALE 引脚输出单片机外部振荡器的频率的 1/6 的频率输出。应该注意到的是:当用于单片机扩展外部的数据存储器时,它会少一个 ALE 脉冲。如果你想禁止 ALE 输出可以设置为 0在 SFR8EH 地址。此时,ALE 只有在执行 MOVX,MOVC 指令时 ALE 才起作用。此外,ALE 引脚倍稍微拉高。如果微处理器在外部执行状态 ALE 的禁令,设置无效。PSEN:程序存储器允许输出控制端,在读外部程序存储器时 PSEN 低电平有效,以实现外部程序存储器单元的读操作。EA/VPP:

28、外部程序存储器访问允许。当/EA 接高电平时,单片机读取内部程序序存储器,当扩展有外部 ROM 时,当读完内部 ROM 后自动读取外部 ROM,当/EA 接低电平时,单片机直接读取外部程序存储器。XTAL1:片内振荡器反相放大器和时钟发生器的输入端。 XTAL2:片内振荡器反相放大器的输出端。3.2.2 红外模块 HX1838 红外数据传输的特点:成本廉价、建设工程期短、适应性好、扩展性好、设备维护上更容易实现。使用红外模块进行传输,丰富了系统的功能,提高了系统的可操作性,因而达到了交互式与智能化。红外数据传输广泛地运用在红外遥控系统和车辆的监控、门禁系统、小区的安全防火系统和传呼系统、身份的

29、识别、非接触 RF 的智能卡等。工业设备中,在高压,辐射、有毒气体、粉尘等环境下,采用红外遥控不仅完全可靠而且能有效地隔离电气干扰。一体化红外线接收头三个管脚分别是地、+5 V 电源、解调信号输出端接在单片机 P3.3 引脚上。利用外部中断进行数据的接收。下图 3-5 为红外模块硬件结构。 图图 3-5 红外模块硬件结构红外模块硬件结构江苏师范大学物理与电子工程学院课程设计报告15红外线接收器大都将信号的接受、放大、检波等集于一身,而且可以经过编码解码时单片机收到可识别的信号源。这样一来便会减少硬件设计过程中的麻烦,使电路简单化,且应用起来比较方便。下图为红外一体化接受头HX1383,因为其性

30、价比较高,且易于购得,外观图如图所示。 图图 3-6 红外接收元器件红外接收元器件3.2.3 显示模块 LCD1602如果想要了解系统的运行与工作状态显示器是不可缺少的,显示器是一个典型的输出设备并且它的实际应用也是极为广泛的,几乎所有的电子产品都会使用到显示器其差别仅在于显示器的结构类型不同而已。最简单的显示器可以是 LED 发光二极管或者数码管,它可以给出一个简单的开关信息或者数字显示,而需要显示复杂的完整的信息上述的器件就不能胜任,而液晶的出现就很好的解决了这一问题,它不仅显示内容丰富而且好节约了单片机的管脚资源。本设计采用的是液晶显示 LCD1602。LCD1602 内部的字符已经储存

31、了不同的字符形式,每一个字符都有一个固定的代码,其代码与标准的 ASCII 字符代码一致。因此只要写入显示字符的 ASCII 码即可,这种标准化的设计给使用带来很大的方便。比如英文字母“C”的 ASCII代码是 01000011(43H) ,显示时单片机往液晶模块写入显示指令,模块就会把地址为 43H 中的点阵字符图形识别出,并会在液晶屏相应位置上看到字母“C”。LCD1602 液晶显示与单片机的连接可以分为两种方式:总线方式和模拟口线方式。在实验中,我们常采用模拟口线连接方式。如图 3-7 所示。 江苏师范大学物理与电子工程学院课程设计报告16 图图 3-7 显示模块硬件结构显示模块硬件结构

32、目前市场字符液晶绝大多数是基于 HD44780 的液晶芯片,控制原理是完全相同的,因此基于 HD44780 的写控制程序可以很容易地应用到市场上大部分的字符液晶。LCD1602 液晶的几个特性:+5V 电压、对比度可调、内含复位电路;提供各种控制命令,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能;有 80 字节显示数据存储器 DDRAM;内建有 160 个5X7 点阵的字型的字符发生器 CGROM 8 个可由用户自定义的 5X7 的字符发生器 CGRAM。 表表 3-1 LCD 液晶屏引脚说明液晶屏引脚说明编号符号引脚说明编号符号引脚说明1VSS电源地9D2Data I/O2VDD电源正极

33、10D3Data I/O3VEE液晶显示偏压信号11D4Data I/O4RS数据/命令选择端(H/L)12D5Data I/O5R/W读写选择端(H/L)13D6Data I/O6E使能信号14D7Data I/O7D0Data I/O15BLA背光源正极江苏师范大学物理与电子工程学院课程设计报告178D1Data I/O16BLK背光源负极LCD1602 采用标准的 16 脚接口,其中 VSS 为地电源,VDD 接 5V 正电源,VEE 为液晶显示器。RS 为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。RW 为读写信号线,高电平 1 时进行读操作,低电平 0 时进行写操作。

34、E 端为使能端。D0D7 为 8 位双向数据线。3.3 本系统主程序设计流程框图江苏师范大学物理与电子工程学院课程设计报告184.设计结果及分析4.1 本系统硬件调试本系统在硬件设计阶段,利用的是仿真软件对硬件进行的仿真的,在软件仿真中通过了。电路焊好之后,我们在真正的硬件上进行调试,经过多次调试,终于通过了。4.2 本系统调试本系统软件部分是用 C 语言开发的,用 C 语言开发单片机有如下的优势C 语言是一种编译型的结构化程序设计语言,具有简单的语法结构和强大的处理功能,具有运行速度快、编译效率高,移植性好和可读性强等多种优点,可以实现对系统便件的直接操作。用 C 语言来编写目标系统软件,可

35、以大大缩短开发周期,且明显地增加软件的可读性,便于改进和扩充,从而开发出大规模、高性能的应用系统。其优势如下:(1)可以大幅度加快开发进度,程序量越大,用 C 语言就越有优势。(2)无需精通单片机指令集和具体的硬件,也能够编出符合硬件实际专业水平的程序。(3)可以实现软件的结构化编程,使得软件的逻辑结构变得清晰、有条理、便于开发小组计划任务、分工合作。源程序的可读性和可维护性都很好。(4)省去了人工分配单片机资源的工作,在汇编语言中要为每一个子程序分配单片机的资源。在使用 C 语言后,只要在代码中申明一下变量的类型,编译器就会自动分配相关资源,根本不需要人工干预,从而有效地避免了人工分配单片机

36、资源的差错。(5)汇编语言的可移植性很差,而 C 语言只要将一些与硬件相关的代码作适当的修改,就可以方便地移植到其它种类的单片机上。(6)C 语言提供 auto、static、flash 等存储类型,针对单片机的程序存储空间、数据存储空间及 EEPROM 空间自动为变量合理地分配空间,而且 C 语言提供复杂的数据类型,极大地增强了程序处理能力和灵活性。C 编译器能够自动实现中断服务程序的现场保护和恢复,并且提供常用的标准函数库,供用户使用。并且 C 编译器能自动生成一些硬件的初始化代码。(7)对于一些复杂系统的开发,可以通过移植(或 C 编译器提供)的实时操作系统来实现。正由于 C 语言在系统

37、开发中的优势,这次设计的所有程序设计都将采用 C语言编写。江苏师范大学物理与电子工程学院课程设计报告195.总结 本次课程设计我们组做的是红外遥控密码锁,采用了 51 单片机、红外接收模块和液晶显示模块。利用红外遥控器输入密码的正确与否控制密码锁的开关。 这次课程设计中,我共遇到了三个问题。一个是测试时液晶屏亮度不够,后来查阅各种相关资料和其他组的电路图,发现是液晶屏的正负极没有与电源单独相连。第二个是液晶屏的对比度很低,后来发现用华东变阻器的 1、3 端分别连接电源正负极即可调整对比度。第三个问题是临场答辩前,电路板跳线脱落,后来是同组的杨国栋同学帮忙借来电烙铁和焊锡丝,才当场重新焊接好,非

38、常感谢他。 通过这次实验,我最大的感悟是,只有通过自己思考,自己排版,自己动手,才能真正掌握电子的知识。推广开来,即是“实践出真知” 。 另外老师提出了很多实用性建议,比如加入电机模拟锁的开关而非仅仅液晶显示等,让我知道一切应该归于运用。还有就是要自己努力思考而非只是借助网上固有的资料来学习和做成成品,感谢老师的教诲。江苏师范大学物理与电子工程学院课程设计报告20参考文献1. 陈玻若 . 红外系统. 普通高等教育兵工类规划教材 19952. 郭天祥. 新概念 51 单片机 C 语言教程入门、提高、开发、拓展全攻略M. 北京:电子工业出版社, 2009.13. 郑阿奇. Visual C+实用教

39、程M. 北京:电子工业出版社, 20104. 王宜怀.张书奎等. 嵌入式技术基础与实践M. 北京:清华大学出版社,2011江苏师范大学物理与电子工程学院课程设计报告21附录 系统部分程序/*- 文件:main.c-*/ /红外密码锁 开启后直接输入密码即可 1602 显示#include #include #include #define uchar unsigned char#define uint unsigned int#define delayNOP(); _nop_();_nop_();_nop_();_nop_();void delay(uchar x); /延时 X*0.14Ms

40、void delay1(int ms);sbit IRIN = P32; /红外接收器控制端口sbit LCD_RS = P27; /1602 控制端口 sbit LCD_RW = P26; /1602 控制端口 sbit LCD_EN = P25; /1602 控制端口 uchar i;uchar key;uchar flag;uchar num7;uchar IRCOM7;uchar code cdis1 = Please Input The;uchar code cdis2 = Password.;uchar code dis1 = The Password is ;uchar code

41、 secret= 888888; /密码uchar code enter = You Can Enter!;uchar code error = Wrong!;uchar code again = Please Try Again;/* *检测 LCD 忙状态,busy 为 1 时忙,为 0 时闲,此时可以写指令与数据 */江苏师范大学物理与电子工程学院课程设计报告22bit lcd_busy() bit busy; LCD_RS = 0; LCD_RW = 1; LCD_EN = 1; delayNOP(); busy = (bit)(P0&0 x80); LCD_EN = 0; r

42、eturn(busy); /* *写指令 */void lcd_wcmd(uchar cmd) while(lcd_busy(); LCD_RS = 0; LCD_RW = 0; LCD_EN = 0; _nop_(); _nop_(); delayNOP(); LCD_EN = 1; P0 = cmd; delayNOP(); LCD_EN = 0; /* *写数据 */void lcd_wdat(uchar dat) while(lcd_busy(); LCD_RS = 1; LCD_RW = 0; LCD_EN = 0; 江苏师范大学物理与电子工程学院课程设计报告23 delayNOP(

43、); LCD_EN = 1; P0 = dat; delayNOP(); LCD_EN = 0; /* *LCD 初始化 */void lcd_init() delay1(15); lcd_wcmd(0 x38); /16*2 显示 5*7 点阵 8 位数据 delay1(5); lcd_wcmd(0 x38); delay1(5); lcd_wcmd(0 x38); delay1(5); lcd_wcmd(0 x0c); /显示开 关光标 delay1(5); lcd_wcmd(0 x06); /移动光标 delay1(5); lcd_wcmd(0 x01); /清楚 LCD 内容 dela

44、y1(5);/* *设置显示位置 */void lcd_pos(uchar pos) lcd_wcmd(pos | 0 x80); /数据指针=80+地址变量void disp1(unsigned char ch) unsigned char m; lcd_pos(0); /显示在第一行 m = 0;江苏师范大学物理与电子工程学院课程设计报告24 while(chm != 0) /显示字符 lcd_wdat(chm); m+; void disp2(unsigned char ch) unsigned char m; lcd_pos(0 x40); /显示在第二行 m = 0; while(c

45、hm != 0) /显示字符 lcd_wdat(chm); m+; /* *主函数 */main() IRIN=1; /打开红外控制端口 i = 0; flag = 0; delay1(10); lcd_init(); /LCD 初始化 disp1(cdis1); disp2(cdis2); IE = 0 x81; /允许中断使能 INT0 外部中断 TCON = 0 x01; /触发方式为脉冲负边沿触发 while(1) while(flag) disp1(cdis1); disp2(cdis2); flag = 0; 江苏师范大学物理与电子工程学院课程设计报告25 /* *中断处理 */v

46、oid IR_IN() interrupt 0 using 0 unsigned char j,k,N=0; EX0 = 0; delay(15); if (IRIN=1) EX0 =1; /退出中断处理 return; while (!IRIN) delay(1); for (j=0;j4;j+) /收集 4 组数据 for (k=0;k=30) EX0=1; return; /0.14ms 计数过长自动离开 /高电平计数完毕 IRCOMj=IRCOMj 1; /数据最高位补 0 if (N=8) IRCOMj = IRCOMj | 0 x80; /数据最高位补 1 N=0; /end fo

47、r k /end for j disp1(dis1); if (IRCOM2!=IRCOM3) EX0=1; return; 江苏师范大学物理与电子工程学院课程设计报告26 switch(IRCOM2) case 0X16: key = 0; numi+ = 0; break; case 0X0c: key = 1; numi+ = 1; break; case 0 x18: key = 2; numi+ = 2; break; case 0 x5e: key = 3; numi+ = 3; break; case 0 x08: key = 4; numi+ = 4; break; case

48、0 x1c: key = 5; numi+ = 5; break; case 0 x5A: key = 6; numi+ = 6; break; case 0 x42: key = 7; numi+ = 7; break; case 0 x52: key = 8; numi+ = 8; break; case 0 x4a: key = 9; numi+ = 9; break; case 0 x45: flag = 1;江苏师范大学物理与电子工程学院课程设计报告27 i=0; break; default: break; lcd_pos(0 x50-i); lcd_wdat(*); /第一位显示 if(i = 6) i = 0; num7 = 0; disp1(num); if(strcmp(num,secret) = 0) disp1(Right!); disp2(enter); else disp1(error); disp2(again); IRCOM5=IRCOM2 & 0 x0F; /取键码的低四位 IRCOM6=IRCOM2 4; /右移 4 位

温馨提示

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

最新文档

评论

0/150

提交评论