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

下载本文档

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

文档简介

(2012届)本科毕业设计(论文)资料题 目 名 称:基于89s51密码锁系统设计 学 院(部): 电气与信息工程学院 专 业: 电子信息工程 学 生 姓 名: 班 级: 学号 指导教师姓名: 职称 最终评定成绩: 湖南工业大学教务处 2012届本科毕业设计(论文)资料第一部分 毕业论文(2012届)本科毕业设计(论文)学 院(部): 电气与信息工程学院 专 业: 电子信息工程 学 生 姓 名: 班 级:学号 指导教师姓名: 职称 最终评定成绩 2012年6月 湖南工业大学本科毕业设计(论文)摘 要电子密码锁系统保障人身和财产安全,起到了不可替代的作用。在现代智能建筑中起着极其重要的安全保障作用,是智能建筑设备自动化系统的重要组成部分,其重要性是众所周知的。为了更好地推广电子锁在各领域中的应用,本系统设计了一种基于at89s51单片机控制的电子密码锁,具有高保密性、高安全性、低成本、操作简单等特点。首先,阐明电子密码锁系统的意义、电子密码锁系统控制原理和系统的结构组成。其次,设计以89s51单片机为硬件核心实现电子密码按键控制。应用矩阵键盘来实现密码输入和修改;七段译码数码管来实现密码的显示;发光二极管实现开锁提示;蜂鸣器报警实现密码输入错误提示;at24c02来实现密码掉电存储。单片机处理数据后,与设定的值进行比较,发出指令,实现功能。同时,在protues环境下仿真测试,结果表明:达到预期设计效果。关键词:电子密码锁,at89s51,声音报警abstractthe electronic lock system to protect personal and property safety has played an irreplaceable role. plays an extremely important security role in the modern intelligent building, is an important part of the intelligent building automation system, and its importance is well known. in various fields in order to better promote electronic locks, the system design is based on at89s51 microcontroller controlled electronic lock, with a high-security, high security, low cost, simple operation, and so on. first, to clarify the significance of the electronic lock system, electronic lock system control principles and systems structure. secondly, the design of the 89s51 microcontroller implemented as a hardware core electronic code key control. keyboard password input and modify the application of the matrix; password seven-segment decoder digital tube display; light-emitting diodes are prompted to unlock; buzzer alarm to achieve the password input error; application of at24c02 to achieve the password to storage. single-chip processing the data, and set the value of comparison, issued a directive to achieve functional. in protues environment simulation test results show that: the desired design effect.key words: electronic locks, at89s51, audible alarmiiiii目 录摘 要iabstractii目 录iii第1章 绪 论11.1课题研究的背景11.2电子密码锁的历史11.3电子密码锁发展趋势21.4电子密码锁的特点31.5课题研究的意义4第2章 系统的总体设计52.1系统方案分析52.2系统核心模块的选择52.2.1 单片机芯片的选择52.2.2 键盘的选择72.2.3 显示模块的选择72.2.4 数码管驱动选择82.2.5 报警模块的选择8第3章 硬件电路的设计73.1 系统的硬件概述73.2 主控制单元的设计73.2.1 at89s51主控模块设计73.2.2 89s51原理及工作特性83.2.3 芯片的引脚描述103.3 主要子单元电路设计123.3.1 键盘密码输入模块设计123.3.2 密码掉电存储模块设计133.3.3 数、字母显示模块设计143.3.4 开锁控制模块设计153.3.5 报警控制模块163.3.6 密码锁的电源模块设计173.3.7 单片机at89s51的复位模块193.3.8 总电路原理图及pcb203.3.9 按键的操作面板的功能介绍21第4章 系统的软件设计194.1系统软件概述194.2各程序设计194.2.1 主程序模块194.2.2 键盘扫描及识别子程序204.2.3 调电存储服务程序204.2.4 显示子程序21第5章 系统软件仿真225.1 proteus软件简介225.2 protuse软件的使用235.3软件仿真连线235.4软件仿真调试235.5系统使用说明24参考文献33结 论34致 谢35附 录37附录1:总程序37附录2:系统元器件清单3841第1章 绪 论1.1课题研究的背景 随着人们生活水平的提高,如何实现家庭防盗这一问题也变的尤其突出,传统的机械锁由于其结构的简单,被撬的事件屡见不鲜。而锁自古以来就是把守门户的铁将军,人们对它要求甚高,既要安全可靠地防盗,又要使用方便,这也是制锁者长期以来研制的主题。目前国内,大部分人使用的还是传统的机械锁。然而,眼下假冒伪劣的机械锁泛滥成灾,互开率1非常之高。所谓互开率,是各种锁具的一个技术质量标准,也就是1把钥匙能开几把锁的比率。经国家工商局、国家内贸局、中国消协等部门对锁具市场的调查,发现个别产品的互开率居然超标26倍。为何弹子锁的“互开率”会如此之高?据有关专家人士剖析,弹子锁质量好坏主要取决于弹子数量的多少以及弹子的大小,而弹子的多少和大小受一定条件的限制。此外,即使是一把质量过关的机械锁,通过急开锁,甚至可以在不损坏锁的前提下将锁打开。因此,具有多功能的电子式密码锁,变成为人民大众、保全业者和大企业家的最爱。密码锁,一般可分为机械式及电子式的密码锁,而且依功能又分为许多种类,故使用者可以根据其需要加以选择。由于机械式的密码锁,故障率高,且破解密码又非常容易,加上其成本一般较高,一定程度上限制了这类产品的普及和推广。而电子式密码锁故障率低、功能又可随需要做变化、也可增加扩充硬件,所以,目前密码锁皆以电子式的方面发展的一种新型1锁-电子密码锁,为之提供了发展的空间。电子密码锁是由电子电路控制锁体的新型锁具,它采用触摸键盘方式输入开锁密码,操作方便。触摸式电子锁的输入部分采用触摸开关(键盘输入),其优势在于其保密性高,使用灵活性好,安全系数高,无活动零件,不会磨损,寿命长等优点。本设计采用单片机89s51作为单片机的核心单元,设计了一款具有本机开锁,密码更改和报警功能的电子密码锁。即简单又适用。1.2电子密码锁的历史中国锁具历史悠久,据出土文物考证和历史文献记载,锁具发展至今有五千年历史。新石器时期仰韶文化之“骨错”、“石错”就是锁钥雏形。“觿”,古代用骨头制的解绳结的锥子,就是古代钥匙的雏形。所以“觿”属我国最古老的锁具之一。古锁初称牡、闭、钥、链、钤。早期为竹、木结构,起源于门闩。春秋战国至鲁班于木锁内设堂奥机关,至东汉制金属簧片结构锁(又称沟槽锁)。入唐时所之多为金、银、铜、铁、木。明代遂成为广锁、花旗锁、首饰锁、刑具锁四大类。实际上还有一类密码锁,只是不太常见罢了。历经清代、民国到上世纪五十年代。古锁工艺精致奥妙、文化内涵丰富。雕花刻字如:状元及第、长命富贵、麒麟送子、龙凤呈祥等。尤以鱼形锁为例,在芝田录中道:“门锁必为鱼者,取其不暝守夜之意。”鱼亦作年年有余之吉利。古锁也寓意财富,故有“驴驮钥匙马背锁”之说。后衍生至爱情永恒,家族永续,身体永康,似乎一切良愿尽寓其中。据资料记载,最早的用木制成的锁,其不堪一击只能作为象征性的锁。我国的金属锁最早出现在汉代,是簧片结构锁。明清时代是古锁的鼎盛时期,以铜质和铁质为主。上世纪50年代,成本较低的低焊钩锁、叶片锁、弹子锁陆续进入我国市场,中国古锁从此退出了历史舞台。透过泛着沧桑的古锁,领略着中华博大精深的历史文化。锁的具体名称,有一开锁、二开锁、三巴掌锁、三道箍虾尾锁、四开锁、五开锁、龙凤锁、双元锁、迷宫锁(定向锁)、底开锁、转冲锁、倒拉锁、暗门锁、无钥锁、方锁、炮仗锁、马缰绳锁、牛角锁、牛尾锁、举梁锁、文字密码锁、数字密码锁等等。特别值得一提的是,这些古锁,虽长短不一,大小不等,外形大同小异,其奥妙之外,在于钥匙孔的开槽上,可谓五花八门,稀奇古怪。钥匙孔的形状,分别为“一”、“上”、“工”、 “古、” “尚、”“吉”、“喜”、“寿”等字。这些钥匙孔,还是古代社会森严的等级制度的反映哩!黎庶百姓只能用“一”字孔锁,士大夫用“士”、“吉”字孔锁,寿诞喜庆,用“寿”、“喜”字孔锁,将相帝王则另有区别,不得僭越乱来,否则视为违反王法。按材质分,有木锁、金锁、银锁、铜锁、铁锁、景泰蓝锁等;按形式分,有圆形锁、方形锁、枕头锁、文字锁、人物锁、动物锁、密码锁、暗门锁、倒拉锁、炮筒锁等;按用途分,有挂锁、门锁、箱锁、橱锁、盒锁、抽屉锁、仓库锁等;从工艺上制模铸造等。自明代以来,锁具分为四大类:广锁、花旗锁、首饰锁、刑具锁、防盗锁。所谓“广锁”,就是横式锁的意思。此类锁具盛产于浙江绍兴,又有“绍锁”之称。民间称之为“横开锁”、“枕头锁”等。广锁自唐代以来,广泛用于门、箱、厨、柜等,有一百多种。广锁通常以大小分为八个规格,以两为单位,有“四两绍”、“六两绍”、“十二两绍”等。“六两绍”长约3.5寸,“十二两绍”长约7寸。1.3电子密码锁发展趋势从历史上技术发展的规律看,在功能相似的情况下,简单可靠的东西总是替代繁杂的东西,而它正是以简代繁的东西。所以,它是大众化的实用性新产品,替代传统圆盘式机械密码锁和部分电子密码锁是应该的。 在科学技术不断发展的今天,电子密码防盗锁作为防盗卫士的作用也日趋重要。针对平常锁具给人们带来的不便,若使用机械式钥匙开锁,则结构简单,安全性不好。为满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生,电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的。其性能和安全性已大大超过了机械锁。它的出现为人们的生活带来了很大的方便,有很广阔的市场前景,相信随着社会的进一步发展,它的方便,安全,实用,小巧,精致的特点会越来越得到人们的喜爱,是人们居家旅行必备之品。在日常的生活中, 住宅与部门的安全防范、单位的文件档案以及一些个人资料的保存多以加锁的办法来解决。若使用传统的机械式钥匙开锁,人们常需携带多把钥匙, 使用极不方便, 且钥匙丢失后安全性即大打折扣。随着科学技术的不断发展,人们对日常生活中的安全保险器件的要求越来越高。为满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生。密码锁具有安全性高、成本低、功耗低、易操作等优点。在安全技术防范领域,具有防盗报警功能的电子密码锁逐渐代替传统的机械式密码锁,克服了机械式密码锁密码量少、安全性能差的缺点,使密码锁无论在技术上还是在性能上都大大提高一步。随着大规模集成电路技术的发展,特别是单片机的问世,出现了带微处理器的智能密码锁,它除具有电子密码锁的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码锁具有很高的安全性、可靠性,应用日益广泛。随着人们对安全的重视和科技的发展,许多电子智能锁14(指纹识别、ic卡辨认)已在国内外相继面世。但是这些产品的特点是针对特定的指纹和有效卡,只能适用于保密要求的箱、柜、门等。而且指纹识识别器若在公共场所使用存在容易机械损坏,ic卡还存在容易丢失、损坏等特点。加上其成本较高,一定程度上限制了这类产品的普及和推广。鉴于目前的技术水平,电子密码锁是这类电子防盗产品的主流。 1.4电子密码锁的特点电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的本电子密码锁,四位密码的可以有1万组密码供主人随意变换,保密性极高。可选密码组是连续排列的,为选择容易记忆的密码提供了方便。目前已开发的基本型产品,密码位数及密码量还可以根据用户的需求来重新设计。也可以为用户增加报警器接口。1.5课题研究的意义本系统密码锁的优点:1、不用钥匙,没有废弃污染物;2、全机械结构,能承受相当恶劣的外部环境,使用范围广;3、操作简单,开锁时间比较短,平均开锁时间约15秒;4、实际密码量大保密性能高,试探开锁的概率几乎为零;5、结构简单,结实可靠;非常适应于我们生产生活2当中。电子密码锁的设计主要由三部分组成:44矩阵键盘接口电路、密码锁的控制电路、输出八段显示电路。另外系统还有led提示灯,报警蜂鸣器等。密码锁设计的关键问题是实现密码的输入、清除、更改、开锁等功能:按下一个数字键,一个“8”就显示在最右边的数码管上,同时将先前输入的所有“8”向左移动一位。密码清除功能:当按下清除键时,清除前面输入的所有值,并清除所有显示。密码更改功能:将输入的值作为新的密码。开锁功能:当按下开锁键,系统将输入与密码进行检查核对,如果正确锁打开,否则不打开。第2章 系统的总体设计2.1系统方案分析本电子密码锁系统要实现设计任务的要求,经过分析我们采用一种是以at89s51为核心的单片机控制方案。利用单片机灵活的编程设计和丰富的i/o端口,及其控制的准确性,不但能实现基本的密码锁保障安全功能,还能添加调电存储密码、声光提示甚至添加遥控控制功能。本电子密码锁系统采用at89s51 单片机为主控模块、矩阵44 键盘输入模块、数码管显示模块、led开锁指示模块、蜂鸣器报警模块、at24c02掉电存储模块。应用矩阵键盘来实现密码输入和修改;七段译码数码管来实现密码的显示;发光二极管实现开锁提示;蜂鸣器报警实现密码输入错误提示;at24c02来实现密码掉电存储。单片机处理数据后,与设定的值进行比较,发出指令,实现功能。其原理框如图2.1所示。图2.1 电子密码锁系统方框图2.2 系统核心模块的选择2.2.1 单片机芯片的选择常用的单片机芯片有at89s51与at89c51,at89s51与at89c51相比,外型管脚完全相同,at89c51的hex程序无须任何转换可直接在at89s51运行,结果一样。但at89s51比at89c51新增了一些功能,性能有了较大的提高,价格基本不变,甚至比at89c51更低。at89s51支持在线编程和看门狗是其中主要特点。 at89s51比at89c51优点有以下几点。引脚功能:管脚几乎相同,变化的是在at89s51中p1.5、p1.6、p1.7具有第二功能,即这3个引脚的第二功能组成了串行isp编程的接口。编程功能:at89c51仅支持并行编程,而at89s51不但支持并行编程还支持isp在线编程,这个功能的优势在于改写单片机储存器内的程序不需要把芯片从工作环境中剥离。在编程电压方面,at89c51的编程电压除正常工作的5v外,另vpp需要12v,而at89s51仅仅需要4-5v即可。烧写次数更高:at89s51标称烧写次数是1000次,实为1000-10000次,这样更有利开始学习者反复烧写,降低学习成本。工作频率高:at89c51极限工作频率是24mhz,而at89s51最高工作频率是33mhz,(at89s51芯片两种,工作频率分别为24mhz和33mhz)从而有更快的计算速度。 电源范围更宽:at89s51工作电压范围,达4-5.5v,而at89c51在底于4.8v和高于5.3v的时侯则无法正常工作。 抗干扰性更强:at89s51内部集成看门狗计时器(watchdog timer),而at89c51需外接看门狗计时器电路,或者用单片机内部定时器构成软件看门狗来实现软件抗干扰。全新的加密性,这使得对于at89s51的解密变为不可能,程序的保密性大大加强,这样就可以有效保护知识产权不被侵犯。基于以上特点,本次设计使用atmel公司7的at89s51实现一基于单片机的电子密码锁的设计。at89s51的外观图如下2.1所示。图2.1 at89s51的外观图2.2.2 键盘的选择方案一:采用独立式按键来控制使用独立式按键来控制数码管的显示,这样需要很多的按键,每个按键实现一个功能,易于控制,程序编写简单,但是每个按键都要接上拉电阻,占用了单片机大量的i/o 接口资源,要对单片机外扩i/o 口,并且在电路焊接方面又不方便,还要浪费大量的资源,提高了成本。方案二:采用矩阵式键来控制把按键按行列组成矩阵,在行列交点上都对应有一个键,这样使用的按键要少,为判定有无键被按下以及被按键的位置,这种称为按键扫描法。这样虽然提高了编程难度,但是节约了单片机大量的i/o 口,免去了上拉电阻为焊接带来了方便,提高了整块电路板的美观度。矩阵式键盘的外观图如下图2.2所示。图2.2 矩阵式键盘图2.2.3 显示模块的选择方案一:数码管静态显示采用led 数码管静态显示方法,电路、驱动程序简单,但每个数码管都要一块74ls47 来驱动显示,增高了成本,浪费系统硬件资源,而需要占用单片机多个i/o 口。数码管外观图如下图2.3所示。方案二:数码管动态显示采用led 数码管动态扫显示方法,只需一块数码管驱动器芯片和一块译码器芯片就可以驱动多个数码管,价格便宜,只需要7 个i/o 口就可以同时驱动8 个数码管显示。硬件利用效率高,驱动程序容易理解和编程。数码管外观图如下图2.3所示。方案三:液晶显示用lcd 显示,显示位数多,由单片机驱动。此方案有美观、显示清晰多样的优点。但同时液晶显示器的驱动程序复杂,编程困难,成本高,价格昂贵,浪费大量的资源。图2.3 数码管外观图2.2.4 数码管驱动选择采用74ls47 驱动数码管和74ls138 译码器来控制数码管的com 端,因为74ls47 只能驱动共阳数码管,而74ls138 的输出为低电平有效。因此,在74ls138 的输出端加入反向器才可以接到数码管的com 端。方案一:74ls0418 芯片的选择采用74ls04 芯片做反向器,74ls47 是集成六反向器芯片,刚好可驱动六个数码管,但是它的输入输出引脚两边均分布,造成跳线较多给电路焊接时带来麻烦影响了整块电路的美观度。方案二:三极管的选择三极管也具有反向的功能,采用的是pnp 管,电路的连接中又方便,减少了跳线提高美观度。2.2.5 报警模块的选择方案一:采用语音报警,虽然可以使整个系统更加完美,但是会使程序更加复杂而且提高了整个系统的造价。方案二:采用发光二极管和蜂鸣器来报警,可以发出声光报警且降低了成本。外观图如下2.4图所示。图2.4 蜂鸣器外观图第3章 硬件电路的设计3.1 系统的硬件概述本电子密码锁主要由at89s51单片机控制,通过矩阵按键(数字键和功能键)输入密码模块实现开锁和修改密码功能、同时,数码管显示密码数据输入模块,当操作时密码错误输入超过三次蜂鸣器会发出报警声,当输入的密码与设置的密码相同时,则led指示显示模块的灯会点亮,表示开锁成功。为了达到设定的功能,设计以89s51单片机为硬件核心实现电子密码按键控制。应用矩阵键盘来实现密码输入和修改;七段译码数码管来实现密码的显示;发光二极管实现开锁提示;蜂鸣器报警实现密码输入错误提示;at24c02来实现密码掉电存储。单片机处理数据后,与设定的值进行比较,发出指令,实现功能。本装置由at89s51主控模块、键盘密码输入模块、密码掉电存储模块、数、字母显示模块、开锁控制模块、报警控制模块组成。3.2 主控制单元的设计3.2.1 at89s51主控模块设计 本电子密码锁系统是采用单片机at89s51芯片是整个电路模块的核心部分,它控制整个系统的运作。由它及电源电路、时钟电路、复位电路组成单片机最小系统。本电路采用的是上电复位和手动复位。在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此引脚时,将使单片机复位,只要这个脚保持高电平,51芯片便循环复位。复位后p0p3口均置1引脚表现为高电平,程序计数器和特殊功能寄存器sfr全部清零。当复位脚由高电平变为低电平时,芯片为rom的0000h处开始运行程序。常用的复位电路如图2.7所示。复位操作不会对内部ram有所影响。当89s51通电,时钟电路开始工作,在reset引脚上出现24个时钟周期以上的高电平,系统即初始复位。此外,reset/vpd还是一复用脚,vcc掉电期间,此脚可接上备用电源, 以保证单片机内部ram的数据不丢失9。设计以89s51单片机为硬件核心实现电子密码按键控制如下3.1图所示。3.2.2 89s51原理及工作特性at89s51是一个低功耗,高性能cmos 8位单片机5,片内4k bytes isp(in-system programmable)可反复擦写1000次的flash只读程序存储器,器件采用atmel公司的高密度、非易失性存储技术制造,兼容标准mcs-51指令系统及89c51引脚结构,芯片内集成了通用8位中央处理器和isp flash存储单元,功能强大的微型计算机的at89s51可为许多控制应用系统提供高性价比的解决方案。图3.1 主控制电路模块at89s51具有如下特点:40个引脚,4k bytes flash片内程序存储器,128 bytes的随机存取数据存储器(ram),32个外部双向输入/出(i/o)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口1,看门狗(wdt)电路,片内时钟振荡器此外,at89s51设计和配置了振荡频率可为0hz并可通过软件设置省电模式。空闲模式下,cpu暂停工作,而ram定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器7而保存ram的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有pdip、tqfp和plcc等三种封装形式,以适应不同产品的需求。单片机自动完成赋予它的任务的过程,也就是单片机执行程序的过程,即一条条执行的指令的过程,所谓指令就是把要求单片机执行的各种操作用的命令的形式写下来,这是在设计人员赋予它的指令系统所决定的,一条指令对应着一种基本操作;单片机所能执行的全部指令,就是该单片机的指令系统,不同种类的单片机,其指令系统亦不同。为使单片机能自动完成某一特定任务,必须把要解决的问题编成一系列指令(这些指令必须是选定单片机能识别和执行的指令),这一系列指令的集合就成为程序,程序需要预先存放在具有存储功能的部件存储器中。存储器由许多存储单元(最小的存储单位)组成,就像大楼房有许多房间组成一样,指令就存放在这些单元里,单元里的指令取出并执行就像大楼房的每个房间的被分配到了唯一一个房间号一样,每一个存储单元也必须被分配到唯一的地址号,该地址号称为存储单元的地址,这样只要知道了存储单元的地址,就可以找到这个存储单元,其中存储的指令就可以被取出,然后再被执行。 程序通常是顺序执行的,所以程序中的指令也是一条条顺序存放的,单片机在执行程序时要能把这些指令一条条取出并加以执行,必须有一个部件能追踪指令所在的地址,这一部件就是程序计数器pc(包含在cpu中),在开始执行程序时,给pc赋以程序中第一条指令所在的地址,然后取得每一条要执行的命令,pc之中的内容就会自动增加,增加量由本条指令长度决定,可能是1、2或3,以指向下一条指令的起始地址,保证指令顺序执行。at89s51/ls51单片机是低功耗的、具有4kb在线课编程flash存储器的单片机。它与通用89c51系列单片机的指令系统和引脚兼容。片内的flash可允许在线重新编程,也可使用非易失性存储器编程。他将通用cpu和在线可编程flash集成在一个芯片上,形成了功能强大、使用灵活和具有较高性能性价比的微控制器。at89s51/ls5110具有如下特性:片内程序存储器含有4kb的flash存储器,允许在线编程,檫写周期可达1000次;片内数据存储器内含128字节的ram;i/o口具有32根可编程i/o线;具有两个16位i/o线;中断系统具有6个中断源、5个终端矢量、2个中断优先级的中断结构;串行口是一个全双工的串行通信口;具有两个数据指针dptr0和dptr1;低功耗节电模式有节电模式和掉电模式;包含3级程序锁定位;at89s51的电源电压为4.0-5.5v,at89ls51的电源电压为2.7-4.0v;-振荡器频率0-33mhz(at89s51),0-16mhz(at89ls51);具有片内看门狗定时器;灵活的在线片内编程模式(字节和页编程模式);具有断电标志模式pof;89s51 相对于89c51 增加的新功能包括: 新增加很多功能,性能有了较大提升,价格基本不变,甚至比89c51 更低。 isp 在线编程功能,这个功能的优势在于改写单片机存储器内的程序不需要把芯片从工作环境中剥离。是一个强大易用的功能。 最高工作频率为33mhz,大家都知道89c51 的极限工作频率是24m,就是说s51 具有更高工作频率,从而具有了更快的计算速度。 具有双工uart 串行通道。 内部集成看门狗计时器,不再需要像89c51 那样外接看门狗计时器单元电路。 双数据指示器。 电源关闭标识。 全新的加密算法,这使得对于89s51 的解密变为不可能,程序的保密性大大加强,这样就可以有效的保护知识产权不被侵犯。 兼容性方面:向下完全兼容51 全部字系列产品。3.2.3 芯片的引脚描述at89s51管脚图如图3.2所示。图3.2 at89s51的管脚图cmos制造工艺的89c51单片机采用40引脚的双列直插封装(dip方式),在单片机的40条引脚中有2条专用于主电源的引脚,2条外接晶体的引脚,4条控制与其它电源复用的引脚,32条输入/输出(i/o)引脚。下面按其引脚功能为四部分叙述这40条引脚功能。电源引脚vcc和vss。其中:vcc(40脚)接+5v电压。vss(20脚)接地。接晶体引脚xtal1和xtal2。xtal1(19脚)接外部晶体的一个引脚。在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。当采用外部振荡器时,对cmos单片机,此引脚作为驱动端。xtal2(18脚)接外部晶体的另一端。在单片机内部,接至上述振荡器的反相放大器的输出端。采用外部振荡器时,对cmos单片机,该引脚悬浮。 控制或与其他电源复用引脚rst/vpd、ale/prog、psen和ea/vpp。st/vpd(9脚):当振荡器运行时,在此引脚上出现两个机器周期的高电平将使单片机复位。推荐在此引脚与vss引脚接一个约8.2k的下拉电阻,与vcc引脚之间连接一个约10uf的电容,以保证可靠地复位。vcc掉电期间,此引脚可接上备用电源,以保持内部ram的数据不丢失。当vcc主电源下掉到低于规定的电平,而vpd在其规定的电压范围内,vpd就向内部ram提供备用电源。ale/prog(30脚):当访问外部存储器时,ale(允许地址锁存)的输出用于锁存地址的低位字节。即使不访问外部存储器,ale端仍以不变的频率周期性地出现正脉冲信号,此频率为振荡器频率的1/6。因此,它可用作对外输出的时钟,或用于定时目的。然而要注意的是每当访问外部数据存储器时,将跳过一个ale脉冲。ale端可以驱动(吸收或输出电流)8个ls型的ttl输入电路。对于eprom型的单片机,在eprom编程期间,此引脚用于输入编程脉冲(prog)。rsen(29脚):此脚的输出是外部程序存储器的读写选通信号。在从外部程序存储器取令(或常数)期间,每个机器周期两次pesn有效。但在此期间,每当访问外部数据存储器时,这两次有效的psen信号将不出现,psen同样可以驱动(吸收或输出)8个ls型的ttl输入。ea/vpp:当ea端保持高电平时,访问内部程序存储器,但在pc(程序计数器)值超过0fffh时,将自动转向执行外部程序存储器内的程序,当ea保持低电平时,则只访问外部程序存储器,不管是否有内部程序存储器,对于常用的89c51来说,无内部程序存储器,所以ea脚必须常接地,这样才能只选择外部程序存储器。对于eprom型单片机,在eprom编程期间,此引脚也用于施加21伏的编程电源(vpp)。输入/输出i/o引脚p0、p1、p2、p3共32根。p0口(39脚32脚):是双向8位三态i/o口,外接存储器时,与地址总线的低8位及数据总线复用,能以吸收电流的方式驱动8个lsttl负载。p1口(1脚8脚):是8位准双向i/o口由于这种接口输出没有高阻状态,输入也不能琐存,故不是 真正的i/o口。门口能驱动(吸收或输出电流)4个lsttl负载,对8052、8032,p1.0引脚的第二功能为t2定时/计数器的外部输入,p1.1引脚的第二功能为t2ex捕捉、重装触发,即t2的外部控制端。对eprom编程和程序验证时,它的接收低8位地址。p2口(21脚28脚):是8位准双向i/o口。在访问外部存储器时,它可以作为扩展电路高8位地址总线送出高8位地址,在对eprom编程和程序验证期间,它的接收高8位地址。p2可以驱动(吸收或输出电流)4个lsttl负载。p3口(10脚17脚):是8位准双向i/o口,在89c51中,这8个引脚还用于专门功能,是复用双功能口,p3能驱动(吸收或输出电流)4个lsttl负载。作为第一功能用时,就作为普通的i/o口用,功能和操作方法与p1口相同。表3.1 主要技术经济指标表口线引脚第二功能p3.010rxd(串行输入口)p3.111txd(串行输出口)p3.212int0(外部中断0)p3.313int1(外部中断1)p3.414t0(定时器0外部输入)p3.515t1(定时器1外部输入)p3.616wr(外部数据存储器写脉冲)p3.717rd(外部数据存储器读脉冲)值得强调的是,p3口的每一条引脚都可以独立定义第一功能的输入输出或第二功能。3.3 主要子单元电路设计3.3.1 键盘密码输入模块设计由于本设计需要的按键较多,所以使用矩阵键盘可以节省空间,所以本设计就采用行列式键盘,同时也能减少键盘与单片机接口时所占用的i/o线的数目,在按键比较多的时候,通常采用这样方法。其原理如图3.3所示。图3.3 行列式键盘与单片机接口电路图每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要n条行线和m条列线,即可组成具有nm个按键的键盘。在这种行列式矩阵键盘非键盘编码的单片机系统中,键盘处理程序首先执行等待按键并确认有无按键按下的程序段。当确认有按键按下后,下一步就要识别哪一个按键按下。对键的识别通常有两种方法:一种是常用的逐行扫描查询法;另一种是速度较快的线反转法。在此我们采用逐行扫描查询法。行线p34-p37为输出,列线p30-p33为输入。cpu先使第一行( p34)为“0”,其余行为“1”。然后读输入口p30-p33的状态,若输入缓冲器的状态全部为“1”,则表示所在行无键按下,接下来cpu使一下行线为“0”,其余行线为“1”,扫描下一行,这样在p34-p37循环进行。若输入缓冲器不全为“1”,说明所在行有键按下,cpu停止当前行线扫描,转入到列线扫描,列线p30-p33为“0”状态的列表示对应列有键按下。这样,行线与列数交叉键就是扫描到的按键。3.3.2 密码掉电存储模块设计 掉电存储密码单元的作用是在电源断开的时候,存储当前设定的密码信息。at24c0219是atmel公司的2kb字节的电可擦除存储芯片,采用两线串行的总线和单片机通讯,电压最低可以到2.5v,额定电流为1ma,静态电流10ua(5.5v),芯片内的资料可以在断电的情况下保存40年以上,而且采用8脚的dip封装,使用方便。 图3.4 掉电存储电路原理图at24c02它的1、2、3脚是3根地址线,用于确定芯片的硬件地址。第8脚和第4脚分别为正、负电源。第5脚sda为串行数据输入输出,数据通过这根双向i2c总线串行传送。第6脚scl为串行时钟,sda和scl为漏极开路端,在实际的应用当中都需要和正电源间各接一个5.1 k的电阻上拉。第7脚为wp写保护端,接地时允许芯片执行一般的读写操作;接正电源时只允许对器件进行读操作。其电路如上图3.4所示。 图中r8、r10是上拉电阻,其作用是减少at24c02的静态功耗,由于at24c02的数据线和地址线是复用的,采用串口的方式传送数据,所以只用两根线scl(移位脉冲)和sda(数据/地址)与单片机传送数据。每当修改一次密码,系统就自动调用存储程序,将新的密码信息保存在芯片内;当系统重新上电的时候,自动调用读存储器程序,将存储器内的密码信息,读到缓存单元中,供主程序使用。3.3.3 数、字母显示模块设计 系统显示原理图如图3.5所示。用动态扫描的方法实现,动态接口采用个数码管轮流显示1的方法,当循环显示频率较高时,利用人眼的暂留特性,看不出闪烁显示现象,这种显示需要一个接口完成字形码的输出(字形选择),另一接口完成各数码管的轮流点亮(数位选择)。把“单片机系统”区域中的p0.0p0.7用8芯排线连接到“四路动态扫描led显示模块”的a-h端口上(要求p0.0对应这b, p0.7对应这h);把“单片机系统“区域中的p2.4p2.7用排线连接到“动态扫描led显示模块”区域中的s1-s4(四位的位控制端)端口上;采用共阳极led七段数码管,四只pnp型三级管起电流驱动作用。数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(com)的数码管。共阳数码管在应用时应将公共极com接到+5v,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(com)的数码管。共阴数码管在应用时应将公共极com接到地线gnd上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮12。显示数据经软件译码后从单片机p0口输出,当p2.4-p2.7的某一位为低电平时,对应的受控制的一位led数码管显示从p0输出的数据。若顺次从p0口输出4位数据,并配合地从p2口输出4位的段控制信号,就可以在4位数码管上稳定的显示数据。3.3.4 开锁控制模块设计当输入的密码正确后,按下开锁键,此时通过单片机送给开锁执行机构开锁信号,电路驱动电磁锁吸合,从而达到开锁的目的。当用户输入的密码正确,而且是在按下开门键op的情况下单片机便输出开门信号,送到开锁驱动电路,然后驱动电磁锁,达到开门的目的。图3.5 显示器原理图其实际电路如图3.7所示。电路驱动和开锁两级组成。由d5、r1、t10组成驱动电路,其中t10可以选择普通的小功率三极管如9014、9018都可以满足要求。d5作为开锁的提示;由d6、c24、t11组成。其中d6、c24是为了消除电磁锁可能产生的反向高电压以及可能产生的电磁干扰。t11可选用中功率的三极管如8050,电磁锁的选用要视情况而定,但是吸合力要足够且由一定的余量。在本次设计中,基于节省材料的原则,暂时用发光二极管代替电磁锁,发光管亮,表示开锁;灭,表示没有开锁。电路图如3.8所示。当p2.0口输出低电平时,二极管发光,表示开锁。图3.7 密码锁开锁机构电路图图3.8 开锁电路3.3.5 报警控制模块电路板板上的三级管q5驱动一个无源蜂鸣器,构成一个简单的报警电路其原理图如图3.8所示,该电路利用单片机的p1.6引脚作为音源,经q5驱动后发声。由于采用了无源蜂鸣器,所以p1.6输出低电平时,并不会发声,需要输出一个脉冲信号蜂鸣器才会发声,脉冲信号的频率由软件决定。图3.8 报警电路次电路的功能:其中一个功能是用来指示操作的按键是否在成功的按下;另外一个功能是当用户输入密码错误的次数超过了3次,鸣笛以示报警。3.3.6 密码锁的电源模块设计为了防止停电情况的发生,本电路后备了ups电源,它包括市电供电电路,停电检测电路,电子开关切换电路,蓄电池充电电路和蓄电池组成。电源电路图如图3.8所示。集成稳压器是指将不稳定的直流电压变成稳定的直流电压的集成电路,由于集成稳压器具有稳压精度高、工作稳定可靠、外围电路简单、体积小、重量轻等显著优点,在各种电源中得到了广泛的应用。7805集成稳压器是常用的固定正输出电压的集成稳压器,输出电压有5v规格,最大输出电流为1.5a,它的内部含有限流保护,采用了噪声低、温度漂移小的基准电压源,工作稳定可靠,使用方便。因此,此次设计采用7805集成稳压器如3.9所示。220v市电通过变压器降压成12v的交流电,再经过整流桥整流,7805集成稳压器稳压到5v送往电子切换电路,由于本电路功耗较少,所以选用10w的小型变压器。由r8,r9,r6,r7及ic14构成电压比较器,正常情况下,v+v- ic14输出高电平,由t3,t4构成的达林顿管使继电器j开启,将其常开触电将蓄电池和电路相连,实现市电和蓄电池供电的切换,保证电子密码锁的正常工作(视电池容量而定持续时间)。1222012jp2d1d2d3d4d5r11kc13300c20.1c333001237805图3.9 市电供电电路其电路图如下图3.10所示。t1,t2构成的蓄电池自动充电电路,它在电池充满后自动停止充电,其中d1亮为正在充电,d2为工作指示。由r4,r5,t1构成电压检测电路,蓄电池电压低,则t1,t2导通,实现对其充电;充满后,t1,t2截止,停止充电,同时d1熄灭,电路中c4的作用是滤除干扰信号。其电路图如图3.11所示。 图3.10 停电检测及电子开关切换电路图3.11 蓄电池自动充电电路在本次设计中,基于节省材料的和演示方便的原则,暂时用5v直流变压器为本次设计提供电源,但实际操作中应考虑使用以上电源电路。3.3.7

温馨提示

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

评论

0/150

提交评论