分享
分销 收藏 举报 申诉 / 46
播放页_导航下方通栏广告

类型基于单片机的语音电子门锁论文.doc

  • 上传人:w****g
  • 文档编号:2032502
  • 上传时间:2024-05-13
  • 格式:DOC
  • 页数:46
  • 大小:783.50KB
  • 下载积分:12 金币
  • 播放页_非在线预览资源立即下载上方广告
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    基于 单片机 语音 电子 门锁 论文
    资源描述:
    基于单片机的语音电子门锁 摘要 现今社会,随着生活的进步电子业的蓬勃发展,单片机应用已经成为电子产品研制以及开发中首选的微控制器。随着人们的生活水平不断提高,怎样实现家庭的防盗这一问题也就变的尤为突出,采用传统的机械锁结构由于其构造简单,安全性能又低,已经无法满足人们的日常需要。 本文从实用、可靠的角度出发,采用宏晶科技有限公司的单片机STC89C52与STC11L08XE作为主控芯片,其中STC11L08XE单片机主要负责语音识别处理功能,STC89C52单片机主要负责键盘、显示及密码处理等功能,最终控制门的打开或者关闭由STC11L08XE单片机最终输出。通过这两款的单片机结合外围的键盘输入、报警、显示等电路,本文的单片机程序都用C语言编写,硬件电路设计使用protel 99se设计。设计的语音电子门锁可以多次的更改密码,并且具有报警功能。 经实验证明,该密码锁具有设计方法合理,安全可靠,成本低,实用等特点,符合住宅、办公室用锁要求,具有推广价值。 关键词:密码锁 语音识别 单片机 报警 1 引言 1.1 语音电子门锁简介 语音电子密码锁是一种可以通过密码输入或者语音识别来控制外扩电路工作,从而控制门锁机械开关的打开、闭合,完成开锁或者闭锁任务的电子设备。现在应用比较多的电子密码锁是以芯片为核心,通过编程来实现即单片机控制外围电路的语音电子密码锁。其安全性及可靠性已大大超过了普通的机械锁。其特点如下: 1) 保密性好,可靠性高,远远大于机械锁。随机开锁成功的几率几乎不可能。 2) 密码随意可变,用户可以随时根据需要更改密码,防止固定密码被盗,同时也可以避免因为人员的更替等原因而使锁的保密功能下降。 3) 错误密码输入保护功能,如果输入的密码错误超过三次时时,报警系统自动启动。 4) 无活动机械零件,不会有磨损,这样使用的寿命就变长了。 5) 使用的灵活性好,不像机械锁那样需要必须佩带钥匙才可以开锁。 6) 语音电子密码锁操作非常简单,一用即会。 1.2 语音电子门锁的发展趋势 在日常的生活与工作当中,住宅、公司、单位等的安全防范以及单位的文件档案和财务报表等一些涉密资料的保存大多是以加锁的方式来解决。目前来看,门锁主要还是用的弹子锁,这种方式的锁的钥匙很容易丢失;保险箱一般主要用的是机械密码锁,这种的结构较为复杂,制造的精度要求很高,成本也就很高,并且容易出现故障,人们常常需要随身携带多把钥匙,这样使用起来极不方便。如果钥匙丢失了那么安全性就会大打折扣。针对这些不同类型的锁具的缺点本设计用密码或者语音口令的方式代替传统的钥匙锁。它的出现给人们的生活提供了极大的方便,有非常广阔的市场前景。由于电子器件的限制,以前开发的一些电子密码门锁,其种类不多而且保密性又差,最基本的就是只依靠最简单的模拟电子开关来实现的,制作简单但很不安全,其硬件电路结构繁杂,分立元件较多,也有一些是使用早的2051系列的单片机来做的,这种的也是密码相对简单,很容易被破解。随着各种锁的出现,功能上日益强大,使用方面更加简便,安全性更强,从以前的单密码输入发展到现在的语音和电子密码双重的门锁,实现了真正的电子加密,用户只有通过密码或者是语音密钥才能打开锁具,如果用其他的办法是不能打开锁的。 针对方便、安全等方面的需要许多的电子类型密码锁已经相继问世。但是这类产品一般都是针对特定的有效卡、指纹或者是声音等有效,并且不能实现通过远程来控制,只能适用在保密要求高而且只供个人使用的箱子、衣柜、房间等方面。由于字符、数字、人体生物特征、图形图像和时间等要素都可以成为钥匙的信息,那么将这些信息组合使用就能够使电子锁具有高度的安全保密性,比如防范严密的金库,需要使用各种复合信息密码的电子锁,这样对盗贼来说是“道高一尺、魔高一丈”。这些组合信息的使用使电子锁得到无穷的扩展,也能让产品多样化,对于用户来说是“千挑百选、自得其所”。由此可以看出组合使用各种信息是电子锁以后发展的必然趋势。 1.3 本设计实现的目标 本设计采用单片机STC89C52与STC11L08XE为主控芯片,结合一些外围电路,组成语音电子门锁,用户如果想要打开门锁,必需要先通过提供的键盘输入正确的密码才能将门锁打开,或者通过二级语音口令识别开门。如果密码输入错误蜂鸣器会有提示,为了提高实际安全性,设计当密码输入错误超过三次后将报警并且封锁键盘。密码可以由用户登陆后由自己随意修改设定,设定密码长度为4位。修改密码只有门锁打开后才能修改密码。修改密码时要前后两次输入的新密码一致才能修改成功,修改成功后会有指示灯提示。语音识别开门时要首先说出一级加密的口令,其次再说出二级加密口令才能将门打开。 1.4 设计方案的设计 由于现在市面上的单片机种类很多,每种单片机都具有一定的优缺点,因此在选用时做了很多比较,最后比较合理的选择了STC单片机,以期获得最高的性价比。通常情况来说在选取单片机时要从以下几个方面考虑:存储器、性能、运行速度、定时/计数器、I/O口、模拟电路功能、串行接口、功耗、工作电压、抗干扰性、封装形式、保密性等,除了以上方面还有一些最基本参数比如:中断源的优先级和数量、有没有低电压检测功能、工作温度范围、有无上电复位功能、单片机内有无时钟振荡器等。在开发过程中项目的开发还受到:编程器、开发工具、开发人员的适应性、开发成本、技术服务和支持等等因素。基于以上一些因素本设计选用单片机STC89C52与STC11L08XE两个单片机作为主控单片机。其中STC89C52单片机主要负责的功能是四位数码管的显示、按键设置密码、蜂鸣器报警。一些操作时的指示状态等;单片机STC11L08XE主要负责语音部分识别,及门锁控制的输出。本设计之所以选择用两个芯片是因为如果用一个芯片来完成,就需要用一个比较高端的芯片,而且管脚资源要足够多,Flash等要足够大,这样处理起来才更容易,但是如果选择了这种芯片成本就会提高很多。而向本设计这样采用两个简单的单片机来做就既能照顾到成本,又能保证硬件资源够用。性价比还是很高的。当用户开锁时,先按键盘的开锁键,之后再按键盘的确定键来调整要设置密码的位,再通过增加键或者减小键来调整密码,当调整好后按下确定键,继续调整下一位,直到四位密码都输入完,按确定键瑞出键盘输入程序。如果密码输入正确则开锁,不正确蜂鸣器会发出短暂的一生响动要重新输入密码,如果连续输入三次密码错误那么就会发出报警。如果用户需要修改密码时,需要在输入密码正确后,继续输入两次新密码,只有这两次新密码一致时,新密码才修改成功。密码修改成功时会有绿色的LED指示。 2 单片机介绍 2.1单片机STC89C52 STC89C52RC这个单片机是宏晶科技公司推出的新一代的低功耗、高速并且有很强抗干扰的能力,它的指令代码兼容传统的老8051单片机,可以12 时钟/机器周期或者是6时钟/机器周期的任意选择。 2.1.1单片机STC89C52的主要特性 1. 这是一款增强型的8051单片机,6时钟/机器周期或者是12时钟/机器周期可以任意选择,其指令代码完全兼容传统8051单片机的指令代码。 2. 这种单片机的工作电压范围:5.5V~3.3V(5V单片机)或者3.8V~2.0V(3V单片机)。 3. 它的工作频率范围:0~40MHz,相对于普通8051的0~80MHz,实际上其工作频率可达48MHz。 4. 用户的应用程序存储空间为8K字节(Flash)。 片上集成了512字节数据存数区(RAM)。 6. 通用I/O口有32个,复位后为:P1/P2/P3/P4是准双向口/弱上拉的,P0口是漏极开路输出口,当在作为总线扩展用时是不用加上拉电阻的,当作为I/O口用时,需加若上拉电阻。 7. ISP(在系统可编程)/IAP(在应用可编程),不需要专用的编程器和专用仿真器,就可以通过串口(RxD/P3.0,TxD/P3.1)将用户程序直接下载到单片机里,数秒即可完成一片数据的写入操作。 8. 新增了EEPROM功能。 9. 具有看门狗功能。 10.片上共有3个16位定时器/计数器。即定时器T0、T1、T2定时器。 11.有4路外部中断,包括低电平触发电路或下降沿中断,Power Down 模式可以由外部的中断低电平方式触发进行中断唤醒。 12. 片上有通用的异步通信串行口(UART),它还可以用定时器实现多个UART工作。 13. 单片机的工作温度范围:-40~+85℃(工业级)/0~75℃(商业级) 2.1.2 STC89C52RC单片机的工作模式模式 1.典型功耗<0.1μA,可以由外部的中断来唤醒,中断执行并且返回后,继续执行原来的用户程序。 2.空闲模式:此种模式的典型功耗2mA 。 3.正常工作模式:此种模式的典型功耗4mA~7mA 。 4.掉电模式可以通过外部中断来唤醒,这适用气表、水表等一些电池供电的设备及一些便携的设备。 STC89C52RC单片机引脚功能说明。引脚图如图2-1所示。 图2-1 STC89C52RC引脚图 VCC(40引脚):接电源电压。 VSS(20引脚):接地。 P0 端口(P0.0~P0.7对应39~32 引脚)。P0端口是一个漏极开路的8 位双向的I/O口。当作为输出端口用时,每个引脚可以驱动8 个TTL的负载;当对P0端口写入“1”时,它又可以作为高阻抗输入。在访问外部程序和数据存储器时,P0端口也可以提供低8 位地址和8位数据的复用总线。此时,P0端口内部的若上拉电阻有效。当在Flash ROM编程时,由P0端口接收指令字节;在校验程序时,则输出指令字节。在验证时,要求要外接上拉电阻。 P1 端口(P1.0~P1.7对应于1~8引脚)。P1端口是一个带内部上拉电阻的8位的双向I/O端口。P1的输出缓冲器可以驱动4 个TTL的输入。当对端口写入1 时,内部的上拉电阻会把端口拉到高电平,这时端口可以当做输出使用。当P1端口作输入口使用时,因为内部有上拉电阻,那些被外部拉低的引脚会输出一个电流(IIL)。 P2 端口(P2.0~P2.7,21~28 引脚):P2 口是一个带内部上拉电阻的8 位双向I/O 端口。P2 的输出缓冲器可以驱动(吸收或输出电流方式)4 个TTL 输入。对端口写入1 时,通过内部的上拉电阻把端口拉到高电平,这时可用作输入口。P2端口作为输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流(IIL)。 P3端口(P3.0~P3.7对应于10~17 引脚)。P3端口是一个带有内部上拉电阻的8 位的双向I/O端口。P3端口的输出缓冲器可以驱动(吸收或输出电流方式)4 个TTL输入的信号。当对端口写入“1”时,它内部的上拉电阻会把端口拉到高电平,此时P3端口可用作输出口。当P3端口做输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输入一个电流(IIL)。 当在对Flash ROM编程或程序校验时,P3端口还接收一些控制信号。 P3口除作为一般I/O 口外,还有其他一些复用功能,如下表所示: 引脚号 复用功能 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 (外部中断0) P3.3 (外部中断1) P3.4 T0(定时器0的外部输入) P3.5 T1(定时器1的外部输入) P3.6 (外部数据存储器写选通) P3.7 (外部数据存储器读选通) 表2-1 P3 口引脚复用功能复用功能 RST(9 引脚):复位引脚。当通过此引脚给单片机连续输入两个机器周期以上的高电平信号时为有效,此引脚的功能为用来完成单片机的复位初始化操作。当看门狗计时完成后,RST复位引脚输出96个晶振周期的高电平信号。特殊寄存器AUXR(地址8EH)上的DISRTO 位可以让此功能无效。DISRTO在默认状态下,复位高电平有效。 ALE/ ROG(30引脚):地址锁存控制功能:(ALE)引脚是当访问外部程序存储器的时候,锁存低8位地址的输出脉冲。当在Flash 编程时,此引脚(ROG)也可以用作编程输入脉冲。 (29引脚):()是外部程序存储器的选通信号。当单片机从外部程序存储器执行外部代码时,会在每个机器周期被激活两次,而访问外部数据存储器的时候,将不被激活。 EA/VPP (31引脚):访问外部程序存储器的控制信号。:为了使能从0000H到FFFFH的外部程序存储器的读取指令,EA必须接地(GND)。注意加密方式为1时,EA将内部锁定为RESET。为了执行内部程序指令,EA应该接VCC。在Flash 编程期间,A也接收12伏特的VPP电压。 XTAL1(19引脚):振荡器的反相放大器和内部时钟发生电路的输入端。 XTAL2(18引脚):振荡器的反相放大器的输入端 2.2单片机STC11L08XE STC11L08XE的主要性能: 1.高速,1个时钟/机器周期,增强型8051内核,速度比普通8051快8-12倍 2.宽电压,5.5-4.1/3.7,3.6-2.4/2.1 3.低功耗设计,空闲模式 4.低功耗模式,掉电模式和远程唤醒模式 5.工作频率,0-35MHz,相当于普通8051的0-420MHz 6.时钟,外部晶振或内部晶振磕训啊 7.片内EEPROM功能,擦写次数10万次以上 8.2个16位定时器 9.1个独立波特率发生器 10.可编程时钟输出功能 11.硬件看门狗 12.全双工异步串行口 13.先进的指令集结构 14.通用I/O口(36/40个) 管脚图如图2-2-所示: 图2-2 STC11L08XE单片机引脚图 3语音识别模块介绍 语音识别模块实物如图3-1所示。本模块的主要芯片是LD3320语音识别芯片。LD3320 是一颗基于非特定人语音识别(SI-ASR:Speaker-IndependentAutomatic Speech Recognition)技术的语音识别/声控芯片。提供了真正的单芯片语音识别解决方案。LD3320 芯片上集成了高精度的A/D 和D/A 接口,不再需要外接辅助的Flash 和RAM,即可以实现语音识别/声控/人机对话功能。并且,识别的关键词语列表是可以动态编辑的。基于LD3320,可以在任何的电子产品中,甚至包括最简单的51 作为主控芯片的系统中,轻松实现语音识别/声控/人机对话功能。为所有的电子产品增加VUI(Voice User Interface)语音用户操作界面。 图3-1语音识别模块实物图 主要特色功能: 非特定人语音识别技术:不需要用户进行录音训练 可动态编辑的识别关键词语列表:只需要把识别的关键词语以字符串的形式传送进芯片,即可以在下次识别中立即生效。比如,用户在51 等MCU 的编程中,简单地通过设置芯片的寄存器,把诸如“你好”这样的识别关键词的内容动态地传入芯片中,芯片就可以识别这样设定的关键词语了。 真正单芯片解决方案:不需要任何外接的辅助 Flash 和 RAM,真正降低系统成本。 内置高精度A/D和 D/A通道:不需要外接 AD 芯片,只需要把麦克风接在芯片的AD 引脚上;可以播放声音文件,并提供550mW 的内置放大器。 高准确度和实用的语音识别效果 支持用户自由编辑50条关键词语 在同一时刻,最多在 50 条关键词语中进行识别,终端用户可以根据场景需要,随时编辑和更新这50 条关键词语的内容。 模块上集成了MIC音频输入设备及串口通信接口,论文模块还预留了16个I/O给用户使用。本设计中只有用到了模块的P1.0与P1.1口。其功能及使用方法见后面介绍,这里不再多叙述。 4 硬件设计 硬件设计部分电路主要包括复位电路、晶振电路、电源部分、报警部分、数码管显示部分、按键部分、指示灯部分、语音识别模块接口部分等。 4.1复位电路部分 复位电路如图4-1所示。图中C103为滤波电容,S1为复位按键,电阻R101为下拉电阻。单片机正常运行时复位管脚RST被下拉电阻R101拉到低电位,当按键S1按下时,单片机管脚RST被拉倒高电平,此时单片机复位。 图4-1 复位电路 4.2晶振电路 晶振电路如图4-2所示。图中选用的是外接无源的12MHz晶振,根据单片机的数据手册,选择晶振电容为瓷片的33pF电容。晶振电路在系统中虽然看起来很简单,但是在整个系统中是最重要的一部分,因为如果晶振电路不能正常运行,那么单片机的用户程序就不能呗有效的执行。 图4-2 晶振电路 4.3电源部分 电源部分如图4-3所示。图中D201是电源指示灯,当电源有电时D201点亮,当电源没电或者电压不够足时,D201熄灭。R201为限流电阻,其功能是限制流过D201的电流过大烧坏二极管D201。电容C201与C202为滤波电容,作用是滤除电源的杂波,保证单片机尽量小的收到外界文波带你呀的干扰。 图4-3电源部分电路 4.4报警部分电路 报警部分电路如图4-4所示。图中R401为限流电阻,三极管Q5起到扩流的作用,因为51的单片机驱动能力都很有限,因此要用三极管扩流。U3为报警用的蜂鸣器,当有报警时,蜂鸣器会发出声响,当无任何报警产生时,蜂鸣器静音。 图4-4 报警部分电路 4.5数码管显示电路 数码管显示电路如图4-5所示。图中Q1、Q2、Q3、Q4为起到扩流作用。R306-R312,R301-R304起到限流的作用。RP1为排阻,是P0口上啦电阻。加这个上拉电阻是因为51单片机的P0口都是准双向口,即做输出时如果不加上拉电阻是不可以的。数码管LG5641BH是共阳的数码管。此部分电路的工作原理是,比如单片机的P0口都输出低电平,P2.4输出高电平,那么此时三极管Q1导通数码管第一位被点亮,显示的数据因为P0都为低电平,故现实的数据是8.其他数码管的点亮及显示的数据原理如此一样。 图4-5 数码管显示电路 4.6按键部分电路 按键电路如图4-6所示。图中R401-R404为上拉电阻,当按键未被按下时,单片机的相应管脚为高电平,当按键按下时单片机的相应管脚变为低电平,当单片机检测到低电平时,说明按键按下。在本设计中P1.0口的功能定义为菜单键,P1.1口的功能定义为确定键,P1.2口的功能定义为增加键,P1.3口的功能定义为减小键。 图4-6 按键部分电路 4.7指示灯部分电路 指示灯部分电路如图4-7所示。图中D402为密码输入指示灯,R403为密码输入指示灯的限流电阻。D403为密码修改正确指示灯,R404为密码修改指示灯的限流电阻。在系统运行时,当用户按下菜单键后准备输入密码的过程中D402指示灯亮。如果用户密码修改正确时,用D403指示密码修改成功与否,如果修改正确,D403亮,如果修改不成功,则D403保持灭的状态。 图4-7指示灯电路 4.8语音识别接口 语音识别接口电路如图4-8所示。因为语音识别模块的用电电压是3.3V,故如果要让两个单片机通过I/O口连接就需要将电平信号做一些转变。途中的R201与稳压管D1就是将5V电压转变到3.3V的电路。图中语音识别模块部分的R402与D401为最终的门控制输出指示灯。当D401亮时表示门锁打开,当D401灭时表示门锁关闭。 图4-8语音识别接口电路 5 软件部分 软件部分的程序包括两个方面,STC89C52单片机的程序和STC11L08XE单片机程序。其中STC89C52单片机主要负责按键处理及密码显示、报警与一些操作状态的处理,而STC11L08XE单片机负责语音的识别及处理和检测STC89C52单片机的I/O开关门命令以及门锁控制的最终输出。 5.1 STC89C52单片机的程序 STC89C52的单片机程序包括宏定义、初始化、按键处理、显示、主函数等部分。线距离来说明程序部分。 5.1.1单片机程序的宏定义及一些申明 程序代码及注视如下: #include <reg52.h> //包含单片机头文件 #include <intrins.h> //宏 #define GPIO_DIG P0 //定义P0口为数码管显示接口用 sbit LS1=P2^4; //定义P2.4口为数码管第一位控制 sbit LS2=P2^5; //定义P2.5口为数码管第二位控制 sbit LS3=P2^6; //定义P2.6口为数码管第三位控制 sbit LS4=P2^7; //定义P2.7口为数码管第四位控制 sbit in_led=P2^3; //定义P2.3口为输入密码指示灯 sbit password_led=P2^2; //定义P2.2口为密码设置成功指示灯 sbit door_out=P2^0; //定义P2.0口为门锁输出 sbit alarm=P1^4; //定义报警输出 unsigned char Trg=0; //按键触发标志 unsigned char Cont=0; //长按键标志 unsigned char key_menu=0; //菜单标志 unsigned char key_enteradd=0; //按键设置位变量 unsigned char key_datadd=0; //按键设置位变量 unsigned char key_lock=0; //键盘锁标志 unsigned char code DIG_CODE[10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90}; //0、1、2、3、4、5、6、7、8、9的显示码 int ge,shi,bai,qian; unsigned char key_password=0; //密码设置标志 unsigned int result=1234; //默认密码为1234 unsigned int result1=0; //输入密码 unsigned int result2=0; //验证密码 unsigned int result3=0; //验证密码 unsigned int password_count=0; //验证密码计数 unsigned int count=0; //输入密码错误计数 unsigned int t1_count=0; //定时器1定时计数 void Delay(); //延时 void Init(); //初始化函数 void data_change(); //数据转换 void key_read(); //按键函数 void key_set(); //按键设置函数 void DigDisplay(unsigned char x); //动态显示函数 5.1.2初始化函数 /********************************************************* 函数名 : Init() * 函数功能 : 初始化函数 * 输入 : 无 * 输出 : 无 *************************************************************/ void Init() { alarm=1; //初始化报警关闭 in_led=1;//初始化,输入密码指示灯 door_out=0; //门锁输出默认为0,关闭状态 password_led=1; //关闭 ////////////////以下为定时器初始化//////////////// EA=1; //开全局中断 ET0=1; //开定时中断0 IT0=0; //外部中断0电平触发 IT1=0; //外部中断1电平触发 PT0=1; //定时中断0高 TMOD = 0x28; //T0T1方式控制 TH0= 0x0c; // T0高8位 TL0= 0x78; // T0低8位 //初始化完成...... } 5.1.3主程序 /********************************************************** * 函 数 名 : main * 函数功能 : 主函数 * 输 入 : 无 * 输 出 : 无 ****************************************************************/ void main(void) { // unsigned char i; Init(); //初始化函数 while(1) { if(key_lock==0) //只有键盘未锁定时,才可以操作键盘 { key_set(); //按键设置函数 } } } 5.1.4按键处理函数 /******************************************************************************* * 函数名 : key_set() * 函数功能 : 按键设置函数 * 输入 : 无 * 输出 : 无 *******************************************************************************/ void key_set() //按键设置函数 { unsigned int i; key_read(); //按键函数 if (Trg==1) { TR0=1; //启动T0 t1_count=0; in_led=0; //输入密码指示灯亮 data_change(); //调用数据变换子程序 key_menu=1; } while (key_menu==1) //菜单键按下时 { key_read(); //按键函数 if (Trg==2) //如果确定键按下 { t1_count=0; key_datadd++; if (key_datadd>=5) //如果超过合法值,则清零,(合法值为0-4) { if (key_password==0) //密码设置标志 { result1=qian*1000+bai*100+shi*10+ge; //保存设置结果 if (result==result1) //如果输入密码与设置密码相同 { in_led=1; //关闭密码输入指示灯 result1=0; //输入密码清零 t1_count=0; key_password=1; //设置密码标志 password_count=0; //验证密码计数清零 count=0; //密码错误计数清零 door_out=1; //打开门锁 } else { count++; //密码输入错误计数加一 result1=0; //输入密码清零 alarm=0; //短时间报警提示密码错误 Delay(); Delay(); Delay(); Delay(); Delay(); Delay(); Delay(); Delay(); alarm=1; if(count>=3) //如果密码输出错误次数超过三次,则报警并锁定键盘 { in_led=1; //关闭密码输入指示灯 key_lock=1; //键盘锁定 alarm=0; //报警产生 } } } else //设置密码 { password_count++; if (password_count==1) { result2=qian*1000+bai*100+shi*10+ge; //设置密码 } else if(password_count>=2) { result3=qian*1000+bai*100+shi*10+ge; //设置密码 if (result2==result3) { in_led=1; //关闭密码输入指示灯 password_led=0; //打开密码设置成功指示灯 result=result2; //设置密码成功 } password_count=0; } } key_menu=0; //设置完毕,跳出设置循环 key_datadd=0; } } else if (Trg==4) //如果增加键按下 { t1_count=0; if (key_datadd==4) //调整个位 { ge++; if (ge>9) //如果超过范围,清零 { ge=0; } } else if(key_datadd==3) //调整十位 { shi++; if (shi>9) //如果超过范围,清零 { shi=0; } } else if(key_datadd==2) //调整白位 { bai++; if (bai>9) //如果超过范围,清零 { bai=0; } } else if(key_datadd==1) //调整千位 { qian++; if (qian>9) //如果超过范围,清零 { qian=0; } } } else if (Trg==8) //如果减小键按下 { t1_count=0; if (key_datadd==4) //调整个位 { ge--; if (ge<0) //如果超过范围, { ge=9; } } else if(key_datadd==3) //调整十位 { shi--; if (shi<0) //如果超过范围, { shi=9; } } else if
    展开阅读全文
    提示  咨信网温馨提示:
    1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
    2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
    3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
    4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
    5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
    6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

    开通VIP折扣优惠下载文档

    自信AI创作助手
    关于本文
    本文标题:基于单片机的语音电子门锁论文.doc
    链接地址:https://www.zixin.com.cn/doc/2032502.html
    页脚通栏广告

    Copyright ©2010-2026   All Rights Reserved  宁波自信网络信息技术有限公司 版权所有   |  客服电话:0574-28810668    微信客服:咨信网客服    投诉电话:18658249818   

    违法和不良信息举报邮箱:help@zixin.com.cn    文档合作和网站合作邮箱:fuwu@zixin.com.cn    意见反馈和侵权处理邮箱:1219186828@qq.com   | 证照中心

    12321jubao.png12321网络举报中心 电话:010-12321  jubao.png中国互联网举报中心 电话:12377   gongan.png浙公网安备33021202000488号  icp.png浙ICP备2021020529号-1 浙B2-20240490   


    关注我们 :微信公众号  抖音  微博  LOFTER               

    自信网络  |  ZixinNetwork