4x4key.c
来自「与C51相关模块LCD,24CXX,等的源代码程序」· C语言 代码 · 共 32 行
C
32 行
//--------------------------------------------------------
#include <at89x51.h>
#include "4X4Key.h"
//--------------------------------------------------------
#define KEYPORT P1
#define HLINES 4
#define VLINES 4
//--------------------------------------------------------
unsigned char GetKey(void);
//--------------------------------------------------------
static unsigned char oldkey=0;
//--------------------------------------------------------
unsigned char GetKey(){
unsigned char i,j,tmp;
KEYPORT=0xf0;
tmp=~(KEYPORT|0x0f);
if(!tmp){oldkey=NOKEY;return NOKEY;}
if(oldkey!=NOKEY)return NOKEY;
for(i=0;i<HLINES;i++){
KEYPORT=~(1<<i);
tmp=~(KEYPORT|0x0f);
for(j=0;j<VLINES;j++)if(tmp==(0x10<<j)){
oldkey=i*4+j;
return oldkey;
}
}
return NOKEY;
}
//--------------------------------------------------------
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?