毕业设计(论文)-基于单片机控制的电子密码锁设计.doc_第1页
毕业设计(论文)-基于单片机控制的电子密码锁设计.doc_第2页
毕业设计(论文)-基于单片机控制的电子密码锁设计.doc_第3页
毕业设计(论文)-基于单片机控制的电子密码锁设计.doc_第4页
毕业设计(论文)-基于单片机控制的电子密码锁设计.doc_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

南通职业大学毕业设计(论文) 基于单片机控制的电子密码锁设计毕业设计(论文) 类 型:毕业设计说明书 毕业论文题 目:基于单片机控制的电子密码锁设计学生姓名: 指导教师:专 业:机电一体化时 间: 全套图纸加扣 3012250582目录摘要.1Abstract2第一章 绪论31.1课题的介绍31.2本设计课题(单片机控制的密码锁)的优势3第二章 密码锁设计方案42.1方案确定42.2设计框图4第三章硬件设计63.1单片机简介63.1.1单片机的基础知识63.1.2单片机的结构63.1.3单片机的应用,83.1.4单片机的发展趋势83.1.5单片机的特点93.1.6单片机芯片的特性及说明103.2内部时钟电路123.3输入键盘133.3.1键盘检测133.3.2键盘消抖143.4显示部分153.4.1 LCD液晶模块153.4.2 1602LCD引脚153.4.3主要技术参数153.4.4 LCD液晶显示指令163.4.5 1602LCD时序图163.5外部存储173.5.1 24C02引脚说明183.5.2 24c02内部寻址,读/写操作183.6 4*4矩阵键盘密码锁原理图(附录1)20第四章 软件设计214.1软件设计方案214.1.1软件设计总流程图214.1.2键盘扫描224.2仿真结果图(附录2)234.3程序源代码(附录3)23总结24致谢25参考文献26附录1 27附录2 28附录3 29基于单片机的电子密码锁设计 刘菲菲机电113 摘 要随着经济的高速发展和时代的进步,传统的机械锁结构过于简单,安全性能更是大大降低,已经无法满足人们的需要,然而安全性能高保密性较强的具有报警功能的密码锁得到了广大人们的青睐。科学技术的飞速发展带动着电子产品朝着智能化与微型化的方向发展,本课题以单片机AT89C51作为核心控制,通过键盘输入密码来控制芯片工作与电路正常运行,从而实现正确输入密码开锁,修改密码,输入三次错误报警等功能。此设计简易方便,安全系数高,比较人性化。关键词 密码锁 单片机 报警1南通职业大学毕业设计(论文) 基于单片机控制的电子密码锁设计Electronic combination lock design based on single chip microcomputerAbstract:With the rapid development of economy andthe progress of the times,the traditional mechanicallockstructure is too simple,safety performanceisgreatly reduced,has been unable tomeet the needs of people,but thesafety performance is highconfidentialitystrong Combination lock with alarming functionby the majority ofpeople of all ages.The rapid development of science and technologydrivenelectronic productstowards intelligentizationandminiaturization,theAT89C51 single-chip microcomputer as the corecontrol,to controlchipandcircuitrunningthrough the keyboard inputpassword,so as to achieve thecorrectpasswordlock,modifypassword,enter the three falsealarm.This designis simple and convenient,high safety factor,more humane.Key words:Combination lock,Single-chip microcomputer,alarm.41第一章 绪论1.1课题的介绍 本毕业设计是一种能防止多次试探破译密码可以报警的以单片机为核心控制的密码锁,设计主要由AT89C51单片机, LCD液晶显示器,矩阵键盘,密码储存和继电器等外围电路组成。用户可以通过矩阵键盘输入六位数数字密码,单片机通过输入的密码和储存器里保存的密码进行比对,推断密码是否一致,从而达到用户需要的开锁要求。防盗电子密码锁在当今社会已扮演了不可缺少的角色,本设计以AT89C51单片机为核心设计的具有开锁,修改密码,报警功能的电子密码锁,既简单又适用。单片机本身又很多优点,例如功耗低、容量大、小体积、性能高等特点,此外单片机近些年来有了新的发展,它主要式利用资源广成本较低,很受广大用户的支持。1.2本设计课题(单片机控制的密码锁)的优势 (1)保密性较强。由于采用6位密码,随机破码率很低,密码可能泄露的情况下可以及时更改密码,避免特殊情况从而使锁的安全性下降。 (2)防止破解。密码输入三次若还是错误会报警提示。 (3)界面简洁。输入密码操作简单人性化,故障率低。 第二章 密码锁设计方案2.1方案确定2.1.1方案一 传统的圆盘拨盘式密码锁门锁的种类数不胜数,让人眼花缭乱。随着人们生活水平的提高,防盗的这一问题也越来越受到重视。传统的机械锁构造过于简单,被撬的事件层出不穷。传统的密码锁结构过于简单易破解,一般在圆盘转动的牵引下带动着刻度盘的转动,最后输入密码。现在市面上这种密码锁主要分为两种类型,它们是圆盘式机械密码锁和拨码盘式机械密码锁。2.1.2方案二 以单片机为核心设计的数字密码锁通常门锁上会有一系列的数字键盘,开启时需要用户输入一个六位数的数字系列,它由单片机系统、4*4矩阵键盘、LCD液晶显示器等外围电路组成的电子密码锁。设计简单、易操作,安全实用又兼有报警的功能,使用灵活性好,效率高,人性化。能实现开锁,上锁,修改密码,密码错误报警,LED数码管显示密码等基本的密码锁功能。安全又方便。综上以上所述,本课题采用第二种设计方案。2.2设计框图基于单片机的电子密码锁主要由单片机最小应用系统电路、键盘接口电路、液晶显示电路、密码存储电路、开锁控制电路和报警电路组成。各电路有其特有功能,以下将分别论述,系统功能框图如下图2-1: 图2-1 功能框图第三章硬件设计3.1单片机简介 3.1.1单片机的基础知识 单片机式一种集成电路芯片,它可分通用型和专用型两大类。在近30年的发展过程中,各种高性能,高速度,高电压,高性能,低功耗,低成本的产品数不胜数。美国Intel公司在1980年推出了MCS-5系列1单片机,它又划分为51和52共两个子系列,其中51是基本型,52是增强型。 3.1.2单片机的结构 MCS-51单片机内部结构如图3-1所示。 图3-1 MCS-51单片机内部结构 MCS-51系列单片机的最典型的产品有8031(内部没有程序储存器,实际上在使用方面已被市场淘汰)、芯片采用HMOS的功耗式89C51的5倍的8051及内部具有4KB字节EPROM的8751,还有8951等常见的单片机。除了内部程序存贮器ROM不同外,其它内部资源相同。8051的内部资源如下:a、8位CPU;b、4KB的ROM程序存储器;c、128字节的内部RAM数据存储器;d、定时器/计数器(2个16位的);f、异步串行口(1个全双工的);e、5个中断源、2级中断优先级的中断控制器;MCS-51引脚及功能如下:1) 电源及时钟引脚,如图2-2所示(外接晶体或外部震荡信号输入引脚两个)时钟引脚XTAL1、XTAL2。电源引脚接人单片机的工作电源,电源及接地引脚又两个Vcc、Vss。时钟引脚(18、19脚)外接晶体时与片内的反相放大器构成一个振荡器,它提供单片机的时钟控制信号。时钟引脚也可外接晶体振荡器。XTAL1(19脚):外接微调电容和石英晶体的一个引脚。,它是片内震荡电路反向放大器的输入端。注意当采用外部振荡器时,此引脚接地。XTAL2(18脚):外接微调电容和石英晶体的另一个引脚。为外部振荡器信号的输入端。Vcc(40脚):接+5V电源;Vss(20脚):接地。2)控制引脚,如下图3-2所示3)输入输出引脚,如下图3-2所示图3-2 电源、控制引角、时钟引脚以及输入/输出引脚 3.1.3单片机的应用,目前单片机在我们生活的各个领域应用十分广泛,可以说单片机无处不在。在智能化管理及过程控制的领域,单片机在仪器仪表、家用电器、医用设备、航空航天、专用设备上利用效率较高,大致可分如下几个范畴:1 在智精密仪器仪表上的应用因为单片机具有高性能、低功耗、成本低、智能化和简易方便等优点,广泛应用于一些精密的仪器仪表中,例如示波器,投影仪,三维二维测量仪器等。2在工业控制中的应用 单片机具有多功能的特点,它集采集与控制系统于一身。例如工厂生产线上的智能化管理,电梯智能化控制、各种报警系统,二级控制系统的计算机联网等。3 . 在家用电器中的应用单片机在家用电器的应用上无所不在,洗衣机功能控制器、电冰箱控温器、空调制冷制热控制器、彩电等等一系列。4. 在计算机网络和通信领域中的应用现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,现在的通信设备基本上都实现了单片机智能控制,例如:手机,电话机、列车无线通信。5、单片机在医用设备领域中的应用 在医疗设备中最常见的医用呼吸机,超声波设备,激光设备等。6、在各种大型电器中的模块化应用专用单片机也叫专用微处理器,专门针对某个特定产品设计。这种模块化体积得到了极大的缩小,简化了电路得到了简化,损坏降低了许多、错误率页大大下降,更方便于更换。7、单片机在汽车设备领域中的应用 最常见的发动机控制器。除此之外,单片机在工商,金融,科研、教育,国防航空航天等领域都得以开发利用。从无线电世界到单片机世界。诚然,单片机的应用从根本上改变了传统的控制方法和设计思想,不仅仅它的应用范畴或由此带来的经济效益,更值得一提的是它已是科学技术的一次革命,是一座重要的里程碑,本次课题设计采用的是8051单片机。 3.1.4单片机的发展趋势 单片机出现的历史并不长,它的产生与发展和微处理器的产生与发展大体相同。因此,单片机的发展阶段可以分为4个阶段。 第1阶段,(1974-1976):单片机的初级阶段。此阶段的单片机功能比较简单,采用双片的形式。此时推出的8位单片机F8,只包含了8位CPU,64BRAM,一台完整的计算机由一个定时/计数器和两个并行口的3851芯片组成。 第2阶段(1976-1978):单片机低性能阶段。在这个阶段单片机已成为完整的计算机,缺点是内部结构还需完善。以Intel公司生产的MCS-48为代表,片内集成了8位CPU,8位定时/计数器,RAM和ROM等,中断系统过于简单,而且无串行口,片内RAM和ROM容量较小且寻址范围不大于4KB.受它的影响走向市场推动单片机的变革。 第3阶段(1978-1982):单片机高性能阶段。此阶段的单片机种类繁多,内部资源丰富,多功能。以Intel公司生产的MCS-51系列为代表,片内集成了8位CPU,16位定时/计数器,串行I/O口,多级中断系统,RAM和ROM等,片内RAM和ROM容量加大,寻址范围可达64KB。 第4阶段(1982年-现在):8位单片机的巩固发展及16位,32位单片机推出阶段。其最大特点是增加了内部资料,实时处理能力更强。 1、单片机的发展趋势是:向智能化,大容量,微型化,外围电路内装等方面发展。 (1)采用双CPU结构,达到高速度高效率的要求。 (2)增加数据总线宽度,以提高数据处理速度和处理能力。(3) 流水结构。指令以队列形式出现CPU中,从而具有很快的运算速度。(4)串行总线结构。 2.存储器的发展(1)增加存储容量。片内RAM可达256B。为了外围扩展电路得到简化,片内存储器存储容量必须增大,从而满足产品的稳定性,也使成本大大降低。(2)片内EPROM开始到EPROM平方化。(3)程序保密化。3.片内I/O口改进 为了满足外围设备和芯片扩展的需求,单片机有多个并行口,为了达到多机通信功能需要配有串行口。并配有串行口,以满足多机通信功能的需要 (1)提高并行口的驱动能力。 (2)I/O口的逻辑控制功能也需要得以增加。 (3)特殊的串行接口功能才有利于单片机构成网络系统。 3.1.5单片机的特点1、体积小,价值低,研发周期短,简易适用,有利于组装成各种智能式测控设备及智能仪表,页迎合了仪器设备即智能化又微型化的需求。2、可靠性高,使用的温度范围广。3、易扩展控制能力强。4、指令系统因为简单指令中有较丰富的逻辑控制功能指令很容易掌握,能较方便地直接操作外部I/O设备。 3.1.6单片机芯片的特性及说明 1主要特性: 它与MCS-51兼容,有8位的中央处理器CPU,4KB的ROM程序存储器,256KB的RAM数据储存器,使用寿命较长。全静态工作时在0Hz-24Hz之间,可寻址64KB外部数据储存器和64KB程序储存器空间的控制电路,有32可编程的I/O线(4个8位并行I/O端口),两个16位定时器/计数器,5个中断源,一个可编程全双工串行口。2各引脚说明:如下图3-3图3-3 8051单片机引脚图 VCC:供电电压。 GND:接地。 P0口:P0口是双功能的8位并行I/O口。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以做地址,数据总线使用,页可以作为输入输出口使用。用作通用I/O口时,引脚上需要外接上拉电阻,P0口知识一个准双向口。P1口:P1口是唯一的单功能并行I/O口,还常被用作通用输入输出口使用,它能驱动4个TTL负载。作为输出口时不需要在片外拉接上拉电阻。当它读引脚输入时候必须先向锁存器写入1,原理与P0口相同。P2口:P2口可作为8为地址输出线使用,为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表3-1所示:表3-1 P3口的第二功能端口功能第二功能端口引脚第二功能RXD(P3.0)串行输入口T0(P3.4)定时/计数器0外部计数脉冲输入TXD(P3.1)串行输出口T1(P3.5)定时/计数器1外部计数脉冲输入INT0(P3.2)外中断0输入WR(P3.6)片外数据存储器写选通信号输出INT1(P3.3)外中断1输入RD(P3.7)片外数据存储器读选通信号输出 控制信号引脚:RST:此为复位信号输入引脚。当振荡器复位器件时,需要输入两个周期的周期的高电平使其复位。ALE/PROG:它式低8位地址锁存信号引脚。它的输出会使锁存器厝村P0口送出的低8位地址信号。在FLASH编程期间,此引脚作为编程脉输入引脚冲。在平时,ALE端输出正脉冲信号需要稳定的频率周期,此频率为振荡器频率的1/6。已达到定时和对外部输出脉冲。值得提醒的是:作为外部数据存储器的时候,需要跳过一个ALE脉冲。如果在SFR8EH地址上置0可以禁止ALE的输出。同时,ALE唯独在执行MOVX指令时候才起特定的作用。除此之外,该引脚额被相应的拉高一些。要是在外部执行状态ALE禁止设置微处理器,置位则无效。/PSEN:此引脚为读片外程序存储器的选通信号输出端,需低电平。在由外部程序存储器取指期间,每个1个机器周期两次/PSEN有效。如果是访问外部数据存储器,将不会出现两次有效的/PSEN信号的状况。/EA/VPP:式读片内与片外程序存储器选择信号引脚。当/EA保持低电平时,则在此期间只读片外存储器。当它处于高电平时候可读片内片外存储器。需要提的是加密方式在1的情况下,/EA将内部锁定为RESET;,此引脚也用来施加12V编程电源(VPP)在FLASH编程期间。XTAL1:片内振荡电路反向放大器的输入及内部时钟工作电路的输入。XTAL2:来自片内震荡电路反向振荡器的输出。3.2内部时钟电路电路如下图所示为内部方式的时钟。在需要MCS-51内部的高增益反相放大器的情况下,需在XTAL1和XTAL2引脚上外接定时元件,达到内部振荡。定时元件是由石英晶体和电容组成的并联振回路。晶体频率在1.212MHZ范围之内,电容频率在530pF范围之内,电容C1和C2的大小可起频率微调的作用,需要注意的是,电容大小要和晶体的容性负载阻搞相匹配,否则不易起振,如图3-4。图3-4 内部时钟电路3.3输入键盘 3.3.1键盘检测当把独立键盘与所选的8051单片机连接起来时,单片机的一个I/O口都需要每一个按键。要是特别的单片机系统按键较多,这样的话,独立按键会占用过多的I/O口资源,因此加入矩阵键盘。下面以4*4矩阵键盘为例来诠释本课题的工作原理和检测方法。首先将16个按键排成4行4列,将第一行的每一个按键的一端连接在一起构成第一根行线,将第一列的每个按键的另外一端连接在一起构成第一根列线,用以此类推将第二,三,四列的按键连接,这样一共有4行4列共8根线,将这8根线连接到单片机的I/O口上,这样通过程序扫描键盘就可以检测16个键。4*4矩阵键盘与单片机的连接图如图3-5所示: 图3-5 4*4矩阵键盘与单片机的连接图 检测按键是否被按下的依据是检测与该键对应的I/O口是否为低电平,对于独立键盘和矩阵键盘都是这样的。,在检测时需要人为通过单片机I/O口送出低电平当矩阵键盘两端都与单片机的I/O口相连的时候。 3.3.2键盘消抖 设计采用的是机械触点式按键。机械式按键在按下和松开时,受机械弹性作用,一般会伴随有特定时间的触点机械抖动,接着起触点慢慢才得以稳定。抖动时间长短与开关的机械特性有很大关系,通常情况下为510ms。在触点抖动期间需要检测按键是否通断,不然会导致判断错误。有时被误认为多次操作是因为按键一次按下再释放,这种情况是不允许出现的,为了避免按键触点机械抖动引起的的检测失误,必须采取消除抖动措施,因为按键多需要考虑软件去抖如图3-6所示。在当检测到有按键按下时,执行一个10ms左右(具体时间应视所使用的按键进行调整)的延时,然后确认该按键是否是在闭合状态的电平的 状态,若是,则确认该键处于闭合状态;同样,在检测到该键释放后用同样方法确认,从而可消除抖动的影响。 图 3-6 机械抖动原理3.4显示部分 3.4.1 LCD液晶模块液晶是一种高分子材料,因为其具有功耗小,小型化,工作电压低、耐冲击,性能稳定等很多优点,20世纪中叶喀什被广泛应用在袖珍式仪表,低功耗应用系统等轻薄型的显示技术。1602LCD液晶显示模块可以显示2行16个ASCLLA码字符,图3-7所示为1602液晶显示模块实物照片。1602LCD提供了8位并行数据接口,方便了与单片机的链接。 图3-7 1602LCD液晶模块 3.4.2 1602LCD引脚1602LCD采用16脚接口,引脚功能定义如表3-2所示。表3-2液晶显示引脚功能 3.4.3主要技术参数1602LCD型的主要技术参数如表3-3所示 表3-3 1602LCD主要技术参数 3.4.4 LCD液晶显示指令1602LCD模块内部控制器共有11条控制指令,指令功能如表3-4所示。表3-4 1602LCD 液晶模块控制器指令集注:*为0或1。 3.4.5 1602LCD时序图1602LCD时序图如图3-8所示。图3-8液晶显示的时序图 3.4.6显示设计为了密码锁的密码显示效果能力更强。本课题设计的显示部分由液晶显示器1602LCD来完成。如果电路通电了,显示器就会处于开启状态,而且显示器上显示两行英文“Welcome You! A:Open B:Modify”。当需要对密码锁输入密码来进行开锁时,按下键盘上的开锁按键A后显示器上显示“Infut Password”,这时按下键盘上的数字键09输入密码。当密码输入完成时,按下确认键E,如果输入的密码正确的话,LCD子显示“Succeed!”,单片机的P3.0引脚会输出低电平,致使三极管导通,因此电磁铁吸合,电子密码锁被打开,如果密码不正确,LCD显示屏会显示“ERROR”,P3.0输出的是高电平,电子密码锁不能被打开。连续输入3次密码错误的话,会发出警报。同样的当需要改密码时,按下键盘上的B按键,输入旧密码成功后,才可输入新密码然后修改成功,如果旧密码输入错误那就不可改密码,连续输入错误超过三次还是会发出警报。3.5外部存储AT24C02内含256*8位空间储存,是美国公司ATMEL 的低功耗CMOS型EPROM。EPROM(ErasableProgrammableReadOnlyMemory),中文含意为“可擦除可编程只读存储器”。如图3-9可以看到,它是一种可重写的存储器芯片,并且其内容在掉电的时候也不会丢失;总而言之,它是非易失性的。它在EPROM编程器里编程,EPROM编程相对而言会提供比正常工作电压更高的电压,这样更有利于对EPROM编程。一旦经过编程,EPROM如果进行擦除必须在强紫外线的照射下才能够 完成。AT24C02的控制字由8位二进制数构成,在信号刚刚发出之后,主机便会立刻发出控制字,以选择从机并控制总线传输的方向。 图3-9 24C02的实物图 3.5.1 24C02引脚说明 A0,A1,A2地址输入引脚,走位硬件寻址的依据,同种芯片可同时连接8片(23),见图3-10所示。Vcc,Gnd电源,接地引脚,1.8-5.5v。 Wp写保护,当Wp接地时,允许对器 图3-10 24c02引脚图件的正常读写操作;当Wp接高电平时,写保护,只能进行读操作。 SDA串行地址/数据输入/输出端口,双向传输,漏极开路,需外接上拉电阻到Vcc(典型阻值为10k)。SCL串行时钟输入,高低电平不同状态与SDA配合,执行不同的命令。 3.5.2 24c02内部寻址,读/写操作 前八位是地址地址信号,从最高位(MSB)开始,其中前四位是固定值1010,后三位有管脚A0、A1、A2的基地情况确定。最后一位是读写控制信号,0表示写,1表示读。若与SDA线发送过来的地址比较一致,则器件输出应答0,否则将返回等待状态。器件内部地址寻址是在器件寻址之后,对256个字节进行寻址,直接传送8位地址信号(00-FF)对应于器件内部的地址。写操作主机先发送起始命令,然后发送至器件地址,在器件的ACK应答被主机接收后,便继续发送内部字节地址,当接收到ACK应答后,继续发送数据,当8位数据发送完毕之后,主机接收到器件的ACK应答,最后发送停止信号,如图3-11所示图3-11 24C02写寻址读操作上一次访问时最后一个地址加1的值在内部地址计数器里,只要芯片有电,此值就被保存下来。当读到最后页的最后字节,该地址变为0;当读到某页的页尾时,该地址转向该页页首,见图3-12所示。图3-12 24C02读寻址3.6 4*4矩阵键盘密码锁原理图(附录1)如下图3-13所示 图3-13 4*4矩阵键盘密码锁原理图第四章 软件设计4.1软件设计方案电子密码锁工作的主要过程是通过键盘输入密码然后在LCD液晶显示器上来显示,同时LCD显示输入的密码输入状况,然后确认密码的正确与否,做出开锁或报警处理。当连续输入3次密码错误时,系统报警。电子密码锁的基本要求:1、 通过键盘修改、输入密码。2、 密码输入正确,开锁;密码错误,复位还原。3、连续三次密码错误,发出警报。4、选择修改选项,先输入就密码,输入正确后,才可输入新密码,即修改成功,否则,一切还原。5.输入密码数字隔1秒显示为*号,有退格消除键。软件采用模块化设计,在程序中以一个主函数,多个子函数的方式编写,这样多有利程序的可读、可移植等。函数共包含: 1、主函数; 2、键盘扫描函数;3、 显示扫描函数;4、 延时函数;5、蜂鸣器的驱动函数;6、芯片的驱动函数;7、开锁的函数 4.1.1软件设计总流程图 如图4-1所示主流程图。 图4-1 程序主流程图 4.1.2键盘扫描键盘设计通过应用编程式的扫描方式,利用CPU完成其它工作的空余时间来调用键盘扫描子程序,响应键盘输入的要求。在执行键功能时,CPU不再响应键输入要求,直到CPU开始重新扫描键盘为止。扫描程序包括:1.判别有无按键按下;2.要获取闭合键的行、列值,需要扫描键盘;3.判断闭合键是否得以释放,如未释放继续等待;4.先把闭合键号保存,然后转去执行该闭合键的功能。4.2仿真结果图(附录2)利用Proteus仿真软件对设计好的电路原理图进行仿真,效果如下图4-2所示。图4-2仿真结果图4.3程序源代码(附录3) 总结 在最近的这几个月中,通过这次单片机4*4矩阵键盘电子密码锁的设计,在老师的耐心帮助和自己的努力下终于完成了此次设计,达到老师的要求,通过这次设计我们学到了许多课本上没有学到的知识,让我们受益匪浅。纸上得来终觉浅,当我们亲手投入到实践中,才真正的领悟到知识与实践结合,才体会到学习的乐趣。从学习与时间的过程中,我懂得了一个团队团结向上的精神。在设计前期准备工作的重要性.在正式开始设计之前,我一直在学习老师布置的任务.,我常到图书馆翻阅大量的书籍,查看有关单片机的书等。.然后,我一边看书一边上机操作,使我单片机对有了一个较全面的了解,这为毕业设计的顺利进行提供了可能。在三年的大学生活里,我接触的都是书本上理论知识,都没有用来与实践结合,感谢毕业设计任务给了我们提供了良好的实践环境。作为一名机电专业的毕业生,即将走上工作岗位,这次毕设使我受益非浅,为今后的学习工作打下了坚实的基础!还有许许多多在学业上给过我帮助的朋友,在此刻无法一一例举,在此也一并表示衷心的感谢!致谢在本课题的整个研究设计过程中,少不了许多老师的悉心指导,和同学的热心帮助,我深深地向它们表示真挚的谢意。首先感谢我的指导老师石剑锋老师,在单片机设计过程中,石老师对我们热心指导、严格要求,在硬软件系统总体设计与设计方案上,给予我宝贵的建议,此外提供了大量与设计相关的参考资料,帮助我一步步脚踏实地完成了毕业设计任务。还要感谢机械系的各位老师,正是因为他们呕心沥血,任劳任怨的教学,我们才能具有扎实的基本功来进行并顺利完成设计任务。感谢一路走来同学和老师的陪伴,老师辛苦的指导和严格的要求,才使我及时完成了毕业设计任务。参考文献1、机电类专业毕业设计指南,张桂香主编,机械工业出版社,2006;2、单片机原理与接口技术(第二版),曹天汉主编,电子工业出版社,2009;3、单片机应用系统开发实例导航,靳达主编,人民邮电出版社,2008;4、电子CAD技术,关健主编,电子工业出版社,2007;5、51单片机原理及应用:基于Keil C与Proteus(第2版),陈海宴编著,北京航空航天大学出版社 2013;附录1附录2附录3 程序源代码#include #include #include #define uint unsigned int#define uchar unsigned char/设置密码缓冲uchar shezhimima=1,2,3,4,5,6,7;/读出密码缓冲uchar mima=1,2,3,4,5,6,7;/显示密码缓冲uchar xsmima=12,12,12,12,12,12,12;uchar code number=0123456789AB*;#include 1602.h#include beeh.h#include key.h #include24c02.h/继电器 sbit k1=P30; /显示模式uchar moshi=0;/执行步骤uchar bzbu=0;/输入次数 uchar bzcishu=0;/报警时间标志uchar bztime=0;/计数变量uint jishu1=0;/显示函数void xianshi() /显示输入密码 if(moshi=0) lcd1602_adr(0x00); lcd1602_writenumber(i); lcd1602_writenumber(n); lcd1602_writenumber(p); lcd1602_writenumber(u); lcd1602_writenumber(t); lcd1602_writenumber(:); lcd1602_writenumber(0x30+bzcishu%10); lcd1602_writenumber( ); lcd1602_writenumber( ); lcd1602_writenumber( ); lcd1602_writenumber( ); lcd1602_writenumber( ); /显示打开open if(moshi=1) lcd1602_adr(0x00); lcd1602_writenumber(o); lcd1602_writenumber(p); lcd1602_writenumber(e); lcd1602_writenumber(n); lcd1602_writenumber( ); lcd

温馨提示

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

评论

0/150

提交评论