基于AT89S51单片机的电子密码锁的设计毕业设计说明书.docx

上传人:豆**** 文档编号:29950456 上传时间:2022-08-02 格式:DOCX 页数:43 大小:331.96KB
返回 下载 相关 举报
基于AT89S51单片机的电子密码锁的设计毕业设计说明书.docx_第1页
第1页 / 共43页
基于AT89S51单片机的电子密码锁的设计毕业设计说明书.docx_第2页
第2页 / 共43页
点击查看更多>>
资源描述

《基于AT89S51单片机的电子密码锁的设计毕业设计说明书.docx》由会员分享,可在线阅读,更多相关《基于AT89S51单片机的电子密码锁的设计毕业设计说明书.docx(43页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 毕业论文说明书课题: 基于AT89S51单片机的电子密码锁的设计专 业 电气工程及其自动化 学 生 姓 名 班 级 电气111 学 号 1120603118 指 导 教 师 专 业 系 主 任 顾春雷 发 放 日 期 2015年1月7日 盐城工学院本科毕业设计说明书2015基于AT89S51单片机的电子密码锁的设计摘 要:从古至今,锁都是人民财产安全乃至生命安全的一种重要保证。随着人类历史的发展和人们对财产和人生安全越来越重视,多种多样的多功能的锁具也陆续出现,人们使用的锁具也由原来的机械锁逐渐发展为功能更多,安全性能更好的电子式密码锁。 本论文以AT89S51单片机芯片为核心器件,结合4*

2、4矩阵按键电路、报警指示电路LCD数码管显示电路和开锁机构,利用单片机灵活的编程设计和丰富的I/O端口的特性,及其控制的准确性通过软件程序来运行整个系统实现电子密码锁的基本功能,其主要具有如下功能:密码输入错误三次,蜂鸣器将报警提示密码通过键盘输入,若密码正确,则将锁打开用户可以自由设定密码本文设计的密码锁具有功耗低、安全性高、操作简单等优点。关键词:AT89S51 ; 电子密码锁 ; LCDAbstract: Since the ancient time, lock is a kind of security, guaranteeing peoples property safety eve

3、n life safety. With the development of human history and more attention paid to property safety and life safety, various multi-functional locks can be seen in the world. Traditional mechanical locks people use in life are gradually replaced by electronic combination lock characterized with better sa

4、fety performance and more functions.Based on the AT89S51 single-chip microcomputer as the core device, combining with the key circuit, LCD digital tube display circuit, an alarm circuit and unlocking mechanism, design the whole system to achieve the basic functions of electronic cipher lock by its f

5、lexible programming , rich I / O port, and accuracy basing on the software program . With the following functions :If the password is error, the buzzer will alarmInput password through the keyboard, if the password is correct, lock will open Users can freely set the password The lock has some featur

6、es simple to work,like a reasonable design methods,low cost and security,it also has some promotion value.Key words: AT89S51 ; Cipher lock ; LCD目 录1、绪论91.1 研究背景和意义91.2系统设计目的91.3系统设计内容错误!未定义书签。2、基于单片机电子密码锁的总体设计92.1系统方案选择102.1.1采用数字电路控制102.1.2采用以单片机为核心的控制方案102.2基于单片机电子密码锁总体设计实现方案错误!未定义书签。3、基于单片机电子密码锁的

7、硬件设计123.1 单片机接口分配123.2 单片机最小系统 123.2.1复位电路部分103.2.2时钟电路部分103.3 显示模块硬件设计133.4 存储模块硬件设计153.5 单片机AT89S51介绍133.6报警开锁矩阵键盘模块硬件设计154、温度采集节点的程序设计241 温度采集模块程序设计流程错误!未定义书签。42 液晶显示模块程序设计流程错误!未定义书签。43 温度报警模块程序设计流程错误!未定义书签。5、ZigBee无线传输模块设计25.1 ZigBee无线传输模块硬件设计错误!未定义书签。5.1.1 主控芯片CC2530简介错误!未定义书签。5.1.2 CC2530芯片的引脚

8、分配错误!未定义书签。5.1.3 CC2530射频模块电路的设计错误!未定义书签。5.1.4 CC2530芯片外围电路的实现错误!未定义书签。5.2数据采集模块与ZigBee模块的硬件连接错误!未定义书签。5.3 ZigBee无线传输模块软件设计错误!未定义书签。5.3.1 ZigBee技术的软件开发环境介绍错误!未定义书签。5.3.2 ZigBee协议栈的定义及使用错误!未定义书签。5.3.3 ZigBee无线传输模块软件设计要点错误!未定义书签。6、温室大棚的智能监控系统的性能调试46.1 ZigBee数据采集模块性能调试错误!未定义书签。6.2 ZigBee无线传输模块功能底板的性能检测

9、错误!未定义书签。6.3 系统整体调试错误!未定义书签。7、总结与展望4参 考 文 献5致 谢6附 录6附录1 基于ZigBee温室大棚智能监控系统设计原理图6附录2 基于ZigBee温室大棚智能监控系统设计程序清单82盐城工学院本科毕业设计说明书20151.绪论1.1 研究背景和意义在如今生活中,安全防盗问题已成为一个社会问题,而锁就是防盗的重要且普遍常用的工具。目前国内大部分地方和人使用的仍还是传统的机械锁,现实生活中伪劣假冒的机械锁互开率非常的高,另外,即使机械锁质量很好,但通过急开锁,甚至于可以在不损坏锁的条件下将锁直接打开。机械锁的这些缺点为一种新型高端的锁的出现电子密码锁,提供了很

10、大发展的空间。在科学技术不断发展的世界里,电子密码防盗锁作为防盗管家的作用也显得日益重要。电子密码锁是包含了很多技术。其中就有计算机技术、电子技术、单片机技术,数字密码技术。具的优点有安全性高,性能好,使用方便简单。根据本设计的要求,通过密码的输入来控制电路或是芯片的正常工作,达到控制机械开关的闭合的效果,完成开锁、闭锁等功能。电子密码锁的种类非常多,有的电路产品比较简易,也有芯片的性价比比较高的产品。现在应用较广的数字密码锁是以单片机芯片为核心,通过编写程序来实现运行的。其性能和安全性已经遥遥领先了机械锁。目前,和发达的西方社会国家比较而言,中国的电子密码锁技术在一定程度上相对落后。在发达国

11、家里,电子密码锁的种类非常齐全,技术也较先进,且广泛应用于各种领域。比如,在军事,航空领域的应用。我国,电子密码锁技术仍相当于国际上七十年代的密码锁水平。上世纪 80年代以来,随着电子集成电路的出现与发展,特别是单片机的问世,电子密码锁又一次得到了非常快的发展。与构造简单且笨重的传统机械锁比较来说,电子密码锁具有体积小,可靠性高以及性能稳定等诸多优点。但是就现在而言,电子密码锁的价格相对较高且需要有电源提供动力,使得其在中国使用还未普及,各种条件的限制使得电子密码锁暂时很难得到广泛推广。尽管电子密码锁还存在着一些小问题,但是有的是传统钥匙锁替代不了的优点。比如其安全性高、方便易用、能够智能报警

12、。且随着电子信息技术的发展和各种电子器件的价格的不断变少,电子密码锁也会往低成本、多功能的方向发展与进步。就今天而言,在一些发达国家,电子密码锁种类很多,电子密码锁技术相对先进的已被应用于多种智能门禁系统中,通过多种更加可靠,更加安全的技术实现对门进行管理。我国电子密码锁尚处于世界上70年代左右的整体水平,电子密码锁的成本还很高,市场上仍以按键电子锁为主,卡片钥和按键式匙式电子锁已引进了国际比较先进的水平,国内已经有几个厂生产供应市场。但国内自主研制开发的电子密码锁,还尚未形成市场结构,应用还不够广泛。国内的很多企业引进了世界上相对先进的技术,发展前景非常乐观。希望通过我们自己不断的努力,使电

13、子密码锁在我国也能得到广泛应用和发展壮大。也希望为电子密码锁的发展推波助澜。1.2系统设计目的本设计利用单片机及外围电路实现数据采集和控制来完成一些实际功能。让同学对整体电路设计和理解能力有深层次的理解与认识,了解单片机系统设计步骤,以及电路板的实际制作和调试应用能力。同时综合应用数字电路、单片机和微机原理等课程知识,也为同类产品的进一步研究奠定理论和实践基础。 1.3 系统设计内容本设计是基于单片机AT89S51的电子密码锁的,则设计内容有以下几点:1.在protues软件环境中设计系统的硬件电路图。2.在KEIL软件环境中进行系统的软件编程,对程序源文件进行编译与调试,最后生成hex文件,

14、这个hex文件是硬件电路实现运行的源程序代码。3.把hex文件下载到单片机AT89S51芯片,在protues软件环境中运行硬件电路。2.基于单片机的电子密码锁的总体设计。 2基于单片机电子密码锁的总体设计2.1系统方案选择2.1.1 采用数字电路控制采用以双JK触发器74LS112构成的数字式逻辑电路作为密码锁的控制的模块,共设定了9个用户输入按键,其中有效的密码按键只有4个,其余的均是干扰按键,若按下干扰键,键盘输入电路则自动清零,原先输入的密码失效,需要重新进行输入;如果用户输入密码的时间大于30秒(一般情况下,用户不会多于30秒,若用户觉得不便,还可以修改)报警电路将会报警10秒,若电

15、路连续报警三次,键盘将会被锁1分钟,防止他人的非法操作。采用的方案是数字电路设计优点就是设计简单但控制的准确性和灵活性以及性价比差。相对于单片机而言并没有巨大的优势,故不采用此方案。2.1.2采用一种是用以AT89S51为核心的单片机控制方案 因为市场上单片机种类很多,每种型号单片机的应用环境都有局限性,因此在选用单片机时要多加比较,合理选择,来获得最优性价比的单片机型号。一般来说在选取单片机时考虑必要的几个方面:模拟电路功能、性能、存储器、运行速度、定时/计数器、I/O口、工作电压、串行接口、功耗、封装形式、抗干扰性、保密性,除了以上的一些的还有一些最基本的比如:中断源优先级和数量、工作温度

16、的范围、有没有检测低电压功能、单片机内有没有具备时钟振荡器、上电复位功能有没有等。影响单片机开发的因素有很多。比如有:开发工具、编程器、开发成本、开发人员的适应性、技术支持和服务等等因素。考虑以上的因素后,本设计采用单片机AT89S51作为本设计的核心元件,利用单片机丰富的I/O端口和灵活的编程设计,以及它控制的准确性等优点,实现基本的密码锁功能。在单片机外接输入键盘作为外围电路用于密码的输入和修改,删除等一些功能的控制,以及外接芯片AT24C02用于存储密码,显示器则采用外接LCD1602用于显示。当用户需要用开锁功能时,先按电源键之后按键盘的数字键09输入密码。输完密码后则按下确认键,如果

17、密码输入正确则开锁,不正确显示密码错误并记错一次。然后再次重新输入密码,当密码输入错误次数达到三次时则发出报警;当用户需要修改密码时,先按下键盘设置键后输入原来的密码,只有当输入的原密码正确后,按改密码的按键,进入密码修改界面才能修改新密码。新密码输入无误后按确认键使新密码将得到存储,密码修改成功。密码遗忘后,按格式化按键。则返回为原始密码。可以看出此方案控制灵活准确性好且保密性强还具有扩展功能,根据现实生活的需要本次设计采用此方案来实现密码锁的设计。达到输入,修改,清除密码等一系列功能。2.2 基于单片机电子密码锁总体设计实现方案本设计系统主要由单片机AT89S51芯片、4*4矩阵键盘、LC

18、D显示模块、掉电存储模块、报警机构和开锁机构组成。如图2.1.1所示。单片机AT89S51时钟电路复位电路掉电存储LCD显示4*4矩阵键盘报警机构开锁机构图2.1.1 系统总体设计结构图时钟电路给单片机提供晶振频率,复位电路不但使单片机上电复位,还能在使用过程中通过需要通过按键再次手动复位,矩阵键盘提供按键的输入,LCD模块显示信息,掉电存储负责密码的存储,开锁机构和报警机构分别负责开锁和报警功能。本设计中,单片机选用AT89S51,LCD显示模块选用LCD1602液晶显示器,串行存储器选用电可擦除存储器AT24C02,开锁机构用发光二极管代替,报警机构则选用蜂鸣器。3.基于单片机电子密码锁的

19、硬件设计3.1 单片机接口分配集成了RAM、ROM、CPU定时器/计数器和多种I/O端口功能部件在单片机AT89S51芯片上,相当于一台微型计算机的基本结构与功能,按功能可以把它分成八个重要的单元:数据存储器(RAM)、微处理器(CPU)、程序存储器(ROM/EPROM)、定时器/计数器及中断系统,特殊功能寄存器(SFR)、I/O口、串行口。在本系统中,是这样使用单片机的各个接口的:P0口接LCD1602的8位双向数据端D0D7相接与上拉电阻相接,P1口作为4*4矩阵键盘的接口,P2口的P2.5P2.7端口和LCD1602的46引脚相接,P2.1和P2.0接串行存储器AT24C02,P3口接报

20、警电路和开锁电路的接口。3.2 单片机最小系统3.2.1复位电路(1)复位方式单片机在启动运行时,第一项任务一般都需要进行复位。复位是指通过一种方式,让单片机芯片内寄存器值变回初始值。在程序运行错误或者错误操作让单片机进入死锁状态时,使用复位按钮可以重新启动。当MCS-5l系列单片机的复位引脚RST(RESET)出现2个机器周期以上的高电平时,复位操作由单片机执行。若RST持续为高电平,单片机就处于循环复位的状态。根据应用的要求,复位操作通常包括两种形式:上电复位和开关复位。图3.2.1即为手动(开关)复位电路。 图3.2.1 手动复位电路(2)复位后的状态a、复位后PC值为0000H,程序由

21、0000H开始执行在复位后。b、SP值为07H, 07H在堆栈底部,一般需要重新进行设置SP值。c、P0P3口值为FFH。P0P3口作为输入口时,必须先写入高电平。单片机在复位后,已使P0P3口每一端线为高电平“1”,为它作为输入口做好准备。(3)WDT 溢出会使该引脚输出高电平“1”,所以本设计采用图3.2.2的手动复位电路。图3.2.2 本设计手动复位电路 3.2.2 时钟电路 AT89S51引脚XTAL1和XTAL2与晶体振荡器及电容C2、C1按图3.2.2所示方式连接。构成了电容三点式振荡器由晶振、电容C2C3及片内与非门(作为反馈、放大元件),振荡信号频率与晶振频率已及电容C1、C2

22、的自身容量相关,最主要是由晶振频率决定,范围一般在033MHz之间,电容C2、C3取值范围一般在530pF之间。根据实际应用情况,本设计中采用晶振为12MHZ做系统的外部晶振。电容量取为22pF。图3.2.2 时钟电路3.3 显示模块硬件设计在所有单片机设计的系统中,常用的显示器有单个发光二极管、八段LED显示器、屏幕显示器(CRT)、液晶显示器(LCD)等。液晶显示器有着重量轻,超薄型,功耗低,体积小等许多其余显示器比不了的优点,在低功耗系统得到了广泛的应用。基于设计所要实现的功能和节约成本等实际因素,故采用LCD1602显示器作为本次设计的显示器。LCD1602液晶显示器目前广泛应用于字符

23、型显示模块。由字符型液晶显示屏,控制驱动主电路HD44780,扩展驱动电路HD44100,少量阻,容元器件构成装配在PCB板上而成。一般的技术参数有:LCD1602的显示容量为16x2个字符(可以显示2行,每行显示16个字符),芯片正常工作电压为4.55.5V,具有80字节的RAM,标准的接口特性,工作电流为2.0mA(5.0V),模块最佳工作电压是5.0V,以及低功耗,长寿命,可靠性高。LCD1602具有16个引脚,如表3-1所示。在LCD1602的有关设计中,主要是通过编写程序控制芯片的4、5、6引脚来实现数据或者指令的写入和执行,再通过数据或者指令的写入和执行来实现LCD1602的显示功

24、能。 表3.3.1是LCD1602的16个引脚和引脚对应功能。表3.3.1 LCD1602引脚说明引脚号 引脚名 功能 1 VSS电源地 2 VCC+5V逻辑电源 3 VEE对比调整电压 4 RS寄存器选择1:数据;0:指令 5 R/W读写操作选择1:读;0:写 6 E使能信号,1:读取信息,10:执行命令 7 DB0数据总线(LSB) 8 DB1数据总线 9 DB2数据总线 10 DB3数据总线 11 DB4数据总线 12 DB5数据总线 13 DB6数据总线 14 DB7数据总线(MSB) 15 A背光+5V 16 KLCD背光电源负极 由于LCD正常的工作必须有足够大的电流,因此在实际应

25、用中为了保证显示器能够正常工作,需要在数据端口接一上拉电阻。图3.3.2中RP1同时作为P0口的上拉电阻。图3.3.1 LCD模块仿真图3.4存储模块硬件设计 串行EPROM是在应用在各种串行器件里比较多的器件,它与并行EPROM比较而言,有数据传送速度低,但是容量比较小,体积较小,重量轻,所含引脚也少。因此适用于存放非挥发数据,速度要求不高,引脚较少的单片机使用。AT24C02存储芯片是Atmel公司的低功耗CMOS型EPROM,存储的空间有256*8位,可擦除多次(大于1000次) 、工作电压范围宽(2.55.5 V)、写入速度非常快(小于10 ms)、数据不会轻易丢失、体积小,重量轻等特

26、点。AT24C02的总线数据传送协议通过IC传送的。地址输入端A0,A1,A2把8个24C02器件与总线相连。AT24C02有一个16字节页写缓冲器,该器件通过IC总线的接口来工作,因为它有一个专门用于写保护的功能。对于系统只用一片AT24C02来说,没必要分辨不同的地址,必要条件是WP保护的功能是正常的,只需要将WP与CPU相连的连线断开并保持高电平,然后测试系统的数据读写功能是否正常即可,而且这对软件的抗干扰技术也非常的重要。图3.4.1是AT24C02的引脚排列图。1 52 6 AT24C023 74 8A0A1A2VssVccWPSCLSDA其引脚功能如下A0A2:器件地址输入端口。这

27、次设计中,A0A2都当接与地相接,所以其值都为零。当这些引脚悬空时,默认值也为零。Vcc:+1.86.0V工作电压的区间。 Vss:地或着电源的负极。 图3.4.1 AT24C02引脚图SCL:串行时钟输入端口。主要用来产生数据接收与发送的时钟的。SDA:串行数据I/O端。用于输出或输入串行的数据。这个引脚为漏极开路端口。需要外部接上拉电阻拉高其电平。WP:写保护端。该端口提供了硬件数据保护。把WP与地相接时,芯片可以执行一般读写的操作。当WP与高电平相接,对芯片执行的是写保护。3.5单片机AT89S51介绍 除了具有在系统可编程的特点外,AT89S51和AT89C51性能大致相同,也有一些改

28、进。AT89S51是一种性能好,功耗低的单片机,共有40个引脚,其中有32个外部双向输入/输出(I/O)端口,2个16位定时计数器且可编程,全双工串行通信口也有2个,包括了 2个外中断口,AT89S51单片机不仅能按照常规方法进行编程,也能进行在线编程。图3.5.1是它的引脚图。图3.5.1 AT89S51引脚图各个引脚的功能介绍如下:A主电源引脚(2条)(1)VCC(40脚):接外部电源高电平。(2)GND(20脚):接地。不同型号单片机接对应电压电源,常用为+5V,低压+3.3V。B输入/输出(I/O)引脚(32条)(1)P0口(32脚39脚):P0口为一个双向I/O端口,每个引脚最多可接

29、收8TTL门电流。当P1口的管脚第一次为高电平时,则为高阻输入。P0口可以作为外部程序数据存储器,默认为数据/地址的第八位。(2)P1口(1脚8脚):P1口是8位双向I/O口且由内部提供上拉电阻,P1口缓冲器最大能承受为4TTL门电流的输出电流。当P1口管脚为高电平时,被内部上拉为高,可用作输入,P1口为低电平时,则将会输出电流,是由于内部上拉引起。在FLASH编程和校验的过程里,P1口作为第八位地址接收口。 (3)P2口(21脚28脚):P2口是一个包含内部上拉电阻的8位双向I/O端口,P2口缓冲器可接收4个TTL门电流的输出电流,当P2口为高电平时,其管脚被内部上拉电阻自行拉高,且作为输入

30、口用。当它作为输入时,P2口的管脚由外部进行拉低,将输出电流由内部上拉所导致。P2口当用作读取外部数据和外部程序存储器时,P2口输出地址的高八位地址。在得出地址为“1”时,它用内部上拉的优点,对外部八位地址数据存储器进行读写,特殊功能寄存器为P2口输出的内容。P2口在FLASH编程和校验的时候接收的是高八位地址与控制信号。 (4)P3口(10脚17脚):P3口管脚是双向I/O口带上拉电阻,可接收输出电流为4个TTL门电流。当P3口写入“1”后,它被内部上拉为“1”,并用于输入。作为输入,由于外部下拉为低电平P3口便能输出电流(ILL),这是由于上拉的缘故。 AT89S51的一些特殊功能口为P3

31、口,P3口管脚备选功能如下表所示:表2-1 P3口第二功能引 脚第 2 功 能P3.0RXD(串行口输入端)P3.1TXD(串行口输出端)P3.2/INT0(外部中断0请求输入端,低电平有效)P3.3/INT1(外部中断1请求输入端,低电平有效)P3.4T0(定时器/计数器0计数脉冲输入端)P3.5 T1(定时器/计数器1计数脉冲输入端)P3.6/WR(外部数据存储器写选通信号输出端,低电平有效)P3.7 /RD(外部数据存储器读选通信号输出端,低电平有效)C控制引脚(4条)(1)RST(Rest,9脚):复位信号输入端。在单片机运行过程里,在此引脚加持续时间大于2个机器周期的高电平,复位操作

32、便可完成,也就是说单片机开始执行程序是从0000H程序存储单元。(2)ALE/PROG(30脚):当访问外部存储器,地址锁存器允许的状态输出电平是用来锁地址字节。在FLASH进行编程时,输入编程脉冲从此引脚。一般,ALE端输出不变的频率周期的正脉冲信号,振荡器频率是它的6倍。可用作对外部输出的脉冲信号或用于定时等功能。要注意的是:当作为外部数据存储器时,要跳过一个ALE脉冲信号。想要禁止ALE的输出可以在地址SFR8EH上置0。此时,在执行MOVX,MOVC指令是ALE才能有用。该引脚会被略微的拉高。外部执行状态ALE禁止了微处理器,置位将会无效。(3)/PSEN(29脚):片外程序存储器(R

33、OM)选通线。当访问外部程序存储器时,每个机器周期会有两次/PSEN有效。在访问外部数据存储器期间,就没有两次有效的/PSEN信号。 (4) /EA/VPP(31脚):片内外程序存储器(ROM)选择控制端口。当/EA保持低电平0时,单片机对外部程序存储器(0000H- FFFFH)进行访问,不管是否有内部程序存储器。在加密方式为1时,/EA将内部锁定为RESET;当/EA端保持高电平1时,单片机就只能只访问内部程序存储器。D外接晶体引脚(2条)XTAL1(19脚):内部时钟工作电路的输入或作为反向振荡放大器的输入端口 XTAL2(18脚):作为反向振荡器的输出口。3.6报警模块的设计在很多单片

34、机系统中,除了显示器件经常还有发声器件,最常见的发声器件是蜂鸣器。蜂鸣器一般用于要求不高的声音报警及按键操作提示音等场合。报警模块由蜂鸣器及外围电路组成,加电后不会发声,当密码输入错误达到三次时,单片机的P3.3引脚为低电平时,三极管Q1导通执行蜂鸣器子程序发出警笛报警。虽然蜂鸣器的控制和LED的控制对于单片机而言是一样的,但在外围硬件电路上有所不同,因为蜂鸣器是一个感性负载,一般不建议用单片机I/O口直接对它进行操作,所以最好加个驱动晶体管,在要求高的场合加反向保护二极管。如图3.6.1所示 3.6.1 PROTUES仿真报警模块部分3.7开锁模块的设计以继电器的动作来模拟锁的开或关。同样,

35、为了增强驱动能力,特别添加了PNP三极管以放大电流,当P3.1口为低电平时,三极管导通,此时继电器动作(锁开),灯亮;二极管具有续流作用并以保护器件安全。如图3.7.1示28盐城工学院本科毕业设计说明书2015图3.7.1 ROTUES仿真开锁模块部分3.8矩阵键盘模块设计矩阵键盘又叫做行列式键盘。行列式键盘的较简单是硬件结构,一般由列输出口和行输出口构成行列式键盘,按键就设置在行与列交点上。P1.0P1.3是列扫描输出口,P1.4P1.7是行扫描输出口。行输出口和列输出口不相交,只有当键被按下时相应的行和列才能够相连。所以,只要测出行和列是否相连就可以知道是否有键按下。一般用循环查询法来判定

36、。使用矩阵键盘,首先查询是否有键已按下,若有键按下,再判定是哪个键按下,也就是确定按键的行号与列号。如图3.8.1所示,把端口P1.0P1.3作为列扫描输出线,P1.7P1.4作为行扫描的输入线,矩阵键盘扫描过程如下:A 先把四根行扫描线输出的电平全是低电平,然后依次检查四根列线的输入,只要有一根列线的输入为低电平,则说明有键按下,能同时得到列号。B 依次给四根行扫描线P1.4P1.7输出低电平,然后测试列输入线,有输入为0的行线就是按下键的行号。C 按行,列号进行译码工作,就可以得到按键值了。 图3.8.1 PROTUES仿真矩阵键盘电路4系统软件设计软件设计主要包括主程序、初始化程序、LC

37、D显示程序、键盘扫描程序、键功能程序、密码设置程序、EEPROM读写程序等共同组成。4.1主程序流程图设计图4.1.1所示为主程序流程图,当接上电源,程序进行初始化的设置,然后在键盘上可以进行输入密码,系统进行矩阵键盘的扫描,假如密码正确,完成开锁。密码错误次数达3次则蜂鸣器报警,键盘被锁定,60s后能重新输入密码。选择是否要进行修改密码,若要修改密码,按修改密码按键后,进入修改密码页面。先输入旧密码密码,密码正确后设置新密码,确认后,密码修改成功。 5. 系统仿真设计5.1 PROTUES仿真软件介绍 Proteus软件是英国Labcenter electronics公司开发的EDA工具画图

38、仿真软件。它不但具有其它EDA工具软件的仿真功能,也能仿真单片机和其他外围器件。目前最好的仿真单片机和外围器件与电路的工具。虽然目前国内推广刚开始,但已受到单片机发烧友、开发单片机应用的科技工作者的喜爱。Proteus是闻名世界的EDA工具(仿真软件),有原理图布图、代码调试以及单片机与外围电路仿真等功能,一键生成到PCB设计,实现了从概念到产品的完整系列设计。是世界目前唯一可以将原理电路仿真、PCB板生成设计和虚拟仿真软件三合一的设计软件,其处理器模型可以支持8051、HC11、ARM、AVR、8086和MSP430等,2010年又添加了Cortex和DSP系列等处理器,现在持续增加其他一些

39、系列处理器的模型。在编译方面,它也支持IAR、Keil等多种编译器。用PROTEUS绘好原理图后,调入编译好的目标代码文件:*.HEX,对原理图进行仿真。 PROTEUS不但可将许多单片机实例进行形象化,也可将运行过程形象化。前者可在一定程度上得到实物演示效果,后者则是实物演示实验很难达到的效果。 它的元器件、连接线路和传统的单片机实验硬件非常吻合。在某种程度上替代了传单片机实验教学,例:元器件选择电路修改、电路连接、软件调试、电路检测、运行结果等。 随着科学技术的发展,“软件仿真技术”已成为许多设计重要的设计方式。它具有设计灵活、方便结果、过程的统一的优点。能让设计时间大大减少、经济投入大为

40、减少。相在单片机开发应用中,PROTEUS也会茯得广泛的应用。 使用Proteus 软件对单片机系统仿真设计,以培养学生的设计电路能力及操作仿真软件的能力;在使用 Proteus 进行系统仿真开发成功之后,再进行实物的制作,能提高单片机系统设计效率和降低经济损耗。因此,Proteus 有很高的推广宣传利用的价值。 5.2 PROTUES软件与KEIL联调PROTEUS 和 KEIL都是单片机系统设计中经常用到的设计软件,各个功能模块和器件的工作情况可以通过KEIL和PROTEUS的联合仿真和调试清晰地反映。通过KEIL与 PROTEUS的仿真调试,单步的执行程序或者设置断点在程序中,可以方便地

41、对各语句的执行情况和各变量的值进行观察,有效快捷找到程序中的错误的地方。一般KEIL和PROTEUS的联合调试和仿真的步骤如下:(1)在KEIL中创建一个工程,将已编写好的程序加到工程中。(2)在KEIL中为工程设置选项。为了实现和PROTEUS的联合调试,除了要进行一般工程选项的设置外,还要对DUBUG项进行设置。具体方法是:单击“工程菜单”对目标1选项设置,窗口弹出,点击“Debug”选项按钮。在出现的对话框里的右栏上的下拉菜单里选中“Proteus VSM Monitor一51 Driver”选项。并点击一下“Use”前面表明选中的小圆点。再点击“Setting”按钮,对通信接口进行设置

42、,在“Host”选项后面添加上“127.0.0.1”,假如使用的不是同一台电脑时,需要添上另一台电脑的IP地址(另一台电脑也应安装Proteus)。在“Port”后面添加上“8000”,然后单击 “OK”按钮。最后将工程进行编译,进入运行状态,并调试。设置完以后,再重新编译、链接、生成可执行的文件。(3)PROTEUS设置。进入Proteus的ISIS,鼠标左键点击菜单“Debug”选项, 选中“使用远程调试监控”选项。(4)将可执行的文件下载到单片机中。然后打开PROTEUS仿真图,双击单片机,将KEIL所产生的“*.HEX”文件添加到单片机中。(5)KEIL与PROTEUS连接仿真调试。点

43、击PROTEUS的开始仿真按键就可以开始KEIL与PROTEUS的仿真与调试了。6.实物设计与制作 因为电路板空间有限,应该根据系统设计的仿真电路图做好各功能模块的整体布局在制作以前,这样会使得实物设计能顺利进行,也可以能使出来的实物看起来简单而美观。在这设计中,实物制作与设计是按以下步骤完成的:(1)首先进行单片机最小系统的电路焊接。单片机最小系统保证了正确性,在其他单元模块设计和焊接出现问题时,能够方便快速地检查出原因在哪里,因此单片机最小系统是必须正确完成的,最小系统是此设计的基础与核心。(2)键盘模块焊接。按照键盘模块设计仿真电路图进行焊接按键,然后通过测试程序导入单片机中检测按键焊接

44、的是否成功。这个设计中检验按键的程序,功能是在有按键按下,将所按下的键值在LCD1602中以“*”显示出来。(3)焊接蜂鸣器和发光二极管。单片机下载源程序后,再看是否能实现功能。不能则重新对电路进行检查,检查完毕再重试。(4)对E2PROM存储器进行焊接。根据AT24C02的引脚功能的介绍,将AT24C02与单片机相接。检测AT24C02是否焊接正确,程序功能是AT24C02写入数组中的数,另一个数组读入AT24C02中的数,再比较两个数组中的数是不是一样,若相同则AT24C02芯片的电路焊接是没有问题,掉电存储功能模块功能可以满足。(5)焊接液晶显示器LCD1602。按照原理仿真电路图以及液

45、晶显示器LCD1602接口说明就可以焊接好液晶显示器,单片机下载显示子程序,若显示器LCD1602能够满足要求显示字符,焊接则没有问题。在实物制作过程中,应该考虑以下几个问题:1.根据仿真原理图进行焊接电路,也不能只信仿真图。仿真图毕竟不能代替实物的调试,在实物制作过程中需要根据实际情况对电路进行调试;2.调试和查找错误过程中,尽量不要带电操作在非必要的情况下,避免器件的损坏;3.电路的布局需要尽量工整。工整简洁的电路原理图布局不仅看着美观,且能够更方便快速地查找电路错误所在。7总结 本次论文设计的是基于单片机的电子密码锁,是由AT89S5单片机芯片、液晶显示器LCD1602、4*4矩阵键盘、单片机最小系统、蜂鸣器和继电器等组成的电路系统。系统设计比较合理,性能稳定、程序通俗易懂,线路精简,实现功能强大,还列了比较详尽的电路设计方法。本设计以AT89S51单片机为核心内容,但是如果仅仅只有单片机方面的知识是肯定不够的,还应该根据具体硬件结构方面的知识,以及对对应的对象特点知识有所了解,最后将硬软件结合起来。在第一章中,主要是介绍了电子密码锁的背景与发展前景。第二章介绍了方案的选择与系统结构。第三章中介绍了系统电路的硬件组成。第四章介绍了系统软件的设计部分。在

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

当前位置:首页 > 教育专区 > 小学资料

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁