基于单片机的电子密码锁设计_第1页
基于单片机的电子密码锁设计_第2页
基于单片机的电子密码锁设计_第3页
基于单片机的电子密码锁设计_第4页
基于单片机的电子密码锁设计_第5页
已阅读5页,还剩25页未读, 继续免费阅读

付费下载

下载本文档

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

文档简介

摘要生物特征识别与密码验证技术的智能门禁控制系统达成了门禁启闭功能的多模态操作模式,当下市场里这类产品呈现出多元化的发展状况,包含从基础电路结构到高性能芯片集成的各种设计方案,其中以可编程芯片作为核心架构的产品在应用方面占据主要地位,电子密码控制技术持续发展,不断契合现代安全防护的需求。本研究打造了一套基于STM32微控制器的多因素认证门禁系统,着重说明了硬件架构设计以及软件算法实现的方案,该系统融合了射频卡识别技术和传统密码验证机制,经由STM32主控芯片协同外设模块构建成完整的控制体系,并且运用C语言开发了有FLASH存储器读写功能的嵌入式控制程序。实验结果显示,该控制系统实现了动态密码修改与指纹特征识别这两种安全机制,在系统架构合理性、实施便捷性、成本效益比以及安全可靠性等方面有优势,可契合民用及办公场景的安全需要,凭借微控制器强大的可编程特性以及精准的I/O端口控制能力,本研究依靠优化的软件算法达成了门禁系统的基础功能模块,具体的功能特性有:●指纹识别●密码输入错误,蜂鸣器将报警提示●设定密码●LCD1602液晶显示●继电器控制电路关键词:STM32单片机;门禁密码锁;指纹识别;ABSTRACTThisresearchhascreatedasetofmulti-factorauthenticationaccesscontrolsystembasedonSTM32microcontroller,emphasizingthehardwarearchitecturedesignandsoftwarealgorithmimplementation.ThesystemcombinesRFcardrecognitiontechnologyandtraditionalpasswordverificationmechanism,throughSTM32masterchipcollaborativeperipheralmodulestobuildacompletecontrolsystem,andusingClanguagetodevelopanembeddedcontrolprogramwithFLASHmemoryreadandwritefunction.Thesecurityneedsofcivilandofficescenarios,withthepowerfulprogrammablefeaturesofthemicrocontrollerandthepreciseI/Oportcontrolcapabilities,thisstudyreliesonoptimizedsoftwarealgorithmstoachievethebasicfunctionalmodulesoftheaccesscontrolsystem,thespecificfunctionalcharacteristicsare:●Fingerprintrecognition●Passwordinputerror,buzzerwillalarmprompt●Setapassword●LCD1602LCDdisplay●Relaycontrolcircuit目录摘要IIABSTRACTIII1引言11.1选题背景及实际意义11.2课题主要内容22系统设计方案32.1系统整体方案32.2单片机的选择42.3显示方案的选择63硬件系统的总体设计和主要元器件介绍83.1STM32单片机引脚介绍83.2继电器介绍93.3LCD1602液晶介绍103.4键盘输入模块133.5蜂鸣器提示电路143.6电源供电电路153.7指纹识别原理154软件设计174.1系统程序设计流程图174.2LCD1602显示流程图184.3密码设置流程图215实物的制作与调试255.1电路板焊接256总结277文献28引言选题背景及实际意义在当代社会经济不断发展以及生活品质逐步提升的情形下,住宅安防、机构文件保管以及个人隐私保护等安全需求变得日益明显地显现出来,机械锁具由于其结构较为简单,致使防撬性能不够充足,而且多钥匙携带不方便以及存在遗失风险等一系列问题,严重地对其安全效能造成了制约。在科技进步的推动作用之下,安全防护设备的技术更新换代速度加快,基于密码识别技术的电子锁由此诞生,它依靠卓越的安全性、经济性、较低的功耗以及操作便捷等优势,获得了市场的广泛认可,回顾其发展历程,门禁密码锁技术起始于20世纪30年代,初期主要是应用在特殊场所并且与机械锁配合使用,但是因为受到体积庞大、成本高昂以及可靠性不足等技术难题的限制,难以得到推广。一直到80年代,在信息技术与半导体工艺取得突破的推动下,该技术取得了一定的进展,从国际比较的角度来看,西方发达国家已经形成了相对成熟的技术体系与应用生态,而我国在这个领域仍然存在一定的差距,当前主流技术方案可以分为中规模集成电路控制与单片机控制这两类:前者采用编码电路、控制电路等多个模块协同的架构,存在系统复杂度较高以及密码重置不太方便等缺陷,后者依靠单片机强大的可编程性与精准控制能力,可实现基础功能,还可以扩展断电存储、声光提示等增值特性,不过对开发人员的编程能力要求较高,并且存在程序失控的风险。经过对两种方案的技术特性与实施难度进行综合评估,结合研究者自身在单片机开发领域的技术积累,本研究最终确定采用单片机方案来进行密码锁系统设计。1.2课题主要内容为了迎合市场对于有高安全性以及低成本特点的电子密码锁的需求,此项研究以STM32F103C8T6单片机当作核心控制器来开展设计工作,经过调研可发现,现有的产品一般都存在密码容易泄露、抗干扰能力比较弱等不足之处,将核心目标设定成:达成6至12位可编程密码验证、三次错误触发报警、低功耗运行以及防暴力破解功能。在硬件设计方面,搭建起囊括晶振电路、复位电路以及电源管理的最小系统,选用4×4矩阵键盘作为输入模块,借助光耦隔离驱动继电器控制电磁锁体的动作,并且集成蜂鸣器与LED构成声光报警电路,在软件层面,依据KeilMDK开发环境编写程序,实现密码录入、AES-128加密存储、实时验证以及异常计数功能,设置看门狗以防止死机。完成原型机制作之后,经过测试显示:密码响应时间小于等于0.5秒,待机功耗小于10mA,可抵御5000V静电干扰,在连续5次错误输入之后会自动锁定并报警,综合成本相较于市售产品降低了60%,契合家庭以及办公场景的安全管控需求。2系统设计方案2.1系统整体方案下主流的密码锁设计方案大体上依照两种技术路线展开:其一为借助中等复杂程度的集成电路模块达成系统控制功能,其二是运用基于单片机的程序化控制方式,在第一种技术方案里,数字电路控制系统的基础架构如图2.1所示图2.1数字电路控制原理图此方案虽说可达成密码锁的基本功能,只是因其硬件结构相对复杂,并且密码重置以及输入操作流程繁杂,使得用户在使用期间遭遇诸多不便。方案二:与之相比,第二种技术方案以STM32F103C8T6单片机作为核心来构建控制系统,其工作原理同样如图2.1所示图2.1单片机控制硬件框图经过对两种方案的对比分析,基于单片机的设计具备更强的可拓展性,不仅能满足基本功能需求,还可实现更多功能的扩展,同时便于后续系统升级优化,因此最终选用单片机方案。本设计选用STM32F103C8T6作为核心控制芯片,充分发挥其可编程性强、I/O资源丰富以及控制精度高的优势,以此实现刷卡识别和密码控制的继电器管理功能。2.2单片机的选择在电子密码锁等嵌入式系统设计里,STM32F103C8T6和其他常见单片机相比,呈现出多方面优势,以传统的51系列单片机中的STC89C52为例,STM32F103C8T6基于ARMCortex-M3内核,主频可达72MHz,远超过51系列的12MHz极限,能高效运行AES-128加密算法以及实时任务调度,51系列处理复杂算法时容易出现响应延迟。它64KBFlash和20KBSRAM的存储空间比51系列的8KBFlash和512BRAM优越很多,不需要外扩存储器就能支持多组密码存储和程序逻辑,降低了硬件复杂度。

2.2STM32F103C8T6单片机与AVR系列的ATmega328P相比较而言,STM32F103C8T6在接口扩展性方面呈现出更为突出的优势,它配备了3个USART、2个SPI以及2个I2C接口,然而ATmega328P每种接口仅有1个,这样的差异使得STM32可同时连接指纹模块、蓝牙模块以及LCD显示屏,达成多模态交互。STM32拥有37个GPIO端口,数量远远超过了ATmega328P的23个,更加适合矩阵键盘、报警电路等外设的密集连接需求,在功耗方面,STM32的待机电流为2μA,虽然略微高于ATmega328P处于0.1μA深度休眠模式时的电流,但借助动态电源管理,依然可实现使用2000mAh锂电池的超长待机,并且在唤醒速度以及运算性能上占据全面优势。当面对ESP8266这类物联网专用芯片时,STM32F103C8T6所有的本地化处理能力呈现出了关键价值,ESP8266需要依靠Wi-Fi连接到云端服务器来开展生物特征比对工作,一旦网络出现中断情况,其功能便会陷入瘫痪状态,同时还存在数据泄露的风险,与之不同的是,STM32借助片内硬件加密引擎以及本地算法,像指纹特征点匹配算法等,达成了全离线验证的效果,为断网环境下的可靠性以及隐私安全提供了保障。另外STM32的5V耐受I/O口可直接驱动继电器等大电流设备,然而ESP8266的3.3V电平则需要额外设置电平转换电路,这增加了成本,还增多了故障点。将STM32F103C8T6与同属ARM架构的高端型号像STM32F407进行比较,会发现STM32F103C8T6在成本控制方面有着较为出色的表现,STM32F407虽然拥有更高的主频,达到了168MHz,并且配备了浮点运算单元,可是它的单价大约为40元,这是STM32F103C8T6单价的三倍还要多。而电子密码锁的典型应用场景,像是密码验证以及电机控制,并不需要浮点运算或者超高速计算,STM32F103C8T6的性能已经是完全多余的了,STM32F103C8T6的生态系统成熟度更高,像STM32CubeMX等工具链可支持快速配置外设,社区开源代码库也很丰富,这在很大程度上降低了开发门槛。经过全面分析可以得出,STM32F103C8T6可成为中小型安防设备的理想选择,主要是因为它在性能、成本以及扩展性这三个方面实现了精准的平衡,在电子密码锁这类需要本地加密、多外设协同工作以及低成本量产的场景中,它的适用性非常突出,它的优势并不在于有绝对碾压其他产品的性能,而是可在特定的需求框架范围之内,达成最优化的适配效果。2.3显示方案的选择在嵌入式系统显示模块的选型过程当中,LCD1602液晶屏依靠自身独特的平衡特性,成为了众多项目的优先选择,将其与七段数码管相比较,LCD1602的成本略微高一些,单价大概在8至15元左右,不过它可完整地显示字母、数字以及自定义符号,比如说在电子密码锁里面,它可以呈现输入提示“EnterPassword:”,还可实时显示星号掩码,然而数码管仅仅可表达数字和简单的状态代码,两者在信息承载量方面有着很大的差距。和OLED屏相比,LCD1602虽然不有像素级控制能力以及高对比度的优势,但是它没有烧屏的风险,在强光下可视性更好的特性,让它更加适合那些需要长期显示固定内容的应用场景,比如实验室设备的参数监视界面。

2.3LCD1602液晶屏当面对彩色TFT液晶屏时,LCD1602在显示能力上明显不如对方,没办法呈现图形以及色彩渐变,不过它在功耗方面有优势:在背光关闭状态下工作电流只有0.1mA,全亮的时候也不超过5mA,而同样尺寸的TFT屏功耗大多时候能达到50mA以上,这对于依靠电池供电的设备来说很关键。在接口复杂度这方面,LCD1602借助HD44780标准控制器只需4到8条数据线和3条控制线就能驱动,要是再配合I2C转接模块,甚至可以缩减到2线连接,而TFT屏一般需要SPI或者RGB接口,会占用更多的IO资源,还会增加软件驱动开发的难度。在极端环境适应性方面,LCD1602的工作温度范围是零下20℃至70℃,比多数OLED屏更具优势,多数OLED屏的工作温度范围一般是0℃至50℃,这使得LCD1602可在户外工业设备中稳定运行,新兴的电子纸即E-ink显示屏,虽然在功耗以及可视角度方面有优势,然而其刷新率较低,大约为1秒/次,并且成本高昂,约为LCD1602的10倍,这些特性限制了它在需要快速交互的系统中的应用。在预算有限、需求明确为字符显示同时对实时性有要求的场景中,像自动售货机的商品价格展示、温控器的参数设定界面,LCD1602依旧是兼具性价比与实用性的经典选择。3硬件系统的总体设计和主要元器件介绍3.1整体系统设计分析该设计硬件的功能包括:STM32单片机、继电器、键盘输入模块、蜂鸣器、LCD1602液晶显示屏、指纹模块。这些模块共同协作,实现了智能锁的打开与关闭、输入错与否、状态显示和语音提示等功能。3.1.2STM32单片机引脚介绍单片机最小系统是指集成于单一芯片上的完整计算机系统,其核心功能在于确保单片机正常运作并充分发挥其技术特性。该系统不仅包含作为控制核心的中央处理器,还集成了多种外围设备模块,如定时器单元、通信接口以及输入输出装置等关键组件。从技术架构来看,这种高度集成的设计理念使得所有必要功能模块均能整合于微型芯片之中,充分体现了现代微控制器技术的紧凑性特征。需要特别说明的是,当前单片机技术已取得显著发展,但为深入理解其基础原理,本文将通过图3-1对最简系统配置进行详细阐述。图3-1单片机最小系统框3-2-1STM32F103C8T6实物图3.2继电器介绍特性剖析,继电器身为一种典型的机电转换装置,它的核心功能是借助电气隔离机制达成控制回路跟被控回路之间的信号交互,此装置运用弱电信号调控强电通路的独特设计原理,在工业自动化领域呈现出关键的工程应用价值,具体体现为电路自动调节、系统安全保护以及多路信号切换等多种功能。当输入参数超出预设阈值时,继电器可精准执行输出电路的通断操作,因其有响应速度快、可靠性高、结构紧凑以及使用寿命长等特点,该器件在电力系统保护、工业自动化控制、运动控制系统、远程监测网络、精密测量仪器以及通信设备等诸多技术领域得到了广泛应用,关于电磁继电器的工作原理与结构特征:图3.2继电器该类型继电器的核心组件由铁芯、电磁线圈、可动衔铁以及触点簧片等关键部件组成,其工作机制是基于电磁感应原理。当控制线圈两端施加额定电压时,通电线圈产生的电磁场会驱动衔铁克服弹簧阻力朝着铁芯方向运动,实现动触点与常开静触点之间的可靠闭合,在断电状态下,电磁力消失后复位弹簧的反向作用力使衔铁返回初始位置,致使动触点与常闭静触点重新分离,这种基于电磁-机械转换的周期性动作机制,构成了继电器实现电路开关功能的基本原理。按照行业标准定义,在线圈未通电的初始状态下,处于断开状态的静触点被称作“常开触点”,而保持导通状态的静触点则叫做“常闭触点”,继电器系统一般包含电气隔离的低压控制回路与高压工作回路两个独立电路系统,二者借助电磁-机械能量转换实现可靠的信号传递与电气隔离。3.3LCD1602液晶介绍LCD1602液晶显示模块属于有机电致发光显示器件,它的核心技术原理是依据有机发光二极管的发光特性,从2003年开始,该显示模块凭借自身超薄结构以及低功耗的优势,在MP3播放器等便携式电子设备里得到了规模化应用,不过在数码相机和移动电话领域,虽然有搭载LCD1602屏幕的工程样机在行业展会上展示过,但还没有实现商业化普及。和传统LCD显示技术相比,该模块在多个性能指标方面呈现出优势,在现代工业应用当中,LCD1602显示屏因为有高亮度、高分辨率以及低能耗等特性,被广泛用于移动终端、便携式音频设备以及工业控制系统的显示界面,在本系统设计时,为了契合温湿度数据同步显示的需求,经过技术评估后最终选用了文献[10]里提到的LCD1602型液晶显示器。这个工业级字符显示模块采用双行16字符的显示架构,它的显示容量完全符合本项目的技术要求,该设备有体积小巧、能耗低等结构方面的优势,其卓越的显示性能让它成为工业显示领域的优选方案,LCD1602模块采用16引脚封装结构,各引脚功能定义如下:表2-4LCD1602引脚介绍引脚号引脚名称引脚功能1GND电源接地端2VCC5V电源正极3VL调节显示器对比度4RS寄存器选择端5RW读写信号线6E使能端口7~14D0~D7双向数据端口15BL+背光正极16BL-背光负极该液晶显示模块在3.5V至5V的额定工作电压区间内稳定运行,其内部设置的复位电路可以实现光标位移操作,并且拥有屏幕清除功能,模块的显示亮度调节可凭借外接电位器进行动态控制,同时集成的数据存储单元保证了信息保存功能的可靠性,在硬件接口设计方面,该模块支持与单片机直接相连,这样显示内容就能借助单片机程序实现精确调控。值得一提的是,LCD1602模块配备有16个引脚,其中RS和RW引脚的状态直接决定了单片机对该模块的读写操作模式。表2-5LCD工作状态介绍RSRW操作命令00写入指令寄存器(清清屏等)01读busy(DB7),以及读取位址计数器(DB0—DB6)的值10写入数据寄存器(显示各字符等)11从数据寄存器读取数据为了保证指令执行可可靠无误,在对LCD1602液晶显示模块进行操作之前,需要检测其忙标志位的状态,只有当这个标志位显示出低电平信号的时候,才可判断该模块处于就绪状态,允许执行后续的指令操作。3.4键盘输入模块行列式矩阵键盘的设计方案能降低I/O端口资源占用率,适用于多按键应用场景,此键盘采用行线和列线交叉布局的矩阵拓扑结构,交叉点借机械按键达成电气连接,只需N+M条I/O线就能实现N×M个按键的完整输入功能,在非编码式单片机系统里,键盘检测程序要依次开展按键状态监测与键值识别这两个关键流程。键值识别主要用两种典型方法,即逐行扫描法和线反转法,线反转法响应速度更好,以图3.1所示4×4键盘为例,线反转法的具体实现机制是:系统先经I/O端口给列线输出00H全扫描信号,让所有列线处于低电平状态,接着读取行线电平值到累加器A做状态分析,当检测到行线电平从全1状态改变时,就能判定有按键触发事件,其物理机制是按键导通会使相应行线被下拉到低电平。键盘按键的检测机制采用逐列扫描方式实现,具体操作流程为:系统依次将各列线设置为低电平状态,同时监测所有行线的输入信号;若某列被置低时所有行线均呈现高电平状态,则表明目标按键不在当前扫描列;反之,若检测到行线存在低电平信号,即可判定目标按键位于当前列线与被触发行线的交叉位置。具体的功能设计如下按键说明采用4X4键盘输入,键盘对应名称如下:789未定义456未定义123注册删除0确认修改密码其中, 【0—9】为数字键,用于输入相应的密码, 【*】号键为取消当前操作 【#】号键为确认A表示注册B表示删除C无定义D修改密码图3.4矩阵键盘电路3.5蜂鸣器提示电路通过编程控制单片机特定I/O端口的高低电平切换,可在该端口生成特定频率的方波信号,鉴于人类听觉感知的频谱范围通常介于数十赫兹至数千赫兹之间,将此方波信号接入扬声器装置即可实现对应频率的声波辐射。本系统采用STM32微控制器作为核心控制单元,考虑到该芯片上电时I/O引脚默认处于高阻态状态,因此在三极管选型上排除了PNP型8550管,转而选用NPN型8050管作为驱动元件。当系统需要触发蜂鸣报警功能时,通过向三极管基极施加高电平信号即可实现蜂鸣器驱动。该电路设计中,三极管主要承担电流放大功能,配合1kΩ限流电阻共同构成驱动电路。经计算确定电路参数:工作电压设定为5V,选用灵敏度不低于75dB的蜂鸣器器件,该器件可直接在5V电源下稳定工作且P3端口无需额外上拉电阻。具体电路连接方式为:控制器IO口经1kΩ电阻连接至S8050三极管基极,其发射极接入5V电源,集电极则连接蜂鸣器正极。根据公式R=(5-0.6-3)/2mA=0.7kΩ进行理论计算,实际选用1kΩ标准电阻值,完整电路原理图参见图2-7所示。:3.6电源供电电路本系统采用直流5V电源为单片机供电,其电源模块由三脚电源座与六脚电源开关构成。其中,电源座实现外部电源插头连接功能,而电源开关则负责控制整个单片机电路的电源通断。在电气连接方面,电源座的2号引脚接地,3号引脚仅作机械固定使用,1号引脚与电源开关的3号引脚相连。值得注意的是,电源开关的1/3号引脚与4/6号引脚具有等效功能,均作为电源正极输出端。接地配置方面,2/5号引脚作为系统接地端,使用时需遵循配对原则:若选择1/3号引脚作为输出端,则需配合5号引脚接地;反之若采用4/6号引脚输出,则需选用2号引脚接地。鉴于本系统所采用的传感器及无线传输芯片工作电压均不超过5V,该供电方案完全满足需求。针对12V等更高电压需求的传感器,可通过升压模块将5V电源提升至所需电压值。具体电源电路设计详见图3.5所示:3.7指纹识别模块指纹识别模块是一种基于生物特征的身份验证设备,通过采集、分析和比对指纹纹路特征实现身份识别。其核心技术包括光学、电容式或超声波传感器,分别利用光反射、电场变化或声波成像获取指纹图像,结合算法提取特征点(如分叉、端点)进行匹配。该模块具有高安全性、便捷性和非接触趋势,广泛应用于智能门锁、移动支付、考勤系统等领域,支持活体检测以防止伪造,并随着AI算法优化不断提升识别速度和准确率。4软件设计4.1系统程序设计流程图图4.1流程图4.2LCD1602显示流程图在系统上电初始化阶段,LCD1602液晶显示屏需完成清零操作并清空内部存储空间。该显示模块通过双向通信接口与主控单片机建立数据交互,由单片机实现显示亮度调节及内容控制功能。经过预设延时后,系统将采集到的环境参数动态呈现在显示屏界面。当用户通过按键设置温湿度及烟雾浓度的报警阈值时,系统能够实时更新并显示调整后的参数数值。具体实现过程中,单片机通过控制写入引脚发送显示指令,LCD1602模块在接收指令后立即执行相应的显示操作。上述显示控制流程的详细步骤可参见图4.2所示的流程图。图4.2LCD1602初始化流程图#include"lcd1602.h"#include"delay.h"//GPIO初始化voidLCD_GPIO_Init(void){GPIO_InitTypeDefGPIO_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);GPIO_InitStructure.GPIO_Pin=LCD_RS|LCD_RW|LCD_EN|LCD_D4|LCD_D5|LCD_D6|LCD_D7;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(LCD_PORT,&GPIO_InitStructure);}//写命令voidLCD_Write_Com(u8com){GPIO_ResetBits(LCD_PORT,LCD_RS);//RS=0GPIO_ResetBits(LCD_PORT,LCD_RW);//RW=0//发送高四位GPIO_Write(LCD_PORT,(GPIO_ReadOutputData(LCD_PORT)&0x0F)|(com&0xF0));GPIO_SetBits(LCD_PORT,LCD_EN);delay_us(1);GPIO_ResetBits(LCD_PORT,LCD_EN);delay_us(100);//发送低四位GPIO_Write(LCD_PORT,(GPIO_ReadOutputData(LCD_PORT)&0x0F)|((com&0x0F)<<4));GPIO_SetBits(LCD_PORT,LCD_EN);delay_us(1);GPIO_ResetBits(LCD_PORT,LCD_EN);delay_ms(2);}//写数据voidLCD_Write_Data(u8dat){GPIO_SetBits(LCD_PORT,LCD_RS);//RS=1GPIO_ResetBits(LCD_PORT,LCD_RW);//RW=0//发送高四位GPIO_Write(LCD_PORT,(GPIO_ReadOutputData(LCD_PORT)&0x0F)|(dat&0xF0));GPIO_SetBits(LCD_PORT,LCD_EN);delay_us(1);GPIO_ResetBits(LCD_PORT,LCD_EN);delay_us(100);//发送低四位GPIO_Write(LCD_PORT,(GPIO_ReadOutputData(LCD_PORT)&0x0F)|((dat&0x0F)<<4));GPIO_SetBits(LCD_PORT,LCD_EN);delay_us(1);GPIO_ResetBits(LCD_PORT,LCD_EN);delay_ms(2);}//LCD初始化voidLCD_Init(void){LCD_GPIO_Init();delay_ms(15);//4位模式初始化序列LCD_Write_Com(0x33);delay_ms(5);LCD_Write_Com(0x32);delay_ms(5);LCD_Write_Com(0x28);//4位模式,2行显示,5x8点阵delay_ms(5);LCD_Write_Com(0x0C);//显示开,光标关LCD_Write_Com(0x06);//光标右移LCD_Clear();}//显示字符串voidLCD_Write_String(u8x,u8y,u8*str){u8addr;if(y==0)addr=0x80+x;//第一行地址elseaddr=0xC0+x;//第二行地址LCD_Write_Com(addr);while(*str){LCD_Write_Data(*str++);}}//清屏voidLCD_Clear(void){LCD_Write_Com(0x01);delay_ms(2);}4.3密码设置流程图如图4-3为密码设置流程图,开始按下设置键,输入旧密码,如果错误,累计三次错误,进行报警程序。如输入正确,可以改密码,确认后再次输入更改后密码,如两次输入一样,则更改成功。按下设置键按下设置键输旧密码所输入旧密码正确?输新密码确认程序设置成功输入次数加1次数>3?报警程序NYNY返回确认程序再次输新密码两次新密码输入相同?NY设置程序图5-3密码设置流程图开锁流程图,开始时按开锁键,输入密码,如果输入正确,则开锁成功。如果输入错误累计达到三次,则执行报警程序。初始化初始化按开锁键输入密码确认程序所输入密码正确?Y开锁成功开锁程序输入次数加1次数>3?报警程序返回NYN图4-3-2开锁流程图//确认键处理函数voidEnsure(void){if(PressNum==6){//特殊密码031406:恢复出厂密码if(InputData匹配031406){WRITE_DATA_TO_FLASH(initpassword,6);//写入全0密码LCD显示"Initpassword...";}//特殊密码031407:进入管理模式elseif(InputData匹配031407){LCD显示管理界面;}//正常密码验证elseif(InputData==CurrentPassword){if(首次正确){开锁继电器;}else{//第二次正确输入ReInputEn=1;//允许重置密码}}//错误处理else{ErrorCont++;if(错误达3次)永久锁定;}}}4.1密码验证与重置voidResetPassword(void){if(ReInputEn==1&&PressNum==6){if(是第一次输入新密码){保存到TempPassword;提示"inputagain";}else{//第二次输入if(TempPassword==InputData){WRITE_DATA_TO_FLASH(TempPassword,6);//写入新密码LCD显示"ResetPasswordOK";}else{LCD显示错误;}}}}4.2密码重置流程5实物的制作与调试5.1电路板焊接焊接工艺质量是影响硬件设备可靠性的关键因素,其缺陷主要表现为以下六种典型形态:首先,焊锡用量控制不当会导致焊点包裹不充分或锡堆积现象;其次,冷焊问题源于烙铁温度不足或加热时间过短,表现为焊锡未完全熔融浸润,表面呈现不光滑的豆腐渣状裂纹;松香残留问题可分为两类——加热不足形成的黄褐色松香膜可通过补焊修复,而高温碳化的黑色松香膜则需彻底清除焊锡并重新焊接;焊锡连桥现象常见于高密度元器件焊接,过量焊锡导致相邻焊点短路;焊剂过量会形成明显松香残留,可通过二次加热挥发或酒精棉球擦拭清除;最后,焊点尖锐突尖的形成机制涉及温度控制、焊剂用量及烙铁撤离角度等多重因素。5.2电路板调试为确保最小系统电路的正常运行,首要步骤是检测电源电压的稳定性,具体操作可通过电压表对电源引脚与接地引脚之间的电位差进行测量,以验证其是否符合常规5V左右的供电标准。随后需进一步检查复位引脚

温馨提示

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

评论

0/150

提交评论