密码锁毕业设计.doc_第1页
密码锁毕业设计.doc_第2页
密码锁毕业设计.doc_第3页
密码锁毕业设计.doc_第4页
密码锁毕业设计.doc_第5页
免费预览已结束,剩余24页可下载查看

下载本文档

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

文档简介

毕业设 计课 程 题 目 二级学院 班 级 姓 名 学 号 指导教师 设计时间 目录绪 论2第一章 电子密码锁方案论证31.1 设计任务31.2方案比较31.2.1方案一31.1.2方案二41.1.3方案总结4第二章 51单片机介绍52.1 单片机简介52.2 51单片机介绍52.3 80C51的引脚封装5第三章 电子密码锁硬件设计73.1电子密码锁的构成73.1.2工作原理73.1.3总框架图:73.1.3整个电路原理图83.1.4系统板上硬件连线83.2各单元电路介绍93.2.1数码管显示部分93.2.2复位电路93.2.3晶体振荡电路93.2.4键盘部份103.2.5报警电路10第四章 电子密码锁软件设计114.1软件设计114.2单片机的程序调试114.3软件的运行步骤124.4程序12第五章 调试与实践135.1硬件的焊接135.1.1底座的焊接135.1.2按键的焊接135.1.3时钟电路的焊接135.1.4导线的焊接135.1.5电路板的检测和故障排除135.1.6火线和底线的检测135.1.7元器件之间的连接的检查145.2硬件的调试机器故障排除14第五章 心得体会15参考文献16附录一:程序清单17附录二:实物图22附录三:元器件清单23附录四:按键流程图细解24附录五:正确与错误的流程图25绪 论随着人们生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出,传统的机械锁由于其构造的简单,被撬的事件屡见不鲜,电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的亲呢。出于安全、方便等方面的需要,许多智能锁(如指纹辩识、IC卡辩识)已相继问世,但这些产品的特点是针对特定指纹或有效卡,只能适用于保密要求高且仅供个别人使用的箱、柜、房间等,而且卡片式IC卡还有易丢失等特点,加上其成本一般比较高,一定程度上限制了这类产品的普及和推广。本数字密码锁成本则相对较小。电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的。其性能和安全性已大大超过了机械锁,特点如下:保密性好,编码量多,远远大于弹子锁。随机开锁成功率几乎为零。密码可变。 用户可以经常更改密码,防止密码被盗,同时也可以避免因人员的更替而使锁的密级下降。误码输入保护。当输入密码多次错误时,报警系统自动启动。.按键具有背光功能,方便夜晚或暗处操作,具有防监视功能,避免在使用密码开门时,被其他人发现开门密码。有免打扰功能,室内反锁后,未经允许的密码不可以进入。具有门未关好声光报警提示。具有通道功能,方便会议室使用。具有夜控模式功能,此功能开启后,只有经授权的密码方可进入。门锁外观典雅大方,智能化程度高,保密性强,功能完善,使用方便。完善的电路及机械设计,电路部分经过严格的老化测试及可靠性测试,确保正常状态下可靠灵敏。电子密码锁操作简单易行,一学即会。本设计设计一种由AT89S51编程实现的控制电路,具有按键有效指示、输入错误指示、解码有效指示、定时中断、控制报警、密码修改等功能,可在意外泄密的情况下及时修改密码。8位十进制密码共一亿组不重复,保密性强,灵活性高,适用范围广,特别适合家庭、宾馆等场所。 数字密码锁的设计综合应用之前所学的单片机、微机控制、电路设计等方面的知识。数字密码锁适合于多种场合的保密,特别适合于家庭、外出旅行。本系统由单片机系统、矩阵键盘、LED显示和报警系统组成。系统能完成开锁、超时报警、超次锁定、管理员解密、修改用户密码基本的密码锁的功能。除上述基本的密码锁功能外,还具有调电存储、声光提示等功能,依据实际的情况还可以添加遥控功能。本系统成本低廉,功能实用。第一章 电子密码锁方案论证1.1 设计任务本设计是用44组成09数字键及确认键。 用8位数码管组成显示电路提示信息,当输入密码时,只显示“8.”,当密码位数输入完毕按下确认键时,对输入的密码与设定的密码进行比较,若密码正确,则门开,此处用LED发光二极管亮一秒钟做为提示,同时发出“叮咚”声;若密码不正确,禁止按键输入3秒,同时发出“嘀、嘀”报警声;若在3秒之内仍有按键按下,则禁止按键输入3秒被重新禁止。 1.2方案比较1.2.1方案一方案一是采用数字电路控制的:图11 数字密码锁电路方案采用数字密码锁电路的好处就是设计简单。用以74LS112双JK触发器构成的数字逻辑电路作为密码锁的核心控制,共设了9个用户输入键,其中只有4个是有效的密码按键,其它的都是干扰按键,若按下干扰键,键盘输入电路自动清零,原先输入的密码无效,需要重新输入;如果用户输入密码的时间超过40秒(一般情况下,用户不会超过40秒,若用户觉得不便,还可以修改)电路将报警80秒,若电路连续报警三次,电路将锁定键盘5分钟,防止他人的非法操作。电路由两大部分组成:密码锁电路和备用电源(UPS),其中设置UPS电源是为了防止因为停电造成的密码锁电路失效,使用户免遭麻烦。1.1.2方案二采用一种是用以AT89S51为核心的单片机控制方案。 图12单片机控制方案利用单片机灵活的编程设计和丰富的IO端口,及其控制的准确性,不但能实现基本的密码锁功能,还能添加调电存储、声光提示甚至添加遥控控制功能。其原理如图22所示。具有矩阵键盘指示、输入错误指示、解码有效指示、定时中断、控制报警、密码修改1.1.3方案总结设计本课题时构思了两种方案:一种是用以74LS112双JK触发器构成的数字逻辑电路控制方案,另一种是用以AT89s51为核心的单片机控制方案。通过比较以上两种方案,考虑到数字电路方案原理过于简单,而且不能满足现在的安全需求,而单片机方案有较大的活动空间,不但能实现所要求的功能而且能在很大的程度上扩展功能,而且还可以方便的对系统进行升级,所以我们采用后一种方案。第二章 51单片机介绍2.1 单片机简介将CPU芯片、存储器芯片、I/O接口芯片和简单的I/O设备(小键盘、LED显示器)等装配在一块印刷电路板上,再配上监控程序(固化在ROM中),就构成了一台单板微型计算机(简称单板机),如图21所示。图2-1单片机控制方案2.2 51单片机介绍80C51是MCS-51系列中的一个典型品种;其它厂商以8051为基核开发出的CMOS工艺单片机产品统称为80C51系列。当前常用的80C51系列单片机主要产品有:Intel的:80C31、80C51、87C51,80C32、80C52、87C52等;ATMEL的:89C51、89C52、89C2051等;Philips、华邦、Dallas 、STC Siemens(Infineon)等公司的许多产品 。2.3 80C51的引脚封装80C51单片机的封装方式分为总线型和非总线型两种,如图23所示:P3第二功能各引脚功能定义:P3.0:RXD串行口输入P3.1:TXD串行口输出P3.2:INT0外部中断0输入P3.3:INT1外部中断1输入P3.4:T0定时器0外部输入P3.5:T1定时器1外部输入P3.6:WR外部写控制P3.7:RD外部读控制图2-3引脚封装第三章 电子密码锁硬件设计3.1电子密码锁的构成系统主要由电路板一块,它包括电源,电阻,电容,开关,复位开关,发光二极管,AT89S51单片机一片,扬声器,四合一七段数码管,LM386NI(8),石英晶体振荡器等元件,可以分为电源电路,复位控制电路,晶体振荡电路,报警控制电路,矩阵键盘控制电路,数码管显示电路,灯光指示电路。3.1.2工作原理(1)密码锁控制器中存储一个4位代码,当开锁按钮开关设置9位,其中只有4位有效)的输入代码等于存储代码时启动开锁控制电路,并且用发光二极管亮一秒钟做为提示,同时发出“叮咚”声,作为正确提示。(2)用8位数码管组成显示电路提示信息(3)由AT8 9S51单片机当输入密码时,只显示“8.”,当密码位数输入完毕按下确认键时,对输入的密码与设定的密码进行比较,若密码正确,则门开(4)AT89S51通过程序设置各个信号灯,若密码不正确,禁止按键输入3秒,同时发出“嘀、嘀”报警声。(5)若在3秒之内仍有按键按下,则禁止按键输入3秒被重新禁止(6)要求性能可靠、操作简便。3.1.3总框架图:89S51单片机矩阵键盘控制复位控制电路报警控制电路电源电路晶体振荡电路灯光指示电路数码管显示电路图3-1单片机控制方案3.1.3整个电路原理图如图313所示:图3-1-3总体原理图3.1.4系统板上硬件连线 (1)把“单片机系统”区域中的P0.0P0.7用8芯排线连接到“动态数码显示”区域中的ABCDEFGH端子上。 (2)把“单片机系统“区域中的P2.0P2.7用8芯排线连接到“动态数码显示”区域中的S1S2S3S4S5S6S7S8端子上。 (3)把“单片机系统”区域中的P3.0P3.7用8芯排线连接到“44行列式键盘”区域中的R1R2R3R4C1C2C3C4端子上。 (4)把“单片机系统”区域中的P1.0用导线连接到“八路发光二极管模块”区域中的L2端子上。 (5)把“单片机系统”区域中的P1.7用导线连接到“音频放大模块”区域中的SPK IN端子上。 (6)把“音频放大模块”区域中的SPK OUT接到喇叭上。3.2各单元电路介绍系统主要可以分为电源电路,89C51单片机,复位控制电路,晶体振荡电路,报警控制电路,矩阵键盘控制电路,数码管显示电路,灯光指示电路。3.2.1数码管显示部分第0段第1段第2段第3段第4段第6段第5段七段LED数码显示器如下图所示:图3-2七段数码管七段LED显示器由7个发光二极管组成,其中7个长条形的发光管排列成“日”字形,如上图所示,由七个发光二极管组成的七段显示器。如再加一个贺点形的发光管在显示器的右下角作为显示小数点用,则组成八段LED显示器。它能显示各种数字及部份英文字母。LED显示器有两种不同的形式:一种是8个发光二极管的阳极都连在一起的,称之为共阳LED显示器;另一种是8个发光二极管的阴极都连在一起的,称之为共阴LED显示器。如下图3-3-1所示:共阴和共阳结构的LED显示器各笔划段名和安排位置是相同的。当二极管导通时,相应的笔划段发亮,由发亮的笔划段组合而显示的各种字符。8个笔划段hgfedcba对应于一个字节(8位)的D7 D6 D5 D4 D3 D2 D1 D0,于是用8位二进制码就可以表示欲显示字图3-2-1 LED数码管符的字形代码。在单片机系统中,通常用LED数码显示器来显示各种数字或符号。由于它具有显示清晰、亮度高、使用电压低、寿命长的特点,因此使用非常广泛。3.2.2复位电路大规模集成电路在上电使一般都需要进行一次复位操作,以使芯片内的一些处于一个确定的初始状态,复位是一种很重要的操作。器件本身一般不具有上电复位能力,需要借助外部复位电路提供的复位信号才能进行复位操作。我们采用的的是是上电复位和按键复位组合电路,电路见图3-2-2所示,上电复位电路由10uf电容和10k电阻串联构成,当按下复位按键瞬间,由于电容两端电压不能突变,RST引脚电压为VCC,随着对电容的充电,电容器的电压不断上升,RST引脚的电压呈指数规律下降,到了一个时刻RST引脚电压下降,RST脚只要保持10cm以上的高电平,系统就会有效复位。电容C可取1033uf,电阻可取1.210K,在系统设计中C取10uf,R取10k,充电时间常数为。图3-2-2复位开关电路3.2.3晶体振荡电路电路见图3-2-3所示,XTAL1脚和XTAL2脚分别构成片内振荡的反相放大器的输入和输出端,外接石英晶体或陶瓷振荡器以及补偿电容C1,C2构成并联谐振电路。当外接石英晶体时,电容选;当外接陶瓷振荡器时,电容C1,C2选。AT89S51系统中晶振可在024MHz选择。外接电容C1,C2的大小会影响振荡频率的高低,振荡频率的稳定度,起振时间及温度稳定性。在设计电路板时,晶振和电容应靠近单片机芯片,以便减少寄生电容,保证振荡器稳定可靠工作。在系统设计中,为了保证串行通信波特率的误差,选择了12MKz的标准石英晶振,电容C1,C2为30pf。图3-2-3内部振荡电路3.2.4键盘部份由于设计要求使用矩阵键盘,所以本设计就采用行列式键盘,同时也能减少键盘与单片机接口时所占用的I/O线的数目,在按键比较多的时候,通常采用这样方法。其原理如图4所示:图3-2-4 按键电路图每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要4条行线和4条列线,即可组成具有44个按键的键盘。在这种行列式矩阵键盘非键盘编码的单片机系统中,键盘处理程序首先执行等待按键并确认有无按键按下的程序段。按键的操作如下图5所示:图5 按键键盘共计数字键10个,功能键6个,用44组成09数字键、确认键F及修改键C,10个数字键用来输入密码,另外6个功能键分别是:A、B、C、D、E、F。其中C键的功能是当输入密码错误的时候,清除前面已经输入的数据,重新输入。F键的功能是确认输入的密码。3.2.5报警电路报警电路主要由LM386芯片和8欧的喇叭等组成,原理图如图325所示。扬声器发出声音,只需要随着声音变化而变化交流即可。直流信号对于扬声器发出声音没有任何帮助,反而会增大扬声器的负担。为此,需要让交流信号顺利通过,而阻止直流流过的一种装置,那就是电容。交流信号(声音信号)通过电容的充放电传递到电容的另外一侧。电容有“隔直通交”的特性。 图3-2.5 报警电路原理图第四章 电子密码锁软件设计4.1软件设计本设计中,采用自顶向下的层次化结构设计方法,把整个系统划分为几个子模块,最后完成顶层电路的设计。子模块可分为:时钟模块、显示子模块、键盘子模块、语音子模块、LED显示模块。当各个功能子模块设计完毕,顶层模块的设计就变得简单了,就是将各个子模块连接起来,其电路模型如图主电路所示。图3-1电路模型图4.2单片机的程序调试使用菜单“File-New”新建文件,即可在项目窗口的右侧打开一个新的文本编辑窗口。可以在该窗口中输入源程序。源程序文件就是一般的文本文件。虽然源程序文件可以使用任意文本编辑器编写,不一定非使用Keil软件编写不可,但是如果使用Keil的编辑窗进行编写,并根据文件是C语言还是汇编语言而对应发将其保存为.c或.ASM文件,则在编辑窗口中,可以自动地根据源程序文件中的具体内容显示出不同的字体和颜色。下面我们按照步骤建立一个C51项目并输入一个简单的C51程序。(1)单击菜单条上的“File”,选择“New”中的“uSion Project”,选择Atmel的AT89C52,然后保存为文件为ex1.uv2,以后我们可以直接单击此文件以打开先前做的项目。(2)通过菜单“FileNew”来建立一个新的C51源程序,并将其保存成ex1.c。(3)用鼠标右键单击左边项目管理器窗口中的Source Group 1,然后选择Add File to groupSource Group 1,将ex1.c文件加入项目中。(4)双击项目管理器的ex1.c文件名,打开这个文件,此时,光标已出现在文本编辑窗口中,等我们输入程序。(5)从Project菜单中 Build target,编译ex1项目,如果编译正确会出现出下提示:图3-2-1模型图 (6)然后进入调试状态,“Debugstart”,如下图所示图3-2-2(7)从Debug菜单中,选择Run,便可仿真运行程序。为了观察程序运行的结果,我们可以打开串口输出字符的程序,只要选择菜单“ViewSerial Window #1”,便可以打开串口输出窗口。当程序正确运行时,在这个窗口上将打印出相应的文字。(9)为了能够将编译后产生的机器码写入单片机的程序存储器中,必须kEil产生生成Intel格式的十六进制文件。可以用鼠标的右键单击项目管理窗口中的target 1,在弹出菜单中选择第一项“options for target target 1”,在出现Options for target target 1,窗口后选择Output页,在Creat HEX File选项前打勾,这样编译后就会产生十六进制文件编程器通过此文件对韸机进行编程。4.3软件的运行步骤整个软件实现的步骤:第一步由软件设计确定好选用什么部件,第二步对各个部件进行编程定义,第三步完成程序的编程,第四步对程序进行调试,在调试中发现程序出现了很多的错误,对照原理图看各个部件的作用重新赋值,直到找出程序中的错误,第五步当程序正确进行实物运行。当软件程序烧写到AT89S52单片机中,对实物接通5V的电源,观察运行的效果,首先按下RST复位按钮,然后在键盘上进行输入密码操作,当输入的密码是正确的灯闪亮一下,并且发出叮咚的声音,当密码不正确灯闪亮4下,并伴有报警声嘀嘀嘀声,流程如图33所示。图3-3 总流程图4.4程序见附录一第五章 调试与实践5.1硬件的焊接5.1.1底座的焊接我的电路板有两个底座,一个是单片机AT89S51的,另一个是数码显示管的。我们用的是40脚的双排直插式的,在焊接时,要先把底座插到电路板上再进行焊接,底座各脚的焊点要小,以免各脚之间导通,还不能形成虚焊,虚焊会导致电路不通,底座要焊接牢固,不能和电路板距离太远,以免导致虚焊。底座还要放在公共线的两边,因为那两条线是火线和地线。焊接好后要对照电路仔细检查,再用万用表检测,看焊接是否良好。5.1.2按键的焊接我的电路中用到了5个按键,一个复位键、十六个置数键,还有我自己加的一个计数控制键。我所用的按键是普通的断开按键,有4个脚,两边各两个,其中每边的两个脚是导通的,在焊接的时候要特别注意,我就是不小心,把相连的两个脚焊接当成不连的脚用来作开关,结果按键按下后不起作用。所以在焊接前一定要用万用表测出那两个脚是导通的,焊接完后再检测,看焊接是否良好。5.1.3时钟电路的焊接我们的电路中时钟电路包括一个晶震,两个电容。晶震是12M的,电容是普通电容,焊接前要刮腿,以免接触不好。晶震和电容要尽量靠近芯片,这样有利于时钟电路的稳定,减少干扰。焊接好后要用万用表检测。5.1.4导线的焊接导线的焊接比较麻烦。因为导线比较多,就要先对导线进行布局,找好于元器件相对的管脚,焊接前先要检测导线是否导通。焊接完成后要检测是不是连接良好。5.1.5电路板的检测和故障排除电路板完成后要进行全面检。5.1.6火线和底线的检测检测单片机底座的Vcc(40脚)是否与火线相连,检测数码管的功用端是否与火线连接,手动复位开关是否连接上火线。地线检查:其他按键接地是否良好,时钟电路接地端的检测,单片机GND端(20脚)是否接地。检查完后再用万用表检查火线和地线是否导通。5.1.7元器件之间的连接的检查参照电路图,用万用表仔细检查各个元器件连接是否良好,是否对应。5.2硬件的调试机器故障排除硬件的调试在上电后的工作是不是正常,主要包括不插单片机的调试和插上单片机的检测。无单片机的调试无单片机调试主要检查电路工作是否正常,调试数码管是否点亮,显示数据是否正确,具体步骤如下:A:打开电源,将输出电压调到5伏,然后关闭电源。B:将电路板的火线与电源正极相连,地线与负极相连。C:打开电源,用万用表检测电路板是否有输出电压,如果有就是好的,没有就要检测是否有短路。D:电路检查完后,关闭电源,用一根导线与电源负极相连,然后打开电源,用导线的另一端逐个与P0、P2口的管脚接触,看数码管显示是否正确。调试过程中遇到的问题及解决办法:1一开始喇叭不响,经过检查电路发现原来喇叭有一端焊接没有焊好,导致接触不良。2调试中发现四联七段式的LED显示管不够亮,后来请教老师原因,经过老师的指导我们在原来的基础上接了8个1K的电阻,外加5V的电源,再调试时发现四联七段式的LED显示管已经足够亮了。3在调试中发现按键时,四联七段式的LED显示管老是清零。检查电路又没有错误,后来发现原来接入5V电源线没有接好,在按键时板子动导致接触不良。第6章 结论本系统充分利用了AT89S51系统单片机软、硬件资源,引入了智能化分析功能,提高了系统的可靠性和安全性。该系统主要有以下几点优点:利用单片机去控制硬件电路,打破传统的专用硬件的形式,使电路更加灵活,更加快捷.其重复概率仅为十万分之一,有着很高的安全性 电子密码锁采用单片机作为核心的控制元件具有功能强、性能可靠、电路简单、成本低等特点。智能密码锁它成功的实现了密码的输入识别和修改、报警、信息显示等功能。另外,智能密码锁在软、硬件方面稍加改动,便可构成智能化的分布式监控网络,实现某一范围内的集中式监控管理,在金融、保险、军事重地及其它安全防范领域具有广泛的应用前景。因此电子密码锁凭借自身的优势,它将会越来越广泛的受到社会的欢迎、接受。但是电子密码锁还具有自身的缺点:电子锁必须完成机械动作(操作)电子识别转换和电子控制机械执行这一系列过程,显然是复杂一些。二是故障概率相对较高,电子器件一多,一复杂化。必然增加故障机率,加上电子器件怕潮湿,怕强磁电,怕强震动,使它对使用环境有一定要求。绝大部分电子密码锁都增加了备用开锁手段或称应急接口,无疑又降低了安全性。由于采用键盘式密码输入很可能被他人窥探、盗用。所以在设计键盘时必须防他人窥探和试探等外围设本。 尽管电子锁有以上还待解决问题,但它的大密码量和不用钥匙的优点以及众多的识别方式却有极大的诱惑力。它将在以后的发展中被广泛应用。 参考文献1 余永权. ATMEL89系列(MCS-51兼容)FLASH单片机原理及应用. 2 台方. 微型计算机控制技术. 中国水利水电出版社. 20013 胡汉才. 单片机原理及其接口技术. 清华大学出版社.1996年4 赵新民. 智能仪器设计基础. 哈尔滨工业大学出版社. 1999年5 潘新民王燕芳. 微型计算机控制技术. 电子工业出版社. 2003年6 李钟实. 实用电子报警器精选百例. 北京:科学技术文献出版社.2002(4)7 陈爱第. Protel99实用培训教程. 人民邮电出版社. 20008 阎石. 数字电子技术基础. 高等教育出版社. 1998(2)附录一:程序清单28#include unsigned char ps=1,2,3,4,5; /密码unsigned char code dispbit=0xfe,0xfd,0xfb,0xf7, 0xef,0xdf,0xbf,0x7f; /位选unsigned char code dispcode=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f, 0x77,0x7c,0x39,0x5e,0x79,0x71, 0x00,0x40,0x73,0xff; /段选unsigned char dispbuf8=18,16,16,16,16,16,16,16; /选择是无显示还是Punsigned char dispcount; unsigned char flashcount; unsigned char temp; unsigned char key; unsigned char keycount; unsigned char pslen=5; unsigned char getps6; bit keyoverflag; bit errorflag; bit rightflag; unsigned int second3; unsigned int aa,bb; unsigned int cc; bit okflag; bit alarmflag; bit hibitflag; unsigned char oka,okb; void main(void) unsigned char i,j;/*中断定时器初值,开始*/ TMOD=0x01; TH0=(65536-500)/256; /定时5ms TL0=(65536-500)%256; /定时5ms TR0=1; ET0=1; EA=1; /*中断定时器初值,结束*/ /*大循环*/ while(1) P3=0xff; /把P3给高电平,准备读取状态,注意P1.1P3.7要作输入的时候需要写给端口写1 P3_4=0; /按键检测 temp=P3; temp=temp & 0x0f; if (temp!=0x0f) for(i=10;i0;i-) for(j=248;j0;j-); /延时 temp=P3; temp=temp & 0x0f; if (temp!=0x0f)/如果有键按下 temp=P3; temp=temp & 0x0f; switch(temp) case 0x0e: key=7; break; case 0x0d: key=8; break; case 0x0b: key=9; break; case 0x07: key=10; break; temp=P3; P1_1=P1_1; if(key=0) & (key10) if(keycount6) keycount=6; keyoverflag=1;/key overflow输入密码长度超过 else if(key=12)/delete key if(keycount0) keycount-; getpskeycount=0; /最近1次数入的数清0 dispbufkeycount+2=16; else keyoverflag=1; /未输入密码,按到功能键,报错!嘀一声。 else if(key=15)/enter key if(keycount!=pslen) errorflag=1; rightflag=0; second3=0; else for(i=0;i0;i-) for(j=248;j0;j-); temp=P3; temp=temp & 0x0f; if (temp!=0x0f) temp=P3; temp=temp & 0x0f; switch(temp) case 0x0e: key=4; break; case 0x0d: key=5; break; case 0x0b: key=6; break; case 0x07: key=11; break; temp=P3; P1_1=P1_1; if(key=0) & (key10) if(keycount6) keycount=6; keyoverflag=1;/key overflow else if(key=12)/delete key if(keycount0) keycount-; getpskeycount=0; dispbufkeycount+2=16; else keyoverflag=

温馨提示

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

评论

0/150

提交评论