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

📄 key.c

📁 keil c 文件 @@##%%…… &……源代码程序
💻 C
字号:
#include<reg51.h>
#include<absacc.h>
#define uint unsigned int
#define uchar unsigned char
/*********延时程序****************/
void delay_10ms(void) 
{ uchar i,j; 
 for(i=2000;i>0;i--) 
 for(j=24800;j>0;j--);
}  
  
/****扫描按键函数******/
uchar keyscan(void)
{
 uchar temp;  	
 uchar key=20;
 
 P1=0x7f;
  temp=P1;
  temp=temp&0x0f;
   if(temp!=0x0f)
	{

	delay_10ms();
	    switch(temp&0x0f)
		{                                                                                           


		case 0x0e:
 	    key=4;
		break;
		case 0x0d:
 	    key=8;
		break;
		case 0x0b:
 	    key=13;
		break;
	    case 0x07:
 	    key=16;
		break;
		default:break;
		}

	}


  P1=0xbf;
  temp=P1;
  temp=temp&0x0f;
   if(temp!=0x0f)
	{

	delay_10ms();
	    switch(temp&0x0f)
		{                                                                                           


		case 0x0e:
 	    key=3;
		break;
		case 0x0d:
 	    key=7;
		break;
		case 0x0b:
 	    key=11;
		break;
	    case 0x07:
 	    key=15;
		break;
		default:break;
		}

	}


  P1=0xdf;
  temp=P1;
  temp=temp&0x0f;
   if(temp!=0x0f)
	{

	delay_10ms();
	    switch(temp&0x0f)
		{                                                                                           


		case 0x0e:
 	    key=2;
		break;
		case 0x0d:
 	    key=6;
		break;
		case 0x0b:
 	    key=10;
		break;
	    case 0x07:
 	    key=14;
		break;
		default:break;
		}

	}


  P1=0xef;
  temp=P1;
  temp=temp&0x0f;
   if(temp!=0x0f)
	{

	delay_10ms();
	    switch(temp&0x0f)
		{                                                                                           


		case 0x0e:
 	    key=1;
		break;
		case 0x0d:
 	    key=5;
		break;
		case 0x0b:
 	    key=9;
		break;
	    case 0x07:
 	    key=13;
		break;
		default:break;
		}

	}


return key;


}

⌨️ 快捷键说明

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