⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 key.h

📁 这里是电子密码锁的全部设计过程
💻 H
字号:
#ifndef _key_h
#define _key_h
#include"at89x51.h"
#define uchar unsigned char 
#define uint unsigned int
uchar ki=0,flag;	 //flag是按键标志 ki是获得的键盘数
/***1ms延时**/
void delay(uint k)
{
  k=k*125;
  while(k--);
}
/***键盘编号程序**/
uchar number(uchar k)
{
  uchar sum;
  switch(k)
  {
    case 1:sum=0;break;
	case 2:sum=1;break;
	case 4:sum=2;break;
	case 8:sum=3;break;
	default:break;
  }
  return sum;
}
/***键盘程序**/
key(void)
{
  uchar m,n;
  P3=0x0f;
  delay(1);
  if(P3!=0x0f)
   {
     P3=0x0f;
	 delay(3);
	 m=P3;
	 if(m!=0x0f)
	  {
	    m=m^0x0f;
		m=number(m);
		m=4*m;
		P3=0xf0;
		delay(1);
		if(P3!=0xf0)
		  {
		    n=P3^0xf0;
		    n=n>>4;
			n=number(n);
			ki=m+n;		  //ki是获得的键盘号
			flag=1;
			do
			 {
			 P3=0x0f; 
			 }
			 while(P3!=0x0f);  //松开按键才可以继续
          }
	  }
   }
}
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -