商丘市网站建设_网站建设公司_前端开发_seo优化
2026/1/7 14:40:10 网站建设 项目流程

第二章 整体方案设计

2.1 需求分析
搭建简单的智能门锁系统作品,需要相应的硬件与软件结合,本设计基于STM32的智能门锁系统主要实现的功能要求有:
(1)显示屏显示操作界面;
(2)使用者可以通过设置按键进入管理界面,可以修改密码,管理指纹库以及IC卡信息管理;
(3)密码断电也不会丢失,具有断电存储功能;
(4)支持虚伪密码,在正确密码前后可随意输入数字,保护真实密码;
(5)录入正确的指纹之后,当手指放在指纹识别模块上面,检测到指纹正确之后便会打开门锁;
(6)添加IC卡信息后,IC卡放在读卡模块上进行读取识别,检测到IC卡信息正确打开门锁;
(7)通过按键输入开锁密码,密码匹配正确则开锁;
(8)如果指纹、IC卡、密码等信息识别匹配错误,五次以上识别错误系统便会锁死;
(9)系统具备管理员密码,即使忘记密码之后,管理员密码也可以打开电磁锁。
以上的功能都需要使用不同的传感器模块来实现,比如输入密码需要使用矩阵按键模块;指纹识别需要用到生物指纹识别模块;IC卡识别需要使用射频读取模块;信息显示需要用到LCD显示屏等。通过STM32主芯片连接各种传感器进行数据处理,实现上述各项功能。
2.2 系统整体方案
硬件系统设计与软件系统设计的组合构成了基于STM32的智能门锁系统设计。硬件系统的设计由STM32F103C8T6单片机核心板电路、AS608生物指纹识别电路、RC522读卡模块识别电路、薄膜矩阵键盘电路、LCD12864液晶显示电路和蜂鸣器电路组成。在软件系统设计中,对指纹识别模块采集的指纹数据经过图像归一化、图像二值化、细化以及多重滤波等方式进行处理,再与存储的指纹进行识别匹配,同时在LCD12864液晶显示屏上显示处理过程信息。对通过RFID-RC522射频模块检测的IC卡进行匹配,查找内存中是否存在该卡信息,LCD12864液晶显示屏显示相关信息。对通过矩阵键盘输入的密码进行遍历匹配,查找输入的密码信息中是否存在正确密码,并且通过LCD液晶显示屏实时显示相关的操作信息。
2.3 系统整体框架图
为了实现上述需求,需要对各个传感器电路进行设计搭建,系统整体框架如下图2.1所示。

图2.1 系统整体框图

第三章硬件电路的设计

3.1 硬件电路总体设计
一种基于STM32的智能门锁系统的整体构成主要硬件是AS608生物指纹识别模块、RC522读卡模块、薄膜矩阵键盘模块、LCD12864液晶显示屏模块、有源蜂鸣器模块、以及STM32F103低功耗系列单片机及其电路组成的电路。还有电源部分,分别提供合适的电压电源给STM32单片机,硬件功能框如图3.1所示。

图3.1 硬件电路功能框图
3.2 传感器模块电路设计
3.2.1 STM32单片机核心电路设计
本设计采用STM32F103主控芯片,以ARM32位Cortex-M3高性能CPU为核心,工作频率为72 MHz。该芯片具有三种低功耗模式,包括睡眠模式,所有外围设备仅在CPU停止以及发生中断或事件时才连续运行,停止模式以最小的功耗保持寄存器和SRAM的内容[1]。同时,当STM32f103进入停止或待机状态时,相关的时钟不会停止,电池电压仅向实时时钟RTC和备份寄存器供电,以最大程度地提高能效并以最小的功耗完成任务。该芯片具有最高的集成度,内置复位电路、带唤醒功能的低电压检测功能、稳压器、兼容5V输入输出引脚以及精确的内部RC振荡器等,这为开发人员带来了灵活性。除了与突出的简单结构和制造工艺相关的节能特性之外,STM32f103系列还提供了额外的功能,使开发人员能够提高应用程序设计的效率和可行性。STM32f103还设置了两种调试模式,包括串行调试SWD接口,可通过ST-Link或J-Link进行调试。多达112个快速I / O端口,可轻松实现数字和模拟I / O。单片机核心板电路图如图3.2所示。

图3.2 STM32单片机核心板接口原理图
实物图如下图3.3所示。

图3.3 STM32单片机核心板实物图

第四章系统软件设计分析

4.1 单片机程序开发环境
本项目设计使用的开发环境是Keil uvisin5,它是当前比较流行的一种嵌入式开发环境。Keil uVision 5提供了完整的Windows开发环境界面,支持C/C++语言开发,具有很高的C语言编辑效率,使开发者可以非常方便地使用C语言进行研发[7]。Keil uvisin5的开发界面如图4.1所示。

图4.1 Keil uVision5软件开发界面图
其中Keil具有以下特点:
Keil支持Windows操作系统,提供了丰富的开发库和强大的开发调试工具;
Keil可以完成完整的软件开发工作,从编辑,编译,链接,调试到最终仿真的过程;
Keil uvisin5为Keil uvisin4ide添加了许多新功能。例如,Keil uvisin5增强了对Cortex-M核心微控制器的开发支持,并改进了Keil uvisin4的开发形式和接口。
4.2 ARM软件库开发流程
(1)首先建立“Project”工程,先在本地新建一个文件夹,用来保存工程的固件库文件;
(2)在工程文件里分别添加STARUP、CMSIS、STM32F4xx_StdPeriph_Driver、User、Doc组目录;
(3)在工具链中的C/C++选项卡里面指定头文件的目录;
(4)在工具链中的C/C++选项卡里面添加这两个宏:
USE_STDPERIPH_DRIVER,STM32F429_439xx,
(5)屏蔽掉不需要使用的文件:
stm32f4xx_cec.c,stm32f4xx_dsi.c,stm32f4xx_flash_ramfurc.c,stm32f4xx_fsmc.c,stm32f4xx_qspi.c
(6)删除stm32f4xx_it.c文件里的下面代码语句:
#include ”main.h”, TimingDelay_Decrement();
(7)最后所使用的配置仿真器即可完成工程的建立了。具体工程开发如下图4.2所示。

图4.2 Keil uVision5软件开发流程图

第五章系统的焊接与调试

5.1 电路焊接
手工焊接是一种最常见的原始焊接方法。目前,虽然许多工厂的焊接生产基本上不使用该方法,但在进行系统测试还是会经常使用手工焊接[8]。重要的是,如果焊接过程中出现问题,整个控制系统都会受到影响,可以说焊接会使控制系统不能使用。手工焊接主要有如下四步组成的:
第一步是开始焊接。要焊接的地方要清理干净,主要是去除油渍和灰尘,然后要焊接的部分要在一定方向上以两个角度折叠。小心不要交叉每个零件的腿,这会影响焊接。接下来,让焊接头接触待焊接部件的底部,并将其放在电线上。应该注意的是,焊头不能接触到其他零件的脚,否则这两个零件将被焊接在一起。
第二步是热焊接。在第一步之后,下一步是加热焊锡丝。主要是把一个热烙铁放在设备的引脚旁边,慢慢熔化焊丝。必须注意电烙铁的温度和加热时间。如果时间太长,它很可能被焊接到面包板衬垫上。通常建议将电烙铁的温度调节到大约400度。加热大约2秒钟。这一例外也是基于设备类别的具体差异。在焊接过程中,当需要移除焊接部分时,也需要加热焊接部分。主要操作是在焊接处修补焊丝,使焊点变圆,然后通过电火花加工加热焊接处。在加热过程中,可以直接移除部件。此时,必须采取注意时间,否则垫将被损坏。
第三部分是焊接表面的清洁。第二步完成后,有时会发现焊接不完美或害怕焊接错误,需要对焊接进行添加修改,主要会出现的主要有两种情况,一种是焊锡不足,焊点不圆。这时,有必要修理焊点。此时应注意,不能增加焊料的数量,否则在其他时间段内很容易连接到引脚。第二点是焊料过多。此时,您可以使用烙铁来回滑动焊料,这将带走多余的焊料。如果不能,则只能使用吸锡器。
第四部分是焊点检查。完成前面的三个步骤后,就需要对系统电路进行整体的观察,主要是查看焊接点是否完整,光亮,牢固,并是否与其他引脚连接以及是否有漏焊。
5.2 系统调试
记住必须认真观察焊接系统是否存在问题,例如正极和负极的反向连接或者连接,明显的断裂,虚焊问题等。然后使用万用表检查是否存在严重的电源问题,例如正极和负极之间的短路,以确保系统焊接没有问题。
配置完成调试平台后,我们需要调试软件程序。如果程序调试没有问题,请开始验证系统功能是否符合要求。如果功能没有满足设计要求或者存在问题,就继续重复进行调试程序,直到满足所有功能要求为止。
5.2.1 系统程序调试
在前面新建的工程里面完成整体代码的编写,然后单击keil uvisin5软件左上角的编译按钮,系统将对工程代码文件进行编译,可以在keil uvisin5软件下面的Build Output窗口中看到相应的提示信息。如果有错误消息,则必须按照提示查找并纠正错误,直到没有错误并且实物功能满足要求为止(如果是一般警告则可以忽略)。

图5.1 程序编译无误提示界面
5.2.2 系统硬件调试
软件调试完成后,接下来就是对整个硬件进行测试,主要使用各种调试设备对焊接板进行整体调试,例如:万用表、直流电源或示波器等。主要检查设备是否能够工作进行正常。
(1)肉眼进行观察。仔细观察每个焊接点是否有虚焊现象,每个器件之间是否有存在短接现象,从而导致系统短路。
(2)使用万用表进行调试。首先检查电源是否短路,然后测量引脚连接是否正确,是否存在接线错误。
(3)上电检查。完成第一步和第二步后,接下来,可以打开电源对系统进行通电。上电后,观察各个模块是否工作正常,然后逐个测试功能。
5.3 实物测试
最后是对整个系统进行软件与硬件联调,以达到项目设计的要求。它支持指纹、NFC、密码以及感应卡四种方式进行开锁;通过LCD12864液晶显示屏显示系统操作界面,分别有运行界面、密码管理界面、指纹管理界面以及IC卡管理界面;具有分级管理权限,管理员权限才可以进行增删信息,比如修改密码、添加或者删除指纹信息以及IC卡信息等;支持虚伪密码,在正确密码前后可随意输入数字,保护真实密码;多次密码或指纹开锁失败则劫持开锁,使用管理员密码即可开锁并恢复正常。
经过测试,系统各项功能测试正常,符合设计要求,如下图5.2所示。

图5.2 实物运行测试图

文章底部可以获取博主的联系方式,获取源码、查看详细的视频演示,或者了解其他版本的信息。
所有项目都经过了严格的测试和完善。对于本系统,我们提供全方位的支持,包括修改时间和标题,以及完整的安装、部署、运行和调试服务,确保系统能在你的电脑上顺利运行。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询