尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

【51单片机】【protues仿真】基于51单片机密码锁系统 - 详解

【51单片机】【protues仿真】基于51单片机密码锁系统 - 详解
📅 发布时间:2026/6/19 6:41:48

【51单片机】【protues仿真】基于51单片机密码锁系统 - 详解

2025-09-23 20:07  tlnshuju  阅读(0)  评论(0)    收藏  举报

目录

一、主要功能

二、使用步骤

三、硬件资源

四、软件设计

五、实验现象

一、主要功能

初始普通用户密码 123123 功能:解锁 修改密码
管理员密码 520025 功能:恢复初始密码
信码 520520 功能:恢复管理员和密码使用

1、LCD1602液晶显示
2、矩阵按键​输入
3、密码输入错误3次,关闭管理员和用户密码功能
4、信码启用管理员和用户密码功能
5、修改密码,开锁后输入正确密码按修改密码按键进行修改
6、管理员密码输入后初始化普通用户密码
7、密码输出错蜂鸣器警报提示

二、使用步骤

51单片机密码锁平台采用AT89C51/52或STC89C51/52等51系列单片机作为控制核心,负责密码验证逻辑、外设协调和数据处理。

三、硬件资源

1、51单片机核心模块
2、矩阵按键模块
3、LED灯模块
4、蜂鸣器模块
5、继电器模块
6、LCD1602显示模块

四、软件设计

#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int

uchar i;

sbit relay = P2^2;
sbit beep = P3^3;

sbit beiguan = P2^3;

uint flag_time;

uint flag_guan;

uchar dis_smg[7]={0};

uchar password[7]={0};
uchar password_bj[7]={0};
uchar code password_r[6] = {1,2,3,1,2,3} ;
uchar code password_gl[6] = {5,2,0,0,2,5} ;
uchar code password_xm[6] = {5,2,0,5,2,0} ;
uchar password_xg[6]; //密码修改
uchar flag_password; //密码正确否
uchar flag_password_cichu1;//密码错误次数

uchar flag_200ms=1; //200毫秒的变量

uchar menu_1,menu_i;

sbit scl = P2^1; //24c02信号引脚
sbit sda = P2^0; //24c02数据引脚


void delay_1ms(uint q)
{
uint i,j;
for(i=0;i<q;i++)
for(j=0;j<120;j++);
}

sbit rs=P2^5; //寄存器选择信号 H:素材寄存器 L:指令寄存器
sbit rw=P2^6; //寄存器选择信号 H:内容寄存器 L:指令寄存器
sbit e =P2^7; //片选信号 下降沿触发
void delay_uint(uint q)
{
while(q--);
}



void write_com(uchar com)
{
rs=0; //写指令
rw=0; //对1602写操作
P0=com; //P0口对1602写指令资料
delay_uint(25);
e=1; //e=1使能信号
delay_uint(100); //延时一下等1602完成操作
e=0;
}


void write_data(uchar dat)
{
rs=1; //写数据
rw=0; //对1602写操控
P0=dat; //P0口对1602写数据
delay_uint(25);
e=1; //e=1使能信号
delay_uint(100); //延时一下等1602结束操作
e=0;
}
void main()
{
uint value;
beep = 0; //蜂鸣器响一声
delay_1ms(150);
P0 = P1 = P2 = P3 = 0xff; //初始化单片机IO口为高电平
scl = 0;
read_24c02_6(password); //读出保存的密码
init_1602(); //lcd1602初始化
beiguan = 0; //打开背光
while(1)
{
if(flag_password_cichu1 < 3) //错误三次 密码不能用了
{
key(); //按键函数
if(key_can < 20)
{
if(beiguan == 0)
{
if(menu_1 == 0)
key_with(); //按键处理函数
xiugai_password(); //修改密码
}
else
beiguan = 0;
flag_time = 0;
if(key_can == 12) //退出键
{
clear_shuzu(password_xg);
clear_shuzu(dis_smg);
write_string(1,0," Password Lock ");
write_string(2,0," Input: ");
lcd1602_guanbiao(1,7+0x40); //开光标
menu_1 = 0;
menu_i = 0;
}

}
}
if(flag_password_cichu1 >= 3) //错误三次密码启动信码按键 输入正确解锁
{
key(); //按键函数
if(key_can < 20)
{
if(beiguan == 0)
{
if(menu_1 == 0)
key_with_xinma(); //信码按键处理函数
xiugai_password(); //修改密码
}
else
beiguan = 0;
flag_time = 0;
if(key_can == 12) //退出键
{
clear_shuzu(password_xg);
clear_shuzu(dis_smg);
write_string(1,0," Password Code ");
write_string(2,0," Input: ");
lcd1602_guanbiao(1,7+0x40); //开光标
menu_1 = 0;
menu_i = 0;
}
}
}
flag_200ms ++;
if(flag_200ms >= 200)
{
flag_200ms = 0;
if(beiguan == 0) //延时关闭锁30秒关闭背光
{
flag_time ++;
if(flag_time >= 5 * 30) //30秒
{
flag_time = 0;
beiguan = 1; //关闭背光
}
}
if(relay == 0) //延时关闭锁
{
flag_guan++;
if(flag_guan >= 5 * 10) //10秒
{
flag_guan = 0;
relay = 1; //关闭密码锁

}
}else
flag_guan = 0;
}
delay_1ms(1);
}
}

五、实验现象

演示视频:

【51单片机-B048】【protues仿真】基于51单片机密码锁仿真

相关新闻

  • cv-css 快捷方式,将指定节点的计算样式获取下拉 获取tailwind网页样式成原生样式
  • # Shell 文本处理三剑客:awk、sed 与常用小器具详解
  • matter 协议解析;

最新新闻

  • vscode-edge-devtools 设备模拟功能详解:响应式设计调试技巧
  • Loop:优雅掌控macOS窗口管理的终极解决方案
  • 洛雪音乐免费音源终极配置指南:解锁全网无损音乐的完整教程
  • 2025年终极指南:如何快速上手MATH数据集进行AI数学推理评估
  • 陶瓷厂高温软水器十大实力口碑榜,采购照着选不踩坑 - 工业品牌热点
  • Cuckoo3终极指南:如何快速搭建开源恶意软件分析沙箱

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号