矩阵键盘密码锁

简介: 矩阵键盘密码锁

1.其余文件均与前面的矩阵键盘章节引用文件相同




2.main.c文件

#include <REGX52.H>
#include "Delay.h"
#include "LCD1602.h"
#include "MatrixKey.h"
unsigned char KeyNum;
unsigned int Password=0,Count=0;
void main()
{
  LCD_Init();
  LCD_ShowString(1,1,"Password:");
  while(1)
  {
    KeyNum=MatrixKey();
    if(KeyNum)
    {
      if(KeyNum<=10)  //如果S1~S10按键按下,输入密码
      {
        if(Count<4) //如果输入次数小于4
        {
          Password*=10;       //密码左移一位
          Password+=KeyNum%10;    //获取一位密码
          Count++;  //计次加一
        }
        LCD_ShowNum(2,1,Password,4);  //更新显示
      }
      if(KeyNum==11)  //如果S11按键按下,确认
      {
        if(Password==2345)  //如果密码等于正确密码
        {
          LCD_ShowString(1,14,"OK "); //显示OK
          Password=0;   //密码清零
          Count=0;    //计次清零
          LCD_ShowNum(2,1,Password,4);  //更新显示
        }
        else        //否则
        {
          LCD_ShowString(1,14,"ERR"); //显示ERR
          Password=0;   //密码清零
          Count=0;    //计次清零
          LCD_ShowNum(2,1,Password,4);  //更新显示
        }
      }
      if(KeyNum==12)  //如果S12按键按下,取消
      {
        Password=0;   //密码清零
        Count=0;    //计次清零
        LCD_ShowNum(2,1,Password,4);  //更新显示
      }
    }
  }
}


相关文章
|
2月前
|
存储 数据安全/隐私保护
基于51单片机的6位密码锁设计
【10月更文挑战第11天】多功能电子密码锁系统由AT89C52单片机最小系统、4×4矩阵键盘、LCD1602显示、AT24C02存储模块以及报警系统等组成,具有设置、修改六位用户密码、超次报警、超次锁定、密码错误报警等功能。
94 23
|
小程序 芯片
基于51单片机的超声波测距(待改进)
基于51单片机的超声波测距(待改进)
119 0
|
7月前
|
数据安全/隐私保护
C51单片机实现矩阵键盘密码锁
C51单片机实现矩阵键盘密码锁
|
安全
51单片机和LCD1602实现简单的密码锁
51单片机和LCD1602实现简单的密码锁
129 0
|
容器
基于51单片机的电话拨号报警器(2)
基于51单片机的电话拨号报警器(2)
125 0
|
算法 编译器 网络性能优化
基于51单片机的电话拨号报警器(1)
基于51单片机的电话拨号报警器(1)
225 0
基于51单片机的8八路抢答器设计
(1)主持人进行复位,依次显示8位选手的分数,8位选手分数显示结束后主持人方可按下开始按键; (2)主持人按下抢答开始按键,抢答者才可以开始抢答,数码管抢答倒计时10S; (3)抢答者按下按键,数码管显示抢答者的编号和答题剩余时间倒计时20S; (4)在20S内,抢答者答题正确,主持人按下加分按键,分数加一,答错主持人按下减分按键,分数减一(默认抢答者的初始分数为60)。
221 0
|
SQL 芯片
数字式秒表电路设计
数字式秒表电路设计
207 1
数字式秒表电路设计

热门文章

最新文章