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

📄 getkey.c

📁 8255卡驱动,应该不错
💻 C
字号:
#include<_REG51_.H>
#include<_ExF(x)_.h>
//-----------------------------
uchar	Tab1[]={0xf7,0xfb,0xfd,0xfe};
sfr		KeyPort=0x90;
//-----------------------------
uchar	ReadKey(void)
	{
		uchar	i=0,keybyte=0;
		bit		keyflag=0;
		KeyPort	=0xF0;
		_nop_();
		if(KeyPort!=0xF0)
			{
				while((keyflag==0)&&(i<4))
					{
						KeyPort=Tab1[i];
						Delay(2);		   //delay for 11+2*6=23uS.
						if(KeyPort!=Tab1[i])
							{
								 keybyte=KeyPort;			  //save the key.
								 keyflag=1;					  //get key ok.
								 while(KeyPort!=Tab1[i]){;}	  //waiting for key released.
							}
						i++;								 
					}										
				return	keybyte;					
			}
		else	
		{
		//	KeyPort	=0xFF;
			return	0;
		}		
	}
//-----------------------------
uchar	Getkey(void)
		{
			uchar	keydat;
			keydat=ReadKey();
			switch(keydat)
			{
				case	0xEE:	return	1;	   	break;
				case	0xED:  	return	2;	   	break;
				case	0xEB:	return	3;	   	break;
				case	0xE7:	return	4;	  	break;
				case	0xDE:	return	5;	   	break;
				case	0xDD:  	return	6;	   	break;
				case	0xDB:	return	7;	   	break;
				case	0xD7:	return	8;	   	break;
				case	0xBE:	return	9;	   	break;
				case	0xBD:  	return	10;	   	break;
				case	0xBB:	return	11;	   	break;
				case	0xB7:	return	12;	   	break;
				case	0x7E:	return	13;	   	break;
				case	0x7D:  	return	14;	   	break;
				case	0x7B:	return	15;	   	break;
				case	0x77:	return	16;	   	break;
				default:		return	0;		break;
			}
		}

⌨️ 快捷键说明

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