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

📄 jianpan.c

📁 实现键盘码的读取
💻 C
字号:
#include"reg51.h"#define unchar unsigned charvoid  delay();unchar keyscan();
void   main(){
   unchar key;
   P2=0x00;   while (1)  {
     key=keyscan();
     switch(key)     {
	   case 0x18:P2=0x3f;break;       case 0x14:P2=0x06;break;	   case 0x12:P2=0x5b;break;	   case 0x11:P2=0x4f;break;	 	   case 0x28:P2=0x66;break;       case 0x24:P2=0x6d;break;	   case 0x22:P2=0x7d;break;	   case 0x21:P2=0x07;break;	 	   case 0x48:P2=0x7f;break;       case 0x44:P2=0x6f;break;	   case 0x42:P2=0x77;break;	   case 0x41:P2=0x7c;break;	   case 0x88:P2=0x39;break;       case 0x84:P2=0x5e;break;	   case 0x82:P2=0x79;break;	   case 0x81:P2=0x71;break;
	   case 0x00:P2=0x76;break;
	   default: break;	}  }}  void  delay()  {  	unchar i;
	for(i=500;i>0;i--);   } unchar keyscan(){
    unchar scode,recode;
	static unchar m;    P1=0xf0;	if ((P1&0xf0)!=0xf0)	 { 
	    delay();	    if ((P1&0xf0)!=0xf0)		 	     { 
		    scode=0xfe;		    while((scode&0x10)!=0)  		    { 
		       P1=scode;		       if((P1&0xf0)!=0xf0)		         { 
			        recode=(P1&0xf0)|0x0f;
					m=(~scode)+(~recode);			        return (m);			     }		      else 				  scode=(scode<<1)|0x01;
		    }	     }	  }  return(m);
}

⌨️ 快捷键说明

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