毕业设计(论文)-基于单片机的密码锁报警系统设计.pdf_第1页
毕业设计(论文)-基于单片机的密码锁报警系统设计.pdf_第2页
毕业设计(论文)-基于单片机的密码锁报警系统设计.pdf_第3页
毕业设计(论文)-基于单片机的密码锁报警系统设计.pdf_第4页
毕业设计(论文)-基于单片机的密码锁报警系统设计.pdf_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

-I-基于单片机的密码锁报警系统设计基于单片机的密码锁报警系统设计基于单片机的密码锁报警系统设计基于单片机的密码锁报警系统设计摘要摘要摘要摘要随着人们生活水平的提高,科技的日益发展如何实现建筑的安全防范、单位的文件档案、财务报表以及一些个人资料的保存这一系列问题也变的尤为特别。为满足人们对锁的使用要求,增加其安全性,密码锁报警系统作为防盗卫士的作用显得日趋重要。随着大规模集成电路技术的发展,特别是单片机的问世,出现了带微处理器的智能密码锁系统,它除具有电子密码锁的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码具有很高的安全性、可靠性,应用日益广泛。鉴于目前的技术水平与市场的接收程度,电子密码锁是这类电子防盗产品的主流。本次设计是基于单片机的密码锁报警系统设计。采用美国Atmel公司的单片机AT89S51作为主控芯片与数据存储器单元,结合外围的矩阵键盘输入、LCD液晶显示、报警器等,用C语言编写主控芯片的控制程序与EEPROM读写程序相结合,设计了一款可以多次更改密码,具有报警功能的电子密码控制系统。这种电路设计具有防试探按键输入、智能控制上锁、开锁、报警、修改密码等多种功能。密码可变、保密性强、灵活性高。关键词关键词关键词关键词44矩阵键盘;AT89S51;密码锁;报警哈尔滨理工大学学士学位论文-II-DesignDesignDesignDesignofofofofLockLockLockLockandandandandAlarmAlarmAlarmAlarmSystemSystemSystemSystemBasedBasedBasedBasedononononMCUMCUMCUMCUAbstractAbstractAbstractAbstractWiththedevelopmentofthepeopleslivingstandardscienceandtechnologydaybydayhowtoachievethesecurityofhousecompanydepartmentdocumentsandfinancesalsosomepersonalinationarebecomingimportantinparticular.ForsatisfythisrequestPasswordalarmsystemplaysamoreimportantroleasthesecurityguards.Withthedevelopmentoflargescaleintegratedcircuittechnologyespeciallytheadventofthemicrocontroller.AppearedwithamicroprocessorsmartpasswordlockwhichamongalarmsystemwithelectroniccodefunctionbutalsotheintroductionofintelligentGuanLiexpert-analysissystemandotherfunctionssothatthepasswordlockwithhighsecurityreliabilityapplicationincreasinglywidespread.Giventhecurrentleveloftechnologyandthemarketreceptionofthedegreeofelectroniccodelockissuchmainstreamofelectronicsecurityproducts.ThearticleisaboutthedesignelectroniccodelockbasedontheMCU.TheuseoftheUnitedStatesAtmelCorporationAT89S51microcontrollerasamasterchipandthedatamemoryunitcombinedwiththeexternalmatrixkeyboardLEDdigitaldisplayalarmunlockandsoondominatedbytheCprogramminglanguagechipEEPROMofthecontrolproceduresandthecombinationofreadingandwritingprogramdesignedtochangeapasswordmanytimesthepolicefunctionwiththeelectronicthepasswordcontrol.Thiscircuitdesignwithanti-testbuttonintelligentcontrollockunlockalarmmultiplefunctionssuchasChangePassword.Passwordcanbechangedevenmoresecretandflexiblethanothers.KeywordsKeywordsKeywordsKeywordsMatrixkeyboard;AT89S51;Electroniccodelock;Alarm哈尔滨理工大学学士学位论文-III-目录目录目录目录摘要.IAbstract.II第1章绪论.71.1课题背景.71.2电子密码锁的特点与发展趋势.71.3课题设计目标与方案.8第2章主要元器件介绍.92.1单片机AT89S51简介.92.1.1主要特性.92.1.2管脚说明.102.2LCD1602显示器.122.2.1接口信号说明.122.2.2主要技术参数.122.2.3基本操作程序.132.3存储芯片AT24C02介绍.132.4I2C总线介绍.132.5本章小结.15第3章硬件电路设计.163.1键盘输入电路.163.2电源输入电路.173.3掉电存储电路.173.4复位电路.183.5晶振电路.193.6显示电路.193.7报警电路.203.8开锁电路.203.9本章小结.22第4章软件程序设计.234.1主程序流程图.234.2按键软件设计.244.2.1按键功能程序流程图.244.2.2按键功能子程序.254.3密码设置软件设计.254.3.1密码设置程序流程图.254.3.2密码设置子程序.26哈尔滨理工大学学士学位论文-IV-4.4开锁软件设计.274.4.1开锁程序流程图.274.4.2开锁功能子程序.284.5本章小结.29结论.30致谢.31参考文献.32附录.33哈尔滨理工大学学士学位论文-5-第第第第1111章章章章绪论绪论绪论绪论1.11.11.11.1课题背景课题背景课题背景课题背景随着人们生活水平的提高和安全意识的加强,具有防盗报警功能的电子密码控制系统逐渐代替传统的机械式密码控制系统,克服了机械式密码控制的密码量少、安全性能差的缺点,使电子密码控制系统无论在技术上还是在性能上都大大提高了一步。随着大规模集成电路技术的发展,特别是单片机的问世,出现了带微处理器的智能密码控制系统,它除具有传统电子密码控制系统的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码控制系统具有很高的安全性、可靠性,应用日益广泛。比如现在的高档小区与办公楼宇中密码报警系统随处可见。用户通过输入密码指令作为开单元楼门的凭证,安全可靠,防止了他人误入,在连续输入密码错误的情况下进行报警,传输到小区保安系统的终端,以视频监控的形式呈现。在我国密码报警系统水平尚处于国际上70年代左右,密码报警系统的成本还很高,市场上仍以按键电子锁为主,按键式和卡片钥匙式电子锁已引进国际先进水平,现国内有几个厂生产供应市场。但国内自行研制开发的电子锁,其市场结构尚未形成,应用还不广泛。国内的不少企业也引进了世界上先进的技术,发展前景非常可观。希望通过不断的努力,使电子密码锁在我国也能得到广泛应用。1.21.21.21.2密码锁报警系统的特点与发展趋势密码锁报警系统的特点与发展趋势密码锁报警系统的特点与发展趋势密码锁报警系统的特点与发展趋势密码锁报警系统是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁、报警任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的。鉴于当今社会的经济水平,科技水平与市场的认可程度,主流的还是键盘式电子密码锁,随着电子元件的进一步发展,电子密码控制系统也出现了很多的种类,功能日益强大,使用更加方便,安全保密性更强,由以前的单密码输入发展到现在的,密码加感应元件,实现了更为真正的电子加密,用户只有密码或电子钥匙中的一样,是打不开锁的,随着电子元件的发展及人们对保密性需求的提高出现了越来越多的电子密码控制系统。由于数字、字符、图形图像、人体生物特征和时间等要素均可成为电子信息,组合使用这些信息能够使电子防盗密码控制获得更高的保密性,如防范森严的金库,需要使用复合信息密码的电子防盗密码控制系统。组合使用信息也能够使电子防盗密码控制系统获得无穷扩展的可能。可以看出组合使用电子信息是电子密码控制系统今后发展的趋势。哈尔滨理工大学学士学位论文-6-1.31.31.31.3课题设计目标与方案课题设计目标与方案课题设计目标与方案课题设计目标与方案由于单片机种类繁多,各种型号都有其一定的应用环境,因此在选用时要多加比较,合理选择,以期获得最佳的性价比。一般来说在选取单片机时从下面几个方面考虑:性能、存储器、运行速度、IO口、定时计数器、串行接口、模拟电路功能、工作电压、功耗、封装形式、抗干扰性、保密性,除了以上的一些还有一些最基本的比如:中断源的数量和优先级、工作温度范围、有没有低电压检测功能、单片机内有无时钟振荡器、有无上电复位功能等。在开发过程中单片机还受到:开发工具、编程器、开发成本、开发人员的适应性、技术支持和服务等等因素。基于以上因素本设计选用单片机AT89S51作为本设计的核心元件,利用单片机灵活的编程设计和丰富的IO端口,及其控制的准确性,实现基本的密码控制功能。在单片机的外围电路外接输入键盘用于密码的输入和一些功能的控制,外接LCD显示器用于显示作用。其主要具有如下功能:1.设置密码,密码通过键盘输入,若密码正确,则将锁打开。2.密码可以由用户自己修改设定,输入正确的旧密码才能修改密码。在输入新密码时候需要二次确认,以防止误操作。3.密码输入错误数码显示器会出现错误提示,若密码输入错误次数超过3次,报警并且锁定键盘。密码报警系统的设计主要由三部分组成:44矩阵键盘接口电路、密码锁的控制电路、LCD1602显示电路。另外系统还有掉电储存,报警等功能。主要的设计实施过程:首先,选用ATMEL公司的单片机AT89S51,以及选则其他电子元器件,并制定总体设计思路。第二步,使用Protel设计硬件电路原理图。第三步,使用KeiluVision3软件编写单片机的C语言程序、软件调试。最后,联合软、硬件全面的检查并完善。哈尔滨理工大学学士学位论文-7-第第第第2222章章章章主要元器件介绍主要元器件介绍主要元器件介绍主要元器件介绍2.12.12.12.1单片机单片机单片机单片机AT89S51AT89S51AT89S51AT89S51简介简介简介简介AT89S51是一个低功耗,CMOS8位单片机,片内含4kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,AT89S51在众多嵌入式控制应用系统中得到广泛应用。图2-1AT89S51芯片引脚图2.1.12.1.12.1.12.1.1主要特性主要特性主要特性主要特性1.4kBytesFlash片内程序存储器;2.128bytes的随机存取数据存储器(RAM);3.32个外部双向输入输出(IO)口;4.5个中断优先级、2层中断嵌套中断;5.6个中断源6.2个16位可编程定时器计数器;7.2个全双工串行通信口;8.看门狗(WDT)电路;9.片内振荡器和时钟电路;10.与MCS-51兼容;11.全静态工作:0Hz-33MHz;P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78RST9P3.0RXD10P3.1TXD11P3.2INT012P3.3INT113P3.4T014P3.5T115P3.6WR16P3.7RD17XTAL118XTAL219Vss20P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728PSEN29ALE30EA31P0.732P0.633P0.534P0.435P0.336P0.237P0.138P0.039VCC40U1AT89S51哈尔滨理工大学学士学位论文-8-12.三级程序存储器保密锁定;13.可编程串行通道;14.低功耗的闲置和掉电模式。2.1.22.1.22.1.22.1.2管脚说明管脚说明管脚说明管脚说明1、主电源引脚VCC和VSSVCC(40脚)接+5V电压;VSS(20脚)接地。2、外接晶体引脚XTAL1和XTAL2XTAL1(19脚)接外部晶体的一个引脚。在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。当采用外部振荡器时,对HMOS单片机,此引脚应接地;对SHMOS单片机,此引脚作为驱动端。XTAL2(18脚)接外晶体的另一端。在单片机内部,接至上述振荡器的反相放大器的输出端。采用外部振荡器时,对HMOS单片机,该引脚接外部振荡器的信号,即把外部振荡器的信号直接接到内部时钟发生器的输入端;对XHMOS,此引脚应悬浮。3、控制或与其它电源复用引脚RSTVPD、ALEPROG、PSEN和EAVPPRSTVPD(9脚)当振荡器运行时,在此脚上出现两个机器周期的高电平将使单片机复位。推荐在此引脚与VSS引脚之间连接一个约8.2k的下拉电阻,与VSS引脚之间连接一个约10F的电容,以保证可靠地复位。VSS掉电期间,此引脚可接上备用电源,以保证内部RAM的数据不丢失。当VSS主电源下掉到低于规定的电平,而VPD在其规定的电压范围(50.5V)内,VPD就向内部RAM提供备用电源。ALEPROG(30脚):当访问外部存贮器时,ALE(允许地址锁存)的输出用于锁存地址的低位字节。即使不访问外部存储器,ALE端仍以不变的频率周期性地出现正脉冲信号,此频率为振荡器频率的16。因此,它可用作对外输出的时钟,或用于定时目的。然而要注意的是,每当访问外部数据存储器时,将跳过一个ALE脉冲。ALE端可以驱动(吸收或输出电流)8个LS型的TTL输入电路。对于EPROM单片机(如8751),在EPROM编程期间,此引脚用于输入编程脉冲(PROG)。PSEN(29脚):此脚的输出是外部程序存储器的读选通信号。在从外部程序存储器取指令(或常数)期间,每个机器周期两次PSEN有效。但在此期间,每当访问外部数据存储器时,这两次有效的PSEN信号将不出现。PSEN同样可以驱动(吸收或输出)8个LS型的TTL输入。EAVPP(引脚):当EA端保持高电平时,访问内部程序存储器,但在PS(程序计数器)值超过0FFFH(对851875180S51)或1FFFH(对8052)时,将自动转向执行外部程序存储器内的程序。当EA保持低电平时,则只访问外部程序存储器,不管是否有内部程序存储器。对于常用的8031来说,无内部程序存储器,所以EA脚须常接地,这样才能只选择外部程序存储器。哈尔滨理工大学学士学位论文-9-对于EPROM型的单片机(如8751),在EPROM编程期间,此引脚也用于施加21V的编程电源(VPP)。4、控制或与其它电源复用引脚RSTVpd,ALEPROG,PSEN和EAVpp。RSTVpd当振荡器运行时。在此引脚上出现两个机器同期的高电平(由低到高跳变),将使单片机复位。在VSS掉电期间,此引脚可接上备用电源,由Vpd向内部RAM提供备用电源,以保持内部RAM中的数据。ALEPROG正常操作时为ALE功能(允许地址钱存),提供把地址的低字节锁存到外部锁存器。ALE引脚以不变的频率(振荡周期的16)周期性地发出正脉冲信号。因此,它可用作对外输出的时钟,或用于定时目的。但要注意,每当访问外部数据存储器时,将跳过一个ALE脉冲。ALE端可以驱动(吸收或输出电流)八个LSTTL电路。对于EPROM型单片机,在EPROM编程期间,此引脚接收编程脉冲(PROG功能)。PSEN外部程序存储器读选通信号输出端。在从外部程序存储器取指令(或数据)期间;PSEN在每个机器周期内两次有效。PSEN同样可以驱动八个LSTTL输入。EAVppEA为内部程序存储器和外部程序存储器选择端。当EA为高电平时,访问内部程序存储器(PS值小于4K)。当EA为低电平时,则访问外部程序存储器。对于EPROM型单片机,在EPROM编程期间,此引脚上加21VEPROM编程电源(Vpp)。5、输入输出(IO)引脚P0、P1、P2、P3(共32根)P0口(39脚至32脚):是双向8位三态IO口,在外接存储器时,与地址总线的低8位及数据总线复用,能以吸收电流的方式驱动8个LS型的TTL负载。P1口(1脚至8脚):是准双向8位IO口。由于这种接口输出没有高阻状态,输入也不能锁存,故不是真正的双向IO口。P1口能驱动(吸收或输出电流)4个LS型的TTL负载。对8052、8032,P1.0引脚的第二功能为T2定时计数器的外部输入,P1.1引脚的第二功能为T2EX捕捉、重装触发,即T2外部控制端。对EPROM编程和程序验证时,它接收低8位地址。P2口(21脚至28脚):是准双向8位IO口。在访问外部存储器时,它可以作为扩展电路高8位地址总线送出高8位地址。在对EPROM编程和程序验证期间,它接收高8位地址。P2可以驱动(吸收或输出电流)4个LS型的TTL负载。P3口(10脚至17脚):是准双向8位IO口,在MSS-51中,这8个引脚还用于专门功能,是复用双功能口。P3能驱动(吸收或输出电流)4个LS型的TTL负载。作为第一功能使用时,就作为普通IO口用,功能和操作方法与P1口相哈尔滨理工大学学士学位论文-10-同。作为第二功能使用时,各引脚的定义如表所示。值得强调的是,P3口的每一条引脚均可独立定义为第一功能的输入输出或第二功能。2.22.22.22.2LCD1602LCD1602LCD1602LCD1602显示器显示器显示器显示器现在的字符型液晶模块已经是单片机应用设计中最常用的信息显示器件了。1602型LCD显示模块具有体积小,功耗低,显示内容丰富等特点。1602型LCD可以显示2行16个字符,有8位数据总线D0-D7和RS,RW,EN三个控制端口,工作电压为5V,并且具有字符对比度调节和背光功能。2.2.12.2.12.2.12.2.1接口信号说明接口信号说明接口信号说明接口信号说明1602型LCD的接口信号说明如表2-2所示:表2-11602型LCD的接口信号说明编号符号引脚说明编号符号引脚说明1VSS电源地9D2DataIO2Vdd电源正极10D3DataIO3V0液晶显示偏压信号11D4DataIO4RS数据命令选择端(HL)12D5DataIO5RW读写选择端(HL)13D6DataIO6E使能信号14D7DataIO7D0DataIO15BLA背光源正极8D1DataIO16BLK背光源负极2.2.22.2.22.2.22.2.2主要技术参数主要技术参数主要技术参数主要技术参数1602型LCD的主要技术参数如表3-6所示:表2-21602型LCD的主要技术参数显示容量芯片工作电压工作电流模块最佳工作电压字符尺寸16X2个字符4.55.5V2.0mA(5.0V)5.0V2.95X4.35(WXH)mm哈尔滨理工大学学士学位论文-11-2.2.32.2.32.2.32.2.3基本操作程序基本操作程序基本操作程序基本操作程序读状态:输入:RS=L,RW=L,E=H输出:D0-D7=状态字读数据:输入:RS=H,RW=H,E=H输出:无写指令:输入:RS=L,RW=L,D0-D7=指令码,E=高脉冲输出:D0-D7=数据写数据:输入:RS=H,RW=L,D0-D7=数据,E=高脉冲输出:无2.32.32.32.3存储芯片存储芯片存储芯片存储芯片AT24C02AT24C02AT24C02AT24C02介绍介绍介绍介绍如图2-2为AT24C02的芯片引脚图。A01A12A23GND4VCC5WP6SCL7SDL8图2-2AT24C02的芯片引脚图特点:低压和标准电压运行模式2.7(VCC=2.7Vto5.5V)1.8(VCC=1.8Vto5.5V)内建128x8存储序列,2线制串行接口,双向数据传送协议,100kHz(1.8V2.5V2.7V)和400kHz(5V)兼容,写同步时钟(最大10ms),高可靠性,极限:1M写时钟周期,数据保存:100年,不断推进的芯片等级扩大了设备的可用温度范围。AT24C02提供电可擦除的串行1024位存储或可编程只读存储器(EEPROM)128字(8位字)。芯片在低压的工业与商业应用中进行了最优化。设备操作:CLOCK和DATA变化:SDA管脚通常外部要拉高。SDA管脚上的数据只能在SCL低期间改变。数据在SCL高期间改变定义为一个开始或停止信号。开始状态:在任何操作之前必须有一个开始信号-在SCL为高时SDA上产生一个下降沿。停止状态:SCL为高时SDA产生一个上升沿是停止信号,停止信号后将停止所有通信。在一个读的序列之后,停止信号将让EEPROM进入备用电源模式。2.42.42.42.4IIII2222CCCC总线介绍总线介绍总线介绍总线介绍I2C(InterIntegratedCircuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。I2C总线产生于在80年代,最初为音频和视频设备开发,如今主要在服务器管理中使用,其中包括单个组件状态的哈尔滨理工大学学士学位论文-12-通信。例如管理员可对各个组件进行查询,以管理系统的配置或掌握组件的功能状态,如电源和系统风扇。可随时监控内存、硬盘、网络、系统温度等多个参数,增加了系统的安全性,方便了管理。I2C总线的硬件结构:I2C串行总线一般有两根信号线,一根是双向的数据线SDA,另一根是时钟线SCL。所有接到I2C总线设备上的串行数据SDA都接到总线的SDA上,各设备的时钟线SCL接到总线的SCL上。为了避免总线信号的混乱,要求各设备连接到总线的输出端时必须是开漏输出或集电极开路输出。设备上的串行数据线SDA接口电路应该是双向的,输出电路用于向总线上发送数据,输入电路用于接收总线上的数据。而串行时钟线也应是双向的,作为控制总线数据传送的主机。总线的运行(数据传输)由主机控制。所谓主机是指启动数据的传送(发出启动信号)、发出时钟信号以及传送结束时发出停止信号的设备,通常主机都是微处理器。被主机寻访的设备称为从机。为了进行通讯,每个接到I2C总线的设备都有一个唯一的地址,以便于主机寻访。主机和从机的数据传送,可以由主机发送数据到从机,也可以由从机发到主机。凡是发送数据到总线的设备称为发送器,从总线上接收数据的设备被称为接受器。总线的构成及信号类型:I2C总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。在CPU与被控IC之间、IC与IC之间进行双向传送,最高传送速率100kbps。各种被控制电路均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯一的地址,在信息的传输过程中,I2C总线上并接的每一模块电路既是主控器(或被控器),又是发送器(或接收器),这取决于它所要完成的功能。CPU发出的控制信号分为地址码和控制量两部分,地址码用来选址,即接通需要控制的电路,确定控制的种类;控制量决定该调整的类别(如对比度、亮度等)及需要调整的量。这样,各控制电路虽然挂在同一条总线上,却彼此独立,互不相关。I2C总线在传送数据过程中共有三种类型信号,它们分别是:开始信号、结束信号和应答信号。开始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据。结束信号:SCL为高电平时,SDA由低电平向高电平跳变,结束传送数据。应答信号:接收数据的IC在接收到8bit数据后,向发送数据的IC发出特定的低电平脉冲,表示已收到数据。CPU向受控单元发出一个信号后,等待受控单元发出一个应答信号,CPU接收到应答信号后,根据实际情况作出是否继续传递信号的判断。若未收到应答信号,由判断为受控单元出现故障。目前有很多半导体集成电路上都集成了I2C接口。带有I2C接口的单片机有:CYGNAL的C8051F0XX系列,PHILIPSP87LPC7XX系列,MICROCHIP哈尔滨理工大学学士学位论文-13-的PIC16C6XX系列等。很多外围器件如存储器、监控芯片等也提供I2C接口。总线基本操作:I2C规程运用主从双向通讯。器件发送数据到总线上,则定义为发送器,器件接收数据则定义为接收器。主器件和从器件都可以工作于接收和发送状态。总线必须由主器件(通常为微控制器)控制,主器件产生串行时钟(SCL)控制总线的传输方向,并产生起始和停止条件。SDA线上的数据状态仅在SCL为低电平的期间才能改变,SCL为高电平的期间,SDA状态的改变被用来表示起始和停止条件。(1)控制字节:在起始条件之后,必须是器件的控制字节,其中高四位为器件类型识别符(不同的芯片类型有不同的定义,EEPROM一般应为1010),接着三位为片选,最后一位为读写位,当为1时为读操作,为0时为写操作。(2)写操作:写操作分为字节写和页面写两种操作,对于页面写根据芯片的一次装载的字节不同有所不同。(3)读操作:读操作有三种基本操作:当前地址读、随机读和顺序读。图4给出的是顺序读的时序图。应当注意的是:最后一个读操作的第9个时钟周期不是“不关心”。为了结束读操作,主机必须在第9个周期时发出停止条件或者在第9个时钟周期内保持SDA为高电平、然后发出停止条件。2.52.52.52.5本章小结本章小结本章小结本章小结本章通过对几个重要元器件性能指标的介绍,阐明了密码报警系统的硬件要求,重点介绍了AT89S51的主要特性与管教说明,LCD1602的接口信号说明与主要技术参数,以及储存芯片AT24C02和I2C总线,为密码报警系统的硬件基础。哈尔滨理工大学学士学位论文-14-第第第第3333章章章章硬件电路设计硬件电路设计硬件电路设计硬件电路设计本设计主要由单片机、矩阵键盘、液晶显示器和密码存储等部分组成。其中矩阵键盘用于输入数字密码和进行各种功能的实现。由用户通过连接单片机的矩阵键盘输入密码,后经过单片机对用户输入的密码与自己保存的密码进行对比,从而判断密码是否正确,然后控制引脚的高低电平传到开锁电路或者报警电路控制开锁还是报警。本系统共有两部分构成,即硬件部分与软件部分。其中硬件部分由电源输入部分、键盘输入部分、复位部分、晶振部分、显示部分、报警部分组成。其原理总框图如图3-1所示。AT89S51键盘输入复位电路储存电路电源输入显示电路报警电路开锁电路晶振电路图3-1密码报警系统原理框图3.13.13.13.1键盘输入电路键盘输入电路键盘输入电路键盘输入电路由于本设计所用到的按键数量较多而不适合用独立按键式键盘。采用的是矩阵式按键键盘,它由行线和列线组成,也称行列式键盘,按键位于行列的交叉点上,密码锁的密码由键盘输入完成,与独立式按键键盘相比,要节省很多IO口。本设计中使用的这个44键盘不但能完成密码的输入还能作特别功能键使用,比如清空显示功能等。键盘的每个按键功能在程序设计中设置。其大体功能(看键盘按键上的标记)及与单片机引脚接法如图3-2所示:哈尔滨理工大学学士学位论文-15-S4S3S2S1S5S6S7S8S12S11S10S9S13S14S15S16R110kR210kR310kR410kR510kR610kR710kR810kVCCP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7图3-2键盘输入原理图3.23.23.23.2电源输入电路电源输入电路电源输入电路电源输入电路密码锁主要控制部分电源需要用5V直流电源供电,其电路如图2-6所示,而5V电源输入时往往伴有杂波,所以加一个2.2uF的电容滤波。这样输出的电压一般能满足要求。VCCC42.2uF12POWER2PIN图3-3电源输入电路原理图3.33.33.33.3掉电存储电路掉电存储电路掉电存储电路掉电存储电路AT24C02是ATMEL公司的2KB字节的电可擦除存储芯片,采用两线串行的总线和单片机通讯,电压最低可以到2.5V,额定电流为1mA,静态电流10Ua(5.5V),芯片内的资料可以在断电的情况下保存40年以上,而且采用8脚的DIP封装,使用方便。其电路如图34所示。图中1、2、3脚是三条地址线,用于确定芯片的硬件地址,在AT89S51上它们都能接地,第5脚和第8脚分别为正、负电源。AT24C02中带有片内地址寄存器,每写入或读出一个数据字节后,该地址寄存器自动加1,以实现对下哈尔滨理工大学学士学位论文-16-一个储存单元的读写,所有字节均以单一操作方式读取。A01A12A23GND4VCC5WP6SCL7SDL8U3AT24C02VCCR95.1kR105.1kVCCP3.5P3.6P3.7图3-4掉电存储电路原理图3.43.43.43.4复位电路复位电路复位电路复位电路单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作,例如复位后PC0000H,使单片机从第个单元取指令。无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位。在复位期间(即RST为高电平期间),P0口为高组态,P1P3口输出高电平;外部程序存储器读选通信号PSEN无效。地址锁存信号ALE也为高电平。根据实际情况选择如图3-5所示的复位电路。该电路在最简单的复位电路下增加了手动复位按键,在接通电源瞬间,电容C1上的电压很小,复位下拉电阻上的电压接近电源电压,即RST为高电平,在电容充电的过程中RST端电压逐渐下降,当RST端的电压小于某一数值后,CPU脱离复位状态,由于电容C1足够大,可以保证RST高电平有效时间大于24个振荡周期,CPU能够可靠复位。增加手动复位按键是为了避免死机时无法可靠复位。当复位按键按下后电容C1通过R5放电。当电容C1放电结束后,RST端的电位由R11与R15分压比决定。由于R116)GotoXY(00)print(newcode:)pass0=1pass=0sk14=0count=0count7=0n=0m=0哈尔滨理工大学学士学位论文-24-elseGotoXY(00)print(oldcodewrong)旧密码输入错误sk14=0count2=0count7=0pass=0m=0if(pa!=10)(pass0=1)con=pan+pa=10if(sk14=1)if(n7)(count=6)GotoXY(00)print(setover!)旧密码输入正确,存新密码4.44.44.44.4开锁软件设计开锁软件设计开锁软件设计开锁软件设计4.4.14.4.14.4.14.4.1开锁程序流程图开锁程序流程图开锁程序流程图开锁程序流程图如图4-4为开锁流程图,开始时按开锁键,输入密码,如果输入正确,则开锁成功。如果输入错误累计达到三次,则执行报警程序。初始化按开锁键输入密码按确认键所输入密码正确?Y开锁开始输入次数加1次数3报警程序返回NYN图3-4开锁流程图哈尔滨理工大学学士学位论文-25-4.4.24.4.24.4.24.4.2开锁功能子程序开锁功能子程序开锁功能子程序开锁功能子程序if(sk15=1)提示输入密码GotoXY(00);count=0print(code:)count1=1count2=1count6=1sk15=0sk14=0m=0cp0=1if(count!=0)(count1=1)LCD上显示“”if(count=1)GotoXY(00)print(code:)count1=0if(sk14=1)(count6=1)按下确认,进入校验密码正确if(password0=cq0)(password1=cq1)(password2=cq2)(password3=cq3)(password4=cq4)(password5=cq5)(count=6)GotoXY(00)print(dooropen!)sk14=0count=0count2=0m=0count4=1count6=1DelayMs(1000)P2_0=0DelayMs(500)P2_0=1LCD_Initial()cp0=0elseGotoXY(00)print(codewrong)DelayMs(1000)sk14=0count=0count2=0count6=0m=0p3_6=0count4=1count6=1DelayMs(1000)DelayMs(100)DelayMs(3000)p3_6=1LCD_Initial()cp0=0密码错误4.54.54.54.5本章小结本章小结本章小结本章小结本章是对密码报警系统的软件程序部分进行设计,软件部分对应的由主程序、按键程序、密码设计程序、开锁功能程序等组成,先介绍的主程序流程图目的是为了对整个系统有个大致的描述,而后的按键程序,密码程序,开锁程序都是由整体描述的流程图开始,继而设计出相应的C语言程序。哈尔滨理工大学学士学位论文-26-结论结论结论结论通过对该课题的研究,加深对所学知识的理解,提高对课外知识的学习能力增强知识的应用能力,提高解决实际问题的能力,培养自我创新意识。积累实践经验,为以后的发展打下基础,也为以后我们自己在这方面的发展打下基础,并能够在这方面培养自己的兴趣。在设计中我们必须首先熟悉和掌握单片机的结构及工作原理,单片机的接口技术及相关外围芯片的外特性,控制方法。以单片机核心的电路设计的基本方法和技术了解表关电路参数的计算方法。单片机不是完成某一个逻辑功能的芯片而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机了解计算机原理与结构的最佳选择。目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的

温馨提示

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

评论

0/150

提交评论