• 方案介绍
  • 相关推荐
申请入驻 产业图谱

基于51单片机指纹识别管理门禁密码锁系统设计

04/15 15:28
256
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

1 系统功能介绍

本设计实现了一套 基于 51 单片机指纹识别管理门禁密码锁系统,该系统融合了指纹识别与密码输入两种身份认证方式,结合继电器实现电子门禁控制,具有较强的安全性与实用性。系统由 STC89C52 单片机最小系统电路LCD1602 液晶显示、指纹识别模块、按键输入电路、继电器驱动电路电源模块构成,能够完成用户身份验证、密码管理、指纹录入与删除、开锁控制等功能。

主要功能包括:

  1. 双重验证模式:既可通过指纹识别进行开锁,也可通过密码验证实现门禁控制。
  2. 指纹管理:系统支持指纹搜索、增加、删除,指纹信息存储在模块内部,具有掉电不丢失功能。
  3. 密码管理:支持 6 位数字密码输入,默认开锁密码为“112233”,可由管理员在正确输入管理员密码(123123)后修改,修改后的密码掉电不丢失。
  4. 多模式切换:系统上电进入模式选择界面,可通过按键在“指纹管理”和“控制系统”模式之间自由切换。
  5. 安全提示:在 LCD 显示屏上实时显示操作提示与验证结果,如“PW OK!”、“PW Err!”、“SET OK!” 等。
  6. 继电器开锁控制:当身份验证成功后,继电器闭合 3 秒,模拟电子锁开启动作,随后自动断开。
  7. 出门按钮功能:设置单独按键,实现类似门禁系统的“出门开锁”操作。

该系统不仅具备传统门禁的开锁功能,还支持管理员对指纹与密码进行管理,实现了较高的灵活性与安全性。


2 系统电路设计

2.1 STC89C52 单片机最小系统

STC89C52 单片机作为系统核心,负责与指纹模块通信、密码存储与比对、继电器控制及显示管理。

  • 主要电路组成
  • 功能作用:完成指纹管理、密码管理逻辑判断,并通过串口与指纹模块通信,同时驱动 LCD1602 显示用户界面。

2.2 指纹识别模块电路

采用常用的 UART 通信指纹模块(如 R305)。

  • 电气连接:模块 TXD、RXD 分别与单片机串口引脚相连,电源 VCC 接 +5V。
  • 功能作用:实现指纹录入、搜索、删除及比对等功能,存储指纹数据并在掉电后保持不丢失。

2.3 LCD1602 显示电路

LCD1602 用于显示系统运行状态、用户提示信息。

  • 显示内容
    • 模式选择界面;
    • 指纹录入/删除/搜索状态;
    • 密码输入与验证提示;
    • 继电器开关状态。
  • 连接方式:使用 8 位或 4 位数据总线与单片机连接,控制端 RS、RW、E 接单片机 I/O 口。

2.4 按键输入电路

  • 主要功能
    1. 模式切换按键:切换“指纹管理”和“控制系统”模式;
    2. 密码输入按键:0-9 数字键,供用户输入 6 位密码;
    3. 确认/取消按键:完成输入确认或返回上一级菜单;
    4. 出门按钮:模拟门禁中从内部直接开门的功能。
  • 电路实现:按键一端接单片机 I/O 口,另一端接地,并通过上拉电阻保证信号稳定。

2.5 继电器驱动电路

继电器用于模拟电控门锁的开关。

  • 驱动原理:单片机 I/O 口输出信号控制三极管(如 8050)导通,驱动继电器动作。
  • 功能作用:身份验证通过后继电器闭合 3 秒,模拟门锁打开,时间到后断开。

2.6 电源电路

系统采用 +5V 直流电源供电。指纹模块和单片机均使用 5V,必要时可通过 AMS1117 等稳压芯片转换电压。


3 程序设计

3.1 主程序框架

#include <reg52.h>
#include "lcd.h"
#include "finger.h"
#include "password.h"
#include "relay.h"
#include "key.h"

void main()
{
    LCD_Init();
    Finger_Init();
    Password_Init();
    Relay_Init();
    Key_Init();

    LCD_ShowString(0,0,"System Start");
    DelayMs(1000);

    while(1)
    {
        Mode_Select();    // 模式选择:指纹管理/控制系统
    }
}

主程序完成系统初始化,并通过循环函数进入模式选择界面,用户可根据需求进入指纹管理或控制系统。


3.2 模式选择程序

void Mode_Select(void)
{
    LCD_Clear();
    LCD_ShowString(0,0,"1:Finger Mng");
    LCD_ShowString(1,0,"2:Control Sys");

    key = Key_Scan();
    if(key == 1) Finger_Manage();
    else if(key == 2) Control_System();
}

通过按键选择进入不同模式,LCD 显示当前选项。


3.3 指纹管理程序

void Finger_Manage(void)
{
    LCD_Clear();
    LCD_ShowString(0,0,"1:Search");
    LCD_ShowString(1,0,"2:Add 3:Del");

    key = Key_Scan();
    if(key == 1) Finger_Search();
    else if(key == 2) Finger_Add();
    else if(key == 3) Finger_Delete();
}

在指纹管理模式下,用户可以完成指纹的搜索、录入和删除操作。


3.4 控制系统程序

void Control_System(void)
{
    LCD_Clear();
    LCD_ShowString(0,0,"1:Finger Open");
    LCD_ShowString(1,0,"2:PW Open");

    key = Key_Scan();
    if(key == 1)
    {
        if(Finger_Check()==SUCCESS)
        {
            LCD_ShowString(0,0,"Search OK ID*");
            Relay_On();
            DelayMs(3000);
            Relay_Off();
        }
        else LCD_ShowString(0,0,"Finger Err!");
    }
    else if(key == 2)
    {
        if(Password_Check()==SUCCESS)
        {
            LCD_ShowString(0,0,"PW OK!");
            Relay_On();
            DelayMs(3000);
            Relay_Off();
        }
        else LCD_ShowString(0,0,"PW Err!");
    }
}

此程序用于系统实际控制,包括指纹开锁和密码开锁。


3.5 密码管理与修改程序

void Password_Set(void)
{
    LCD_Clear();
    LCD_ShowString(0,0,"Input Admin PW:");
    if(Password_Input()==ADMIN_PW)
    {
        LCD_ShowString(1,0,"intSet!");
        NewPW = Password_Input();
        SavePassword(NewPW);
        LCD_ShowString(1,0,"SET OK!");
    }
    else
    {
        LCD_ShowString(1,0,"PW Err!");
    }
}

该程序实现密码的修改功能,只有输入管理员密码 123123 才能进入密码设置界面,防止非法修改。


3.6 继电器驱动程序

void Relay_On(void)
{
    P2 = 0xFE;   // 控制继电器闭合
}
void Relay_Off(void)
{
    P2 = 0xFF;   // 控制继电器断开
}

继电器开关与 LCD 显示结合,便于用户直观了解门锁状态。


4 总结

本系统通过 STC89C52 单片机指纹识别模块密码输入功能 的结合,实现了一种功能丰富、安全可靠的门禁系统。其主要优点如下:

  1. 多模式验证:指纹识别与密码输入双重认证,提高安全性。
  2. 完善的指纹管理功能:支持指纹搜索、录入与删除,且指纹存储掉电不丢失。
  3. 灵活的密码管理:用户可在管理员授权下修改开锁密码,保证系统灵活性和安全性。
  4. 人性化交互:LCD1602 实时提示操作结果,增强用户体验。
  5. 安全可靠:继电器模拟门锁,具备开关状态显示和定时控制功能。

综上,本设计不仅满足普通门禁的开锁需求,还具备强大的扩展性与实用性,可广泛应用于家庭、办公室、实验室等多种场景。

相关推荐