《毕业设计(论文)基于单片机的密码锁系统设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于单片机的密码锁系统设计.doc(69页珍藏版)》请在三一办公上搜索。
1、(2012届)本科毕业设计(论文)资料题 目 名 称:基于89S51密码锁系统设计 学 院(部): 电气与信息工程学院 专 业: 电子信息工程 学 生 姓 名: 班 级: 学号 指导教师姓名: 职称 最终评定成绩: 湖南工业大学教务处 2012届本科毕业设计(论文)资料第一部分 毕业论文(2012届)本科毕业设计(论文)学 院(部): 电气与信息工程学院 专 业: 电子信息工程 学 生 姓 名: 班 级:学号 指导教师姓名: 职称 最终评定成绩 2012年6月 摘 要电子密码锁系统保障人身和财产安全,起到了不可替代的作用。在现代智能建筑中起着极其重要的安全保障作用,是智能建筑设备自动化系统的重
2、要组成部分,其重要性是众所周知的。为了更好地推广电子锁在各领域中的应用,本系统设计了一种基于AT89S51单片机控制的电子密码锁,具有高保密性、高安全性、低成本、操作简单等特点。首先,阐明电子密码锁系统的意义、电子密码锁系统控制原理和系统的结构组成。其次,设计以89S51单片机为硬件核心实现电子密码按键控制。应用矩阵键盘来实现密码输入和修改;七段译码数码管来实现密码的显示;发光二极管实现开锁提示;蜂鸣器报警实现密码输入错误提示;AT24C02来实现密码掉电存储。单片机处理数据后,与设定的值进行比较,发出指令,实现功能。同时,在Protues环境下仿真测试,结果表明:达到预期设计效果。关键词:电
3、子密码锁,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
4、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, electr
5、onic 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-emitti
6、ng 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 sh
7、ow that: the desired design effect.Key words: electronic locks, AT89S51, audible alarm目 录摘 要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 系统的硬
8、件概述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.
9、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:系统元器件清单38第1章 绪 论1.1课题研究的背景 随着人们生活水平的提高,如何实现家庭防盗这一问题也变的尤其突出,传统的机械锁由于其结构的简单,被撬的事件屡见不鲜。而锁自古以来就是把守门户的铁将军,人们对它要求甚高,既要安全可靠地防盗,又要使用方便,这也是制锁者长期以来研制的主题。
10、目前国内,大部分人使用的还是传统的机械锁。然而,眼下假冒伪劣的机械锁泛滥成灾,互开率1非常之高。所谓互开率,是各种锁具的一个技术质量标准,也就是1把钥匙能开几把锁的比率。经国家工商局、国家内贸局、中国消协等部门对锁具市场的调查,发现个别产品的互开率居然超标26倍。为何弹子锁的“互开率”会如此之高?据有关专家人士剖析,弹子锁质量好坏主要取决于弹子数量的多少以及弹子的大小,而弹子的多少和大小受一定条件的限制。此外,即使是一把质量过关的机械锁,通过急开锁,甚至可以在不损坏锁的前提下将锁打开。因此,具有多功能的电子式密码锁,变成为人民大众、保全业者和大企业家的最爱。密码锁,一般可分为机械式及电子式的密
11、码锁,而且依功能又分为许多种类,故使用者可以根据其需要加以选择。由于机械式的密码锁,故障率高,且破解密码又非常容易,加上其成本一般较高,一定程度上限制了这类产品的普及和推广。而电子式密码锁故障率低、功能又可随需要做变化、也可增加扩充硬件,所以,目前密码锁皆以电子式的方面发展的一种新型1锁-电子密码锁,为之提供了发展的空间。电子密码锁是由电子电路控制锁体的新型锁具,它采用触摸键盘方式输入开锁密码,操作方便。触摸式电子锁的输入部分采用触摸开关(键盘输入),其优势在于其保密性高,使用灵活性好,安全系数高,无活动零件,不会磨损,寿命长等优点。本设计采用单片机89S51作为单片机的核心单元,设计了一款具
12、有本机开锁,密码更改和报警功能的电子密码锁。即简单又适用。1.2电子密码锁的历史中国锁具历史悠久,据出土文物考证和历史文献记载,锁具发展至今有五千年历史。新石器时期仰韶文化之“骨错”、“石错”就是锁钥雏形。“觿”,古代用骨头制的解绳结的锥子,就是古代钥匙的雏形。所以“觿”属我国最古老的锁具之一。古锁初称牡、闭、钥、链、钤。早期为竹、木结构,起源于门闩。春秋战国至鲁班于木锁内设堂奥机关,至东汉制金属簧片结构锁(又称沟槽锁)。入唐时所之多为金、银、铜、铁、木。明代遂成为广锁、花旗锁、首饰锁、刑具锁四大类。实际上还有一类密码锁,只是不太常见罢了。历经清代、民国到上世纪五十年代。古锁工艺精致奥妙、文化
13、内涵丰富。雕花刻字如:状元及第、长命富贵、麒麟送子、龙凤呈祥等。尤以鱼形锁为例,在芝田录中道:“门锁必为鱼者,取其不暝守夜之意。”鱼亦作年年有余之吉利。古锁也寓意财富,故有“驴驮钥匙马背锁”之说。后衍生至爱情永恒,家族永续,身体永康,似乎一切良愿尽寓其中。据资料记载,最早的用木制成的锁,其不堪一击只能作为象征性的锁。我国的金属锁最早出现在汉代,是簧片结构锁。明清时代是古锁的鼎盛时期,以铜质和铁质为主。上世纪50年代,成本较低的低焊钩锁、叶片锁、弹子锁陆续进入我国市场,中国古锁从此退出了历史舞台。透过泛着沧桑的古锁,领略着中华博大精深的历史文化。锁的具体名称,有一开锁、二开锁、三巴掌锁、三道箍虾
14、尾锁、四开锁、五开锁、龙凤锁、双元锁、迷宫锁(定向锁)、底开锁、转冲锁、倒拉锁、暗门锁、无钥锁、方锁、炮仗锁、马缰绳锁、牛角锁、牛尾锁、举梁锁、文字密码锁、数字密码锁等等。特别值得一提的是,这些古锁,虽长短不一,大小不等,外形大同小异,其奥妙之外,在于钥匙孔的开槽上,可谓五花八门,稀奇古怪。钥匙孔的形状,分别为“一”、“上”、“工”、 “古、” “尚、”“吉”、“喜”、“寿”等字。这些钥匙孔,还是古代社会森严的等级制度的反映哩!黎庶百姓只能用“一”字孔锁,士大夫用“士”、“吉”字孔锁,寿诞喜庆,用“寿”、“喜”字孔锁,将相帝王则另有区别,不得僭越乱来,否则视为违反王法。按材质分,有木锁、金锁、
15、银锁、铜锁、铁锁、景泰蓝锁等;按形式分,有圆形锁、方形锁、枕头锁、文字锁、人物锁、动物锁、密码锁、暗门锁、倒拉锁、炮筒锁等;按用途分,有挂锁、门锁、箱锁、橱锁、盒锁、抽屉锁、仓库锁等;从工艺上制模铸造等。自明代以来,锁具分为四大类:广锁、花旗锁、首饰锁、刑具锁、防盗锁。所谓“广锁”,就是横式锁的意思。此类锁具盛产于浙江绍兴,又有“绍锁”之称。民间称之为“横开锁”、“枕头锁”等。广锁自唐代以来,广泛用于门、箱、厨、柜等,有一百多种。广锁通常以大小分为八个规格,以两为单位,有“四两绍”、“六两绍”、“十二两绍”等。“六两绍”长约3.5寸,“十二两绍”长约7寸。1.3电子密码锁发展趋势从历史上技术发
16、展的规律看,在功能相似的情况下,简单可靠的东西总是替代繁杂的东西,而它正是以简代繁的东西。所以,它是大众化的实用性新产品,替代传统圆盘式机械密码锁和部分电子密码锁是应该的。 在科学技术不断发展的今天,电子密码防盗锁作为防盗卫士的作用也日趋重要。针对平常锁具给人们带来的不便,若使用机械式钥匙开锁,则结构简单,安全性不好。为满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生,电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的电子密码锁是以芯片为核心
17、,通过编程来实现的。其性能和安全性已大大超过了机械锁。它的出现为人们的生活带来了很大的方便,有很广阔的市场前景,相信随着社会的进一步发展,它的方便,安全,实用,小巧,精致的特点会越来越得到人们的喜爱,是人们居家旅行必备之品。在日常的生活中, 住宅与部门的安全防范、单位的文件档案以及一些个人资料的保存多以加锁的办法来解决。若使用传统的机械式钥匙开锁,人们常需携带多把钥匙, 使用极不方便, 且钥匙丢失后安全性即大打折扣。随着科学技术的不断发展,人们对日常生活中的安全保险器件的要求越来越高。为满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生。密码锁具有安全性高、成本低、功耗低、易
18、操作等优点。在安全技术防范领域,具有防盗报警功能的电子密码锁逐渐代替传统的机械式密码锁,克服了机械式密码锁密码量少、安全性能差的缺点,使密码锁无论在技术上还是在性能上都大大提高一步。随着大规模集成电路技术的发展,特别是单片机的问世,出现了带微处理器的智能密码锁,它除具有电子密码锁的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码锁具有很高的安全性、可靠性,应用日益广泛。随着人们对安全的重视和科技的发展,许多电子智能锁14(指纹识别、IC卡辨认)已在国内外相继面世。但是这些产品的特点是针对特定的指纹和有效卡,只能适用于保密要求的箱、柜、门等。而且指纹识识别器若在公共场所使用存在容易机械
19、损坏,IC卡还存在容易丢失、损坏等特点。加上其成本较高,一定程度上限制了这类产品的普及和推广。鉴于目前的技术水平,电子密码锁是这类电子防盗产品的主流。 1.4电子密码锁的特点电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的本电子密码锁,四位密码的可以有1万组密码供主人随意变换,保密性极高。可选密码组是连续排列的,为选择容易记忆的密码提供了方便。目前已开发的基本型产品,密码位数及密码量还可以根据用户的需求来重新设计。也可
20、以为用户增加报警器接口。1.5课题研究的意义本系统密码锁的优点:1、不用钥匙,没有废弃污染物;2、全机械结构,能承受相当恶劣的外部环境,使用范围广;3、操作简单,开锁时间比较短,平均开锁时间约15秒;4、实际密码量大保密性能高,试探开锁的概率几乎为零;5、结构简单,结实可靠;非常适应于我们生产生活2当中。电子密码锁的设计主要由三部分组成:44矩阵键盘接口电路、密码锁的控制电路、输出八段显示电路。另外系统还有LED提示灯,报警蜂鸣器等。密码锁设计的关键问题是实现密码的输入、清除、更改、开锁等功能:按下一个数字键,一个“8”就显示在最右边的数码管上,同时将先前输入的所有“8”向左移动一位。密码清除
21、功能:当按下清除键时,清除前面输入的所有值,并清除所有显示。密码更改功能:将输入的值作为新的密码。开锁功能:当按下开锁键,系统将输入与密码进行检查核对,如果正确锁打开,否则不打开。第2章 系统的总体设计2.1系统方案分析本电子密码锁系统要实现设计任务的要求,经过分析我们采用一种是以AT89S51为核心的单片机控制方案。利用单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性,不但能实现基本的密码锁保障安全功能,还能添加调电存储密码、声光提示甚至添加遥控控制功能。本电子密码锁系统采用AT89S51 单片机为主控模块、矩阵44 键盘输入模块、数码管显示模块、LED开锁指示模块、蜂鸣器报警模块、
22、AT24C02掉电存储模块。应用矩阵键盘来实现密码输入和修改;七段译码数码管来实现密码的显示;发光二极管实现开锁提示;蜂鸣器报警实现密码输入错误提示;AT24C02来实现密码掉电存储。单片机处理数据后,与设定的值进行比较,发出指令,实现功能。其原理框如图2.1所示。图2.1 电子密码锁系统方框图2.2 系统核心模块的选择2.2.1 单片机芯片的选择常用的单片机芯片有AT89S51与AT89C51,AT89S51与AT89C51相比,外型管脚完全相同,AT89C51的HEX程序无须任何转换可直接在AT89S51运行,结果一样。但AT89S51比AT89C51新增了一些功能,性能有了较大的提高,价
23、格基本不变,甚至比AT89C51更低。AT89S51支持在线编程和看门狗是其中主要特点。 AT89S51比AT89C51优点有以下几点。引脚功能:管脚几乎相同,变化的是在AT89S51中P1.5、P1.6、P1.7具有第二功能,即这3个引脚的第二功能组成了串行ISP编程的接口。编程功能:AT89C51仅支持并行编程,而AT89S51不但支持并行编程还支持ISP在线编程,这个功能的优势在于改写单片机储存器内的程序不需要把芯片从工作环境中剥离。在编程电压方面,AT89C51的编程电压除正常工作的5V外,另Vpp需要12V,而AT89S51仅仅需要4-5V即可。烧写次数更高:AT89S51标称烧写次
24、数是1000次,实为1000-10000次,这样更有利开始学习者反复烧写,降低学习成本。工作频率高:AT89C51极限工作频率是24MHZ,而AT89S51最高工作频率是33MHZ,(AT89S51芯片两种,工作频率分别为24MHZ和33MHZ)从而有更快的计算速度。 电源范围更宽:AT89S51工作电压范围,达4-5.5V,而AT89C51在底于4.8V和高于5.3V的时侯则无法正常工作。 抗干扰性更强:AT89S51内部集成看门狗计时器(Watchdog Timer),而AT89C51需外接看门狗计时器电路,或者用单片机内部定时器构成软件看门狗来实现软件抗干扰。全新的加密性,这使得对于AT
25、89S51的解密变为不可能,程序的保密性大大加强,这样就可以有效保护知识产权不被侵犯。基于以上特点,本次设计使用ATMEL公司7的AT89S51实现一基于单片机的电子密码锁的设计。AT89S51的外观图如下2.1所示。图2.1 AT89S51的外观图2.2.2 键盘的选择方案一:采用独立式按键来控制使用独立式按键来控制数码管的显示,这样需要很多的按键,每个按键实现一个功能,易于控制,程序编写简单,但是每个按键都要接上拉电阻,占用了单片机大量的I/O 接口资源,要对单片机外扩I/O 口,并且在电路焊接方面又不方便,还要浪费大量的资源,提高了成本。方案二:采用矩阵式键来控制把按键按行列组成矩阵,在
26、行列交点上都对应有一个键,这样使用的按键要少,为判定有无键被按下以及被按键的位置,这种称为按键扫描法。这样虽然提高了编程难度,但是节约了单片机大量的I/O 口,免去了上拉电阻为焊接带来了方便,提高了整块电路板的美观度。矩阵式键盘的外观图如下图2.2所示。图2.2 矩阵式键盘图2.2.3 显示模块的选择方案一:数码管静态显示采用LED 数码管静态显示方法,电路、驱动程序简单,但每个数码管都要一块74LS47 来驱动显示,增高了成本,浪费系统硬件资源,而需要占用单片机多个I/O 口。数码管外观图如下图2.3所示。方案二:数码管动态显示采用LED 数码管动态扫显示方法,只需一块数码管驱动器芯片和一块
27、译码器芯片就可以驱动多个数码管,价格便宜,只需要7 个I/O 口就可以同时驱动8 个数码管显示。硬件利用效率高,驱动程序容易理解和编程。数码管外观图如下图2.3所示。方案三:液晶显示用LCD 显示,显示位数多,由单片机驱动。此方案有美观、显示清晰多样的优点。但同时液晶显示器的驱动程序复杂,编程困难,成本高,价格昂贵,浪费大量的资源。图2.3 数码管外观图2.2.4 数码管驱动选择采用74LS47 驱动数码管和74LS138 译码器来控制数码管的COM 端,因为74LS47 只能驱动共阳数码管,而74LS138 的输出为低电平有效。因此,在74LS138 的输出端加入反向器才可以接到数码管的CO
28、M 端。方案一:74LS0418 芯片的选择采用74LS04 芯片做反向器,74LS47 是集成六反向器芯片,刚好可驱动六个数码管,但是它的输入输出引脚两边均分布,造成跳线较多给电路焊接时带来麻烦影响了整块电路的美观度。方案二:三极管的选择三极管也具有反向的功能,采用的是PNP 管,电路的连接中又方便,减少了跳线提高美观度。2.2.5 报警模块的选择方案一:采用语音报警,虽然可以使整个系统更加完美,但是会使程序更加复杂而且提高了整个系统的造价。方案二:采用发光二极管和蜂鸣器来报警,可以发出声光报警且降低了成本。外观图如下2.4图所示。图2.4 蜂鸣器外观图第3章 硬件电路的设计3.1 系统的硬
29、件概述本电子密码锁主要由AT89S51单片机控制,通过矩阵按键(数字键和功能键)输入密码模块实现开锁和修改密码功能、同时,数码管显示密码数据输入模块,当操作时密码错误输入超过三次蜂鸣器会发出报警声,当输入的密码与设置的密码相同时,则LED指示显示模块的灯会点亮,表示开锁成功。为了达到设定的功能,设计以89S51单片机为硬件核心实现电子密码按键控制。应用矩阵键盘来实现密码输入和修改;七段译码数码管来实现密码的显示;发光二极管实现开锁提示;蜂鸣器报警实现密码输入错误提示;AT24C02来实现密码掉电存储。单片机处理数据后,与设定的值进行比较,发出指令,实现功能。本装置由AT89S51主控模块、键盘
30、密码输入模块、密码掉电存储模块、数、字母显示模块、开锁控制模块、报警控制模块组成。3.2 主控制单元的设计3.2.1 AT89S51主控模块设计 本电子密码锁系统是采用单片机AT89S51芯片是整个电路模块的核心部分,它控制整个系统的运作。由它及电源电路、时钟电路、复位电路组成单片机最小系统。本电路采用的是上电复位和手动复位。在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此引脚时,将使单片机复位,只要这个脚保持高电平,51芯片便循环复位。复位后P0P3口均置1引脚表现为高电平,程序计数器和特殊功能寄存器SFR全部清零。当复位脚由高电平变为低电平时,芯片为ROM的0000H处
31、开始运行程序。常用的复位电路如图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
32、公司的高密度、非易失性存储技术制造,兼容标准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并可通过软
33、件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器7而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。单片机自动完成赋予它的任务的过程,也就是单片机执行程序的过程,即一条条执行的指令的过程,所谓指令就是把要求单片机执行的各种操作用的命令的形式写下来,这是在设计人员赋予它的指令系统所决定的,一条指令对应着一种基本操作;单片机所能执行的全部指令,就是该单片机的指令系统,不同种类的单片机,其指令系统亦不同。为使单片机能自动完成某一特定任务,必须把
34、要解决的问题编成一系列指令(这些指令必须是选定单片机能识别和执行的指令),这一系列指令的集合就成为程序,程序需要预先存放在具有存储功能的部件存储器中。存储器由许多存储单元(最小的存储单位)组成,就像大楼房有许多房间组成一样,指令就存放在这些单元里,单元里的指令取出并执行就像大楼房的每个房间的被分配到了唯一一个房间号一样,每一个存储单元也必须被分配到唯一的地址号,该地址号称为存储单元的地址,这样只要知道了存储单元的地址,就可以找到这个存储单元,其中存储的指令就可以被取出,然后再被执行。 程序通常是顺序执行的,所以程序中的指令也是一条条顺序存放的,单片机在执行程序时要能把这些指令一条条取出并加以执
35、行,必须有一个部件能追踪指令所在的地址,这一部件就是程序计数器PC(包含在CPU中),在开始执行程序时,给PC赋以程序中第一条指令所在的地址,然后取得每一条要执行的命令,PC之中的内容就会自动增加,增加量由本条指令长度决定,可能是1、2或3,以指向下一条指令的起始地址,保证指令顺序执行。AT89S51/LS51单片机是低功耗的、具有4KB在线课编程Flash存储器的单片机。它与通用89C51系列单片机的指令系统和引脚兼容。片内的Flash可允许在线重新编程,也可使用非易失性存储器编程。他将通用CPU和在线可编程Flash集成在一个芯片上,形成了功能强大、使用灵活和具有较高性能性价比的微控制器。
36、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);具有片内看门狗定
37、时器;灵活的在线片内编程模式(字节和页编程模式);具有断电标志模式POF;89S51 相对于89C51 增加的新功能包括: 新增加很多功能,性能有了较大提升,价格基本不变,甚至比89C51 更低。 ISP 在线编程功能,这个功能的优势在于改写单片机存储器内的程序不需要把芯片从工作环境中剥离。是一个强大易用的功能。 最高工作频率为33MHz,大家都知道89C51 的极限工作频率是24M,就是说S51 具有更高工作频率,从而具有了更快的计算速度。 具有双工UART 串行通道。 内部集成看门狗计时器,不再需要像89C51 那样外接看门狗计时器单元电路。 双数据指示器。 电源关闭标识。 全新的加密算法
38、,这使得对于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和
39、XTAL2。XTAL1(19脚)接外部晶体的一个引脚。在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。当采用外部振荡器时,对CMOS单片机,此引脚作为驱动端。XTAL2(18脚)接外部晶体的另一端。在单片机内部,接至上述振荡器的反相放大器的输出端。采用外部振荡器时,对CMOS单片机,该引脚悬浮。 控制或与其他电源复用引脚RST/VPD、ALE/PROG、PSEN和EA/VPP。ST/VPD(9脚):当振荡器运行时,在此引脚上出现两个机器周期的高电平将使单片机复位。推荐在此引脚与VSS引脚接一个约8.2K的下拉电阻,与VCC引脚之间连接一个约10uf的电容,以保证可靠地复位
40、。VCC掉电期间,此引脚可接上备用电源,以保持内部RAM的数据不丢失。当VCC主电源下掉到低于规定的电平,而VPD在其规定的电压范围内,VPD就向内部RAM提供备用电源。ALE/PROG(30脚):当访问外部存储器时,ALE(允许地址锁存)的输出用于锁存地址的低位字节。即使不访问外部存储器,ALE端仍以不变的频率周期性地出现正脉冲信号,此频率为振荡器频率的1/6。因此,它可用作对外输出的时钟,或用于定时目的。然而要注意的是每当访问外部数据存储器时,将跳过一个ALE脉冲。ALE端可以驱动(吸收或输出电流)8个LS型的TTL输入电路。对于EPROM型的单片机,在EPROM编程期间,此引脚用于输入编
41、程脉冲(PROG)。RSEN(29脚):此脚的输出是外部程序存储器的读写选通信号。在从外部程序存储器取令(或常数)期间,每个机器周期两次PESN有效。但在此期间,每当访问外部数据存储器时,这两次有效的PSEN信号将不出现,PSEN同样可以驱动(吸收或输出)8个LS型的TTL输入。EA/VPP:当EA端保持高电平时,访问内部程序存储器,但在PC(程序计数器)值超过0FFFH时,将自动转向执行外部程序存储器内的程序,当EA保持低电平时,则只访问外部程序存储器,不管是否有内部程序存储器,对于常用的89C51来说,无内部程序存储器,所以EA脚必须常接地,这样才能只选择外部程序存储器。对于EPROM型单
42、片机,在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编程和程序验证时,它的接收
43、低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.
44、313INT1(外部中断1)P3.414T0(定时器0外部输入)P3.515T1(定时器1外部输入)P3.616WR(外部数据存储器写脉冲)P3.717RD(外部数据存储器读脉冲)值得强调的是,P3口的每一条引脚都可以独立定义第一功能的输入输出或第二功能。3.3 主要子单元电路设计3.3.1 键盘密码输入模块设计由于本设计需要的按键较多,所以使用矩阵键盘可以节省空间,所以本设计就采用行列式键盘,同时也能减少键盘与单片机接口时所占用的I/O线的数目,在按键比较多的时候,通常采用这样方法。其原理如图3.3所示。图3.3 行列式键盘与单片机接口电路图每一条水平(行线)与垂直线(列线)的交叉处不相通,
45、而是通过一个按键来连通,利用这种行列式矩阵结构只需要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),芯片内的资料可