📄 scankey.c
字号:
#define SCANKEY 1
#include <LPC23XX.h>
#include "type.h"
//#include "usbhw.h"
#include "scankey.h"
void KeyInit(void)
{
PINSEL1 = (PINSEL1&0xF0FFFFFF)|0x00000000; //选择为GPIO口作用
PINSEL10 = 0; //禁止ETM
IODIR1=( IODIR1&0xF0FFFFFF)|0x00000000; //设置为输入
OldKey=(BYTE)((IOPIN1&0x0F000000)>>24)&0x0F;
KeyPressFlag=0;
KeyState=KEYDOWN;
}
void ScanKey(void)
{
BYTE i;
KeyCurrent=(BYTE)((IOPIN1)>>24)&0x0F;
if( KeyCurrent != OldKey )
{ OldKey=KeyCurrent;
KeyPressFlag=1; //有key按下
KeyState=KEYDOWN;
if(KeyCurrent == 0x0f) //当按键松开时,把第5组数据修改为1
{KeyBoardValue[4]=1;return;}
if( KEY(24) == 0)
{ // keypressflag=1; //衚ey绰
KeyBoardValue[2]= 0x62; //0
while(KEY(24) == 0 );
}
else if( KEY(25) == 0 )
{ // KeyPressFlag=1; //有key按下
KeyBoardValue[2]= 0x59; //1
while(KEY(25) == 0);
}
else if(KEY(26) == 0)
{ // KeyPressFlag=1; //有key按下
KeyBoardValue[2]= 0x5A; //2
while(KEY(26) == 0 );
}
else if(KEY(27) == 0)
{ // KeyPressFlag=1; //有key按下
KeyBoardValue[2]= 0x5B; //3
while(KEY(27) == 0);
}
}else
{for(i=0;i<8;i++)
KeyBoardValue[i]=0;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -