基于51单片机掉电保存密码修改的智能密码锁设计(毕设课设)

电子密码锁功能简介:

  • 1.单片机型号:STC89C52/51、AT89C52/51、AT89S52/51可以任选。
  • 2.采用矩阵按键输入、1602液晶显示、继电器模拟开锁、发光二极管为开锁指示灯,继电器是可以外接电锁的。
  • 3.有报警、锁定键盘功能,如果密码输入错误3次,系统会锁住键盘1分钟并有蜂鸣器声音报警提示,1分钟后可以再次输入密码。
  • 4.可以设置修改密码(6位数的密码)(0-9之间任意数字),修改密码之前必须再次输入原始密码,在输入新密码时要输入两次确认并相同才可以修改成功,否则修改不成功,防止误操作。
  • 5.密码支持掉电保存功能,应用AT24C02芯片保存密码,可以随时修改密码,密码输入过程中,可按清除键逐个删除已输入的数字。
  • 6.液晶背光可控功能,当没有按键按下30秒后,液晶背光可以自动关闭,再有按键按下就可以重新点亮背光,不管是白天还是晚上都可以节约电能,优点即节能又不影响操作。
  • 7.有管理员密码,即使忘记密码也不怕,只要输入管理员密码就可以把密码还原成初始密码。

【资源下载】下载地址如下(910):https://docs.qq.com/doc/DTlRSd01BZXNpRUxl

#include <reg52.h>	         //调用单片机头文件
#define uchar unsigned char  //无符号字符型 宏定义	变量范围0~255
#define uint  unsigned int	 //无符号整型 宏定义	变量范围0~65535

#include "lcd1602.h"
#include "iic.h"

uchar value,i;		//变量

uchar flag_lj_en;  //边加
uchar flag_lj_en_value;

sbit relay = P2^2;  //继电器定义
sbit beep  = P3^3;  //蜂鸣器定义

sbit beiguan = P2^3;  //背光

uint flag_time;

uint flag_guan;

uchar smg_i;
uchar dis_smg[7]={0};

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

bit flag_200ms=1;     //200ms标志位

uchar key_can;

uchar menu_1,menu_i;

posted @ 2021-01-05 15:42  roadroad  阅读(464)  评论(0编辑  收藏  举报
电设屋
上千套电子毕设课设方案