矩阵键盘密码锁

简介: 矩阵键盘密码锁

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月前
|
数据安全/隐私保护
C51单片机实现矩阵键盘密码锁
C51单片机实现矩阵键盘密码锁
48 0
|
9月前
|
安全
51单片机和LCD1602实现简单的密码锁
51单片机和LCD1602实现简单的密码锁
79 0
|
9月前
【单片机期中测试】6.简单PWM呼吸灯
【单片机期中测试】6.简单PWM呼吸灯
57 0
|
9月前
|
容器
基于51单片机的电话拨号报警器(2)
基于51单片机的电话拨号报警器(2)
|
9月前
|
算法 编译器 网络性能优化
基于51单片机的电话拨号报警器(1)
基于51单片机的电话拨号报警器(1)
140 0
【51单片机】花式流水灯
【51单片机】花式流水灯
246 0
蓝桥杯之单片机学习(二)——蜂鸣器与继电器的基本控制
蓝桥杯之单片机学习(二)——蜂鸣器与继电器的基本控制
353 0
蓝桥杯之单片机学习(二)——蜂鸣器与继电器的基本控制
|
芯片
基于单片机的红外遥控LED电子钟
基于单片机的红外遥控LED电子钟
基于单片机的红外遥控LED电子钟