基于单片机的数字密码锁设计设计86975688

上传人:痛*** 文档编号:131327126 上传时间:2022-08-06 格式:DOC 页数:43 大小:2.61MB
收藏 版权申诉 举报 下载
基于单片机的数字密码锁设计设计86975688_第1页
第1页 / 共43页
基于单片机的数字密码锁设计设计86975688_第2页
第2页 / 共43页
基于单片机的数字密码锁设计设计86975688_第3页
第3页 / 共43页
资源描述:

《基于单片机的数字密码锁设计设计86975688》由会员分享,可在线阅读,更多相关《基于单片机的数字密码锁设计设计86975688(43页珍藏版)》请在装配图网上搜索。

1、 毕业设计论文题目 基于单片机的数字密码锁设计 基于单片机的数字密码锁摘要随着我们生活水平的提高,电子数字密码锁慢慢取代了一般的锁具,电子密码锁在安全性能上比一般锁具更好,一般的机械锁其机构非常的简朴,从而在安全性能方面得不到保障,电子密码锁使得我们在安全保障方面更有自信,并且电子密码锁尚有不用钥匙、无锁孔、无机械传动、不易损坏、不磨损等长处,诸多顾客都想简朴出门,电子密码锁就能满足她们。本次设计的系统由单片机系统、矩阵键盘、显示电路和报警提示系统构成,系统能完毕开锁、密码保护、密码对的与否的提示。单片机是采用的美国Atmel公司的单片机AT89C52;矩阵键盘采用44矩阵键盘;显示电路重要是

2、采用液晶显示,具有设计简朴、工作电压低、响应速度快、价格低廉等特点;报警系统采用的是LED批示灯。设计采用C语言作为主片控制程序,因其具有措施合理、简朴易行、成本低、实用等特点。核心词AT89S51单片机;LCD1602;电子密码锁;44矩阵键盘The No. three soft landing trajectory design and control strategyLi Suxi(Grade11, Class1102, Electronic Information Science and Technology, School of Physics and Telecommunicati

3、on Engineering, Shaanxi University of Technology, Hanzhong 723000, Shaanxi)Tutor: Zhou Pinghe Abstract:With the improvement of our living standards, the electronic digital lock slowly replaces the ordinary mechanical lock, the electronic password lock is better than the ordinary mechanical lock on t

4、he safety factor, the institution of ordinary mechanical lock is very simple, so that it can not guarantee the safety, and electronic lock makes us more confidence on safety, and the electronic lock has an advantage that without a key, keyhole, mechanical transmission, which is difficult to damage,

5、wearing, and can not easily be deciphered, Many users want to go out simple, the electronic lock can meet their needs. The system consists of MCU system, matrix keyboard, the showing of circuit and alarm system components. password-protected and the showing of password whether it is correct or not.

6、The design uses the C language as the main chips control procedures, which is proved that the design of rational design method is simple, safe and practical. Key words:MCU AT89S51; LCD1602; Electronic lock; 4x4 Matrix keyboard目录引言11数字密码锁功能规定12总体方案12.1方案选择22.2方案实现22.3方案构造框图23硬件电路的设计33.1单片机及单片机最小系统33.

7、2键盘电路53.2.1键盘接口53.2.2键盘的辨认方式63.2.3按键去抖动63.2.444行列式键盘电路63.3LCD1602显示电路63.3.1LCD1602的简介63.3.2LCD1602显示的外围电路83.4报警提示电路83.5电源输入及电源批示电路94软件设计104.1软件设计思路104.2软件设计的流程图105系统调试125.1基于单片机的数字密码锁硬件调试135.2基于单片机数字密码锁的软件调试135.3基于单片机数字密码锁的总体调试135.3.1Proteus仿真调试135.3.2软硬联合调试146结论与展望14道谢14参照文献15附录A16附录B23附录C24引言在我们平常

8、的生活和工作中,安全防盗已成为社会不可避免的问题。目前的顾客都追求具有简洁以便、高安全,易操作等特点的安全锁。因此电子数字密码锁是我们生活中不可少的一部分了,数字密码锁的发展标志着我们生活水平的提高。随着社会经济的日益增长和人们生活水平的提高,安全成为当下人们最关怀的问题之一。而锁自古以来就是扼守门的铁将军,人们对它规定甚高,即规定可靠地防盗,又要使用以便,这也是制锁者长期以来研制的主题。老式的门锁既要备有大量的钥匙,以及承受钥匙丢失后的麻烦和风险。此外,如:宾馆、办公大楼、仓库、保险柜等,由于装修施工等因素人住时也要把原有的锁胆更换,况且钥匙随身携带也诸多便。随着单片机的问世,浮现了带微解决

9、器的密码锁,它除具有电子密码锁的功能外,还引入了智能化、科技化等功能。目前西方发达国家已经大量应用智能门禁系统,可以通过多种的更加安全更加以便可靠的措施来实现大门的管理。但电子密码锁在国内的应用还不广泛,成本还很高,但愿通过不断地努力使电子密码锁可以在国内及居民平常生活中得到广泛应用,这也是一种国家生活水平的一种体现。数字密码锁是通过密码输入来控制电路,从而控制机械的闭合,完毕开锁和关锁的基本操作的电子产品,它的种类比较多,而本次设计就是基于单片机控制的数字密码锁,它的设计以单片机为核心,通过编程来实现,它负责获取解决顾客输入的密码,将其和对的的预置密码比较,产生相应的输出,其性能得到了改善。

10、基于单片机控制的数字密码锁与一般机械锁相比,其具有保密性好、密码可变、寿命长,不用钥匙、无锁孔、无机械传动、不易损坏、不磨损、不易被破译等长处,数字密码锁是运用数字密码来启动的锁具,其反复概率仅为十万分之一,具有很高的安全性;而一般机械锁使用却相对不够安全,通过对社会各阶层千余人的调查,百分之百的人都乐意一身轻松没有任何顾虑的出入家门,都乐意用上一种锁具可使人挣脱钥匙的束缚。因此,设计数字密码锁的市场发展前景极为广阔。1 数字密码锁功能规定本次设计的数字密码锁有密码的输入、有密码的修改功能,并且密码是八位,在输入密码的过程中有显示提示,让顾客更好的操作密码锁,而在密码输入对的与否(锁的开否)也

11、需要显示提示,本次设计的时候没有把机械部分设计出来,因此引用了红绿灯的显示(报警提示),来代表机械部分的,即表达锁的开闭状态。本次设计实现功能规定如下:1) 加电后,液晶显示英文“Enter Password!”来欢迎顾客。2) 输入密码时,逐位显示“*”,本次设计的密码为八位,因此为“*”,以避免泄露密码,这样让顾客用的放心。3) 输入密码过程中,如果不小心浮现了输入错误,可按“复位”键清除屏幕,取消本次输入,再次输入需要重新输入所有密码。4) 当密码输入完毕时,单片机将输入的密码与设定的密码比较,若密码对的,则绿色发光二极管亮(表达密码锁打开),并且显示屏上也有所提示“Password i

12、s right!”蜂鸣器报警一秒;若密码不对的,显示屏上同样显示“Password is wrong!”,并且有密码输入错误时,报警三秒,顾客可以重新输入,但是一次性有三次输入密码的机会,若是一次性输入了三次错误密码,则报警五秒钟,期间顾客就不能再输入密码了,只能等到复位后再重新输入。5) 本次设计的数字密码锁密码可以修改,当输入对的的密码后,你可以根据自己的需要对已设的密码进行修改,修改成功后,有两秒提示音。6) 本次设计的数字密码锁的初始密码为八位密码“11111111”。2 总体方案2.1 方案选择设计本次毕业设计之前构思了两种方案:一种是用以74LS112双JK触发器构成的数字逻辑电路

13、控制方案;另一种是用以单片机为核心的电子密码锁。第一种方案应用数字电子技术的编、译码技术,并通过按键实现密码的设立、修改及辨认功能,在设计的时候考虑到第一种方案需用到较多集成芯片,电路焊接起来很复杂;密码采用脉冲输入法,故对输入脉冲有很高规定,并且密码输入及修改正程也比较繁杂。而第二种方案是采用集成芯片单片机尚有其她集成芯片来控制整个电路,灵活精确性好且保密性强还具有扩展功能,并且焊接起来很简朴,因此采用了后一种方案,即单片机控制的数字密码锁设计。2.2 方案实现本次设计的基于单片机的数字密码锁,它重要由单片机、矩阵键盘、液晶显示和报警提示等部分构成。单片机作为本设计的核心元件,运用单片机灵活

14、的编程设计和丰富的I/O端口,及其控制的精确性,实现基本的密码锁功能,其原理图如图2.1所示。矩阵键盘用于输入数字密码和进行多种功能的实现,重要有数字输入按键、确认按键、密码修改按键等,顾客可以通过连接单片机的矩阵键盘输入密码,液晶显示屏提示某些输入,让顾客更以便的操作电子密码锁锁,当你输入的密码位数达到所需要输入的密码位数后,单片机对顾客输入的密码与自己内部设立保存的密码进行对比,从而判断密码与否对的,液晶显示屏提示你输入的密码与否错误,然后控制其她引脚的高下电平送到报警提示电路控制报警提示(红绿发光二极管显示),表达锁的开或者闭合,而在实际使用时只要将单片机的负载换成电子密码锁的电磁铁吸合

15、线圈即可。密码输入单片机控制修改密码密码解决锁开是否图2.1 单片机控制密码锁的原理图2.3 方案构造框图基于单片机控制的数字密码锁结总构框图如图2.2所示,框图由电源输入,晶振电路,单片机控制系统,键盘电路,显示电路,报警提示电路构成。电源为单片机控制器和其她芯片提供工作电源,本次设计的时候引用直流电源,但在实际应用到生活中去的时候需要通过交流电源转变为直流电源(降压、整流、滤波等过程),并且需要加个备用电源,避免停电或者其她故障而导致无法供电的时候的备用电源。单片机控制系统涉及晶振电路和复位电路。 单片机电源输入键盘电路报警批示开锁电路晶振电路显示电路图2.2 基于单片机控制的数字密码锁总

16、构造框图3 硬件电路的设计3.1 单片机及单片机最小系统单片机选用常用的Atmel公司的51系列单片机AT89C52。AT89C52是Atmel公司生产的低电压、高性能CMOS8位单片机,AT89C52采用24MHZ或更高频率晶振,以获得较高的刷新频率,时期显示更稳定,单片机AT89C52引脚如图3.1所示。图3.1 单片机AT89C52引脚 P0口是双向8位三态I/O口,此口为地址总线(低8位)及数据总线分时复用口,可驱动8个LS型TTL负载;P1口是8位准双向I/O口,可驱动4个LS型TTL负载;P2口是8位准双向I/O口,与地址总线(高8位)复用,可驱动4个LS型TTL负载;P3口是8位

17、准双向I/O口,双功能复用口,可驱动4个LS型TTL负载,并且P3口具有特殊功能。P1口:P1口是一种内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接受输出4TTL门电流。P1口管脚写入“1”后,电位被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。P1口有8路10位高速A/D转换器,速度可达到250KHz(25万次/秒)。8路电压输入型A/D,可做温度检测、电池电压检测、按键扫描、频谱检测等。上电复位后P1口为弱上拉型IO口,顾客可以通过软件设立将8路中的任何一路设立为A/D转换,不须作为A/D使用的口可继续作为IO口使用。 在FLASH编程和校

18、验时,P1口作为第八位地址接受;P2口:P2口为一种内部上拉电阻的8位双向I/O口,P2口缓冲器可接受,输出4个TTL门电流,当P2口被写“1”时,其管脚电位被内部上拉电阻拉高,且作为输入。作为输入时,P2口的管脚电位被外部拉低,将输出电流,这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它运用内部上拉的优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接受高八位地址信号和控制信号;P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接受输出4个TT

19、L门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入时,由于外部下拉为低电平,P3口将输出电流(ILL),也是由于上拉的缘故。P3口也可作为AT89C51的某些特殊功能口: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 (外部数据存储器读选通)同步P3口同步为闪烁编程和编程校验接受某些控制信号;RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高平时间;AL

20、E / PROG :当访问外部存储器时,地址锁存容许的输出电平用于锁存地址的低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定期目的。然而要注意的是:每当用作外部数据存储器时,将跳过一种ALE脉冲。如想严禁ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令时ALE才起作用。此外,该引脚被略微拉高。如果微解决器在外部执行状态ALE严禁,置位无效;PSEN:外部程序存储器的选通信号。在由外部程序存储器取址期间,每个机器周期PSEN两次有效。但在访

21、问内部部数据存储器时,这两次有效的PSEN信号将不浮现;EA/VPP:当EA保持低电平时,访问外部ROM;注意加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,访问内部ROM。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP);XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入;XTAL2:来自反向振荡器的输出;EA/VPP(31引脚):“EA”为英文“External Access”的缩写,表达存取外部程序代码之意,低电平动作,也就是说当此引脚接低电平后,系统会取用外部的程序代码(存于外部EPROM中)来执行程序。因此在8031及8032中,EA引脚必须接低电

22、平,由于其内部无程序存储器空间。单片机最小系统如图3.2所示,其中由复位电路和晶振震荡电路构成。复位电路:单片机上电时,当振荡器正在运营时,只要持续给出RST引脚两个机器周期的高电平,便可完毕系统复位。外部复位电路是为内部复位电路提供两个机器周期以上的高电平而设计的。其中复位电路一般有上电自动复位和按钮复位两种模式,本次采用的是按键手动复位并是电平复位方式,其中电平复位时通过RST端经电阻与电源VCC接通而实现的,电源VCC取+5V,复位电路的电阻取的10k,电容取的10uF。晶振振荡电路:XTAL1脚和XTAL2脚分别构成片内振荡器的反相放大器的输入端和输出端,外接石英晶体或陶瓷振荡器以及补

23、偿电容C1、C2构成并联振荡电路。当外界石英晶体时,电容C1、C2选30pF10pF;当外接陶瓷振荡器时,电容C1、C2选47pF10pF.AT89C52系统中晶振可在024MHz选择。外接电容C1、C2的大小会影响振荡器的高下、振荡频率的稳定度、起振时间及温度稳定性。在设计电路板时晶振和电容应接近单片机芯片,以便减少寄生电容,保证振荡器稳定可靠的工作,并且在系统设计中,为保证串行通信波特率的误差,选择11.0592MHz的原则石英晶振,电容应C1、C2应选择20pF。本次设计采用的是12MHz的晶振。单片机最小系统如图3.2所示,其中由复位电路和晶振震荡电路构成。图3.2 单片机最小系统图3

24、.2 键盘电路3.2.1 键盘接口常用的键盘接口分为独立键盘和行列式键盘两种。独立键盘就是按键互相独立,每个按键各接一根输入线,通过检测输入线的电平状态可以很容易的判断哪个按键被按下。在按键数目较多的时候,独立式键盘电路需要较多的输入口线且电路构造繁杂,此种键盘合用于按键较少或操作速度较高的场合。行列式(也称矩阵式)键盘用于按键数目较多的场合,它由行线和列线构成的按键电路,其按键位于行、列的交叉点上,如图3.3所示,一种44的行、列式构造可以构成1个16个键的键盘,很明显节省了诸多的I/O口线。矩阵式键盘的扫描原理重要是分为两个环节:一方面是拟定与否有键闭合,然后逐个扫描以步拟定哪一键闭合。图

25、3.3键盘电路3.2.2 键盘的辨认方式键盘上的键按行列构成矩阵,在行列的交点上都相应有一种键。为鉴定有无键按下(闭合键)以及被按键的位置,可使用这种措施:扫描法(常用)。扫描法就是一方面是鉴定有无键被按下,键盘的行线一端经上拉电阻接+5V电源,另一端接单片机的输入口线。各列线的一端接单片机的输出口线,另一端悬空。为鉴定有无键被按下,可先经输出口向所有列线输出低电平,然后再输入各行线状态。若行线状态中有低电平,则表达有键被按下。然后再鉴定被按键的位置。3.2.3 按键去抖动当扫描表白有键被按下之后,紧接着应进行去抖动解决。由于常用键盘的键事实上就是一种机械开关构造,被按下时,由于机械接触点的弹

26、性及电压突跳等因素,在触点闭合或断开的瞬间会浮现电压抖动,如图3.4所示。抖动时间长短与键的机械特性有关,一般为510ms。而键的稳定的闭合时间和操作者按键动作有关,大概为十分之几到几秒不等。键按下前沿抖动后沿抖动x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0图3.4键闭合和断开时的电压抖动3.2.4 44行列式键盘电路本次设计为44行列式键盘,由16个按键构成的行列式键盘,重要作为顾客输入数字密码及确认、取消、修改等功能键,本次设计按键扫描措施采用的是扫描法。44行列式键盘电路如

27、图4.4所示,把芯片AT89C52中的P1.0P1.3端口用4个10K的上拉电阻连接到44行列式键盘的行线上,把芯片AT89C52中的P1.4P1.7端口直接连接44行列式键盘的列线。(上拉电阻的作用,就是把电位拉高,例如拉到VCC。一般就是刚上电的时候,端口电压不稳定,为了让端口稳定为高,就会用到上拉电阻。)3.3 LCD1602显示电路3.3.1 LCD1602的简介LCD1602是一种专门用来显示字母、数字、符号等的点阵型的液晶模块,它由若干个57或者511等点阵字符位构成,每个点阵字符都可以显示一种字符,每位之间有一种点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用。LCD1

28、602是指显示的内容为162,可以显示两行,每行16个字符的液晶模块,目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相似的,因此基于HD44780写的控制程序可以很以便地应用于市面上大部分的字符型液晶,本次设计引用LCD1602,是由于它具有微功耗、体积小、显示内容丰富、超薄轻巧,常用在袖珍式仪表和低功耗应用系统中。LCD1602的引脚如图3-6所示,LCD1602有16个引脚。图3.5 LCD1602的引脚LCD1602的引脚简介:第1引脚为:VSS为电源地 第2脚:VDD接5V电源正极 第3脚:V0为液晶显示屏对比度调节端,接正电源时对比度最弱,接地电源时对比度最

29、高(对比度过高时会产生“鬼影”,使用时可以通过一种10K的电位器调节对比度)。第4脚:RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。第6脚:E(或EN)端为使能(enable)端。第714脚:D0D7为8位双向数据端。第1516脚:空脚或背光电源脚。15脚背光正极,16脚背光负极。LCD1602的基本操作时序为:读状态:RS=L,RW=H,E=H 输出:D0D7=状态字写指令:RS=L,RW= L,D0D7=指令码,E=高脉冲 输出:无读数据:RS= H,RW=H,E=H 输出:D0D7=数据写数据:RS

30、= H,RW= L,D0D7=数据,E=高脉冲 输出:无LCD1602的显示模式设立如表3.1所示:表3.1显示模式设立指令码功能00111000设立1602*2显示,5*7点阵,8位数据口。LCD1602的显示开/关机光标设立如表3.2所示:表3.2 开关机光标设立指令码功能00001DCBD=1 开显示,D=0 关显示;C=1 显示光标,C=0 不显示光标;B=1 光标闪烁,B=0 光标不显示。000001NSN=1 当读或写一种字符后地址指针加一,且光标加一;N=0当读或写一种字符后地址指针减一,且光标减一;S=1 当写一种字符,整屏显示左移(N=1)。3.3.2 LCD1602显示的外

31、围电路LCD1602显示电路由单片机C52的P2.5、P2.6、P2.7分别于LCD的第4、5、6脚(RS、RW、E)相连,将单片机C52的P0.0P0.7口通过10K的上拉电阻分别与LCD的第714脚(D0D7)相连来构成数字密码锁的显示电路。LCD1602显示电路如图4.2所示。图3.6 LCD1602显示电路3.4 报警提示电路LED批示灯用来提示模拟锁的开闭,本次设计采用了红、绿两个LED批示灯,红灯表达输入密码对的告警(及数字密码锁开锁),绿灯表达输入密码错误,锁未打开。报警提示电路如图3.7所示,P3.0、P3.1作一般I/O口使用,P3.0控制绿色发光二极管,批示密码输入对的状态

32、;P3.1控制红色发光二极管,批示密码输入错误状态。而在实际应用中应当接密码锁的机械部分,这些引脚将会接继电器线圈,只要在线圈两端加上一定的电压,线圈中就会流过一定的电流,从而产生电磁效应,衔铁就会在电磁力吸引的作用下克服返回弹簧的拉力吸向铁芯,从而带动衔铁的动触点与静触点(常开触点)吸合用来启动密码锁的开或关的状态,本次设计用红绿批示灯来替代了机械部分,设计简化了。其电路图如图3.7所示。图3.7 报警电路3.5 电源输入及电源批示电路基于单片机控制的数字密码锁的工作需要+5V的电压作为输入电压,家用电一般都是采用220V、50Hz的交流电,因此需要将交流电转换成直流电,先通过一种整流电路,

33、使交流电压变成直流电压。为了保证其输出的电压是+5V,在背面接一种稳压电路,由一种7805稳压器,其中电容C1起滤波作用,电容C3是克制高平信号。电容C2,C4直接接地,起到抗干扰的作用,能使电压稳定在+5V。有了电源模块避免了因没有直流电源而无法使用的问题,使这个仪表可以在更多的环境中使用。电源部分如图3.8所示。图3.8 电源电路图本次设计的数字密码锁就引用了电源批示模块,虽然这个模块很简朴,但的确也是电路中不可少的一部分,当电源通电后,黄色发光二极管就亮表达电路有电源输入,让顾客更能以便的清晰密码锁与否通电,如没有电通入,数字密码锁无法工作,需要及时更换电源,以保证数字密码锁的正常工作。

34、4 软件设计4.1 软件设计思路对于基于单片机的数字密码锁的设计,我们需要解决三个问题:键盘的输入、液晶显示、单片机电路以及密码比较与解决的有关程序设计。键盘的输入通过行列键盘扫描程序获取所按键的行、列号,而键值编码规则如下:将字节的高四位(D7、D6、D5、D4)表达列号(4、3、2、1),低四位(D3、D2、D1、D0)表达行号(4、3、2、1),例如11H(00010001)表达第1行第1列,21H(00100001)表达第1行第2列,以此类推,可得其她键值的编码。LCD1602显示,根据获取的键值编码,选择相应的功能,驱动LCD1602显示。在LCD接受指令前,微解决器必须先确认其内部

35、处在非忙碌状态,则LCD的(D7到D0)的D7位为0,方可接受新的指令。如果在发送一种指令时前没有检查D7标志,那么在前一种指令和这个指令中间必须延长一段较长的时间,即等待前一种指令的确执行完毕。液晶显示的操作重要由初始化程序、写命令和写数据程序等构成。而单片机电路以及密码比较解决程序则为主程序了,重要是解决键盘输入程序和调用显示程序。4.2 软件设计的流程图结合硬件构造,可以将键盘输入的辨认用来作为系统的监控程序,用显示程序来延时,不断查询键盘。如果有键按下,就得到相应的键值。结合目前系统所处的状态,调用不同的操作模块,实现相应的功能。而执行模块重要有数字输入模块、显示模块及报警提示模块。键

36、盘部分应实现如下功能:一方面,对键盘进行扫描,判断与否有键被按下。如果没有,则转回键盘扫描,看下次与否有键被按下;如果有键被按下,则先对键进行去抖动,然后算出是哪个键被按下,再延时等待键释放。由于数字键和功能键都相应不同的解决子程序,得到闭合键的键码后,就可以根据键码,转相应的键解决子程序,进行字符、数据的输入或命令的解决。这样就可以实现该键所设定的功能。本次设计的键盘解决程序流程图,如图4.1所示。显示流程图如图4.2所示,显示部分是分屏显示数据的,因此显示子程序为关闭状态显示子程序、密码输入及密码修改状态显示子程序、密码输入后错误提示程序。密码在规定的时间内输入的错误次数超过3次的锁定状态

37、显示子程序。LCD1602显示程序涉及初始化子程序、写数据子程序、写命令子程序、清屏子程序、光标定位子程序。报警提示部分重要是对输入密码的错误(锁未开)和对的(锁开)以及修改密码的提示,这个和显示程序保持一致。主程序是一方面进行整个程序的初始化及清屏,调用显示程序,读取键盘程序,当有按键按下时,程序判断是哪个键被按下,然后执行相应的按键功能,并调用显示程序中的显示功能,当没有键按下时,返回键盘扫描,再判断与否有键被按下,当输入的密码达到了八位,将会与单片机内设立好的密码进行比较,密码对的锁开,并报警提示电路启动,密码错误,可以有三次输入密码的机会。本次设计的主程序构造流程图,如图4.3所示。是

38、否否x = 0x = 0.4x = 0x = 0.4x = 0.8x = 0.846x =1H / m46x =1H / m2q / L462q / Lh-1h-12q / L462q / Lh-1h-1x = 0x = 0.4x = 0x = 0.4x = 0.8x = 0.846x =1H / m46x =1H / m2q / L462q / Lh-1h-12q / L462q / Lh-1h-1键扫描开始去抖动键码计算key()0 5 10 15 20x = 0x = 0.4x = 0.8x =1H / m 15 200 5 10 15 20x = 0x = 0.4x = 0.8x =1

39、H / m 15 200 5 10 15 20x = 0x = 0.4x = 0.8x =1H / m 15 200 5 10 15 20x = 0x = 0.4x = 0.8x =1H / m 15 200 5 10 15 20x = 0x = 0.4x = 0.8x =1H / m 15 200 5 10 15 20x = 0x = 0.4x = 0.8x =1H / m 15 2001键解决程序6x =1H / m46x =1H / m46x =1H / m46x =1H / m46x =1H / m46x =1H / m46x =1H / m46x =1H / m00键解决程序x =

40、0.8x = 0.8x = 0.8x = 0.8x = 0.8x = 0.8x = 0.8x = 0.8键解决程序x = 0x = 0.4xH / mH / mH / mH / mx = 0.4x = 0x = 0.4xH / mH / mH / mH / mx = 0.4键解决程序x = 0.8x = 0.8x = 0.8x = 0.8x =1x =1x =1x =1x = 0.8x = 0.8x = 0.8x = 0.8x =1x =1x =1x =1。 x = 0x = 0x = 0x = 0x = 0.4x = 0.4x = 0.4x = 0.4x = 0x = 0x = 0x = 0x = 0.4x = 0.4x = 0.4x = 0.4键释放?x = 0x = 0.4x = 0x = 0x = 0.4x = 0有无键按下

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!