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

📄 getkey.c

📁 温度传感器DS18B20驱动程序晶振是11.0592MHZ希望对大家有帮助!
💻 C
字号:
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char

#define key_bus P0
uchar  code tablekey[16]={15,0,14,13,7,8,9,12,4,5,6,11,1,2,3,10};    //查表对应键盘
/*****************读按键***************/
uchar getkey()
{
    uchar keycode=0xff,temp,i;
    key_bus=0x0f;
	temp=key_bus&0x0f; 
	if(temp!=0x0f)              //有键按下
	{
	    key_bus=0x7f;
	    for(i=0;i<4;i++)
		{
			temp=key_bus&0x0f;
            if(temp==0x07)
	        {    
			    keycode=i*4;
				break;
			}
	        else if(temp==0x0b)
			{
	            keycode=i*4+1;
				break;
			}
    	    else if(temp==0x0d)
			{
	            keycode=i*4+2;
				break;
			}
    	    else if(temp==0x0e)
			{
	            keycode=i*4+3;
				break;
			}
			key_bus=(key_bus>>1)|0x80;
		}

	     while((key_bus&0x0f)!=0x0f)   //等待释放
		 {
		     key_bus=0x0f; 
		 }
 								                
	 }
	 return tablekey[keycode];
}	    


⌨️ 快捷键说明

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