key4x4.h

来自「4X4矩阵键盘的驱动」· C头文件 代码 · 共 46 行

H
46
字号
//4&4键盘头文件定义 
#ifndef __KEY4X4_H__
#define __KEY4X4_H__
/*****************************************************************************/
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
/***************************************定义端口*****************************/

uchar key,temp,rec;

/****************************************延时函数*************************************/
void delay(uint i)			//i=1 为 1ms  最大可到 65535 ms
{
	 uchar j;
	 while(i--)
	 for(j=0;j<100;j++);
}
/*****************************************************************************/	

uchar keyscan()	    //按键扫描子程序
{	 	
	P0=0xf0;
	if((P0&0xf0)!=0xF0)
	  {	 	  	
		delay(3);		
		if((P0&0xf0)!=0xF0)
		{
			temp=0xfe;
			while((temp&0x10)!=0)
			{
				P0=temp;
				if((P0&0xf0)!=0xf0)
				{
				  rec=(P0&0xf0)|0x0f;
				  return((~rec)|(~temp));
				}
				else
				temp=(temp<<1)|0x01;				
			}
			delay(10);
		}
	  } 
}
/*****************************************************************************/
#endif

⌨️ 快捷键说明

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