📄 key.c
字号:
/*************************************************************************************
** Copyright (c) 2007,XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
** http://XXXXXXXXXXXXXXXXX
**文件名称:key.C
**功能说明:与按键相关的函数等
**使用说明:
** 当前版本: 1.0
** 作 者: XXX
** 完成日期: 2007年xx月xx号
*************************************************************************************/
/************************************************************************************
引脚分布
P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7
TX0 RX0 CS1 K4 K3
P0.8 P0.9 P0.10 P0.11 P0.12 P0.13 P0.14 P0.15
TX1 RX1 RW SCL SDA K1 VRST K2
P0.16 P0.17 P0.18 P0.19 P0.20 P0.21 P0.22 P0.23
BEEP SCK1 MISO MOSI SSEL RS_COM RW VB
P0.24 P0.25 P0.26 P0.27 P0.28 P0.29 P0.30 P0.31
AOUT D+ D- A_IN1 A_IN2 CS2 ULED
LED引脚
L1---------L8
P1.16----P1.23
***********************************************************************************/
#include "lpc214x.h"
#include "common.h"
//#include "config.h"
/*************************************************************************************
* 函数原型: INT8U Scan_Key(void)
* 功能描述: 键值扫描函数
* 输入参数:
* 输出参数:
* 返回值 : 0~4的某个键值
**************************************************************************************/
INT8U Scan_Key(void)
{ INT32U i;
INT32U j;
INT8U key;
i=IO0PIN|(~((1<<6)|(1<<7)|(1<<13)|(1<<15)));
if(i==0xFFFFFFFF)
key=0;
else
{//OSTimeDlyHMSM(0,0,0,5);
delay(20);
j=IO0PIN|(~((1<<6)|(1<<7)|(1<<13)|(1<<15)));
if(j==0xFFFFFFFF)
key=NO_KEY;
else
if(j==i)
{i=~i;
if((i&(1<<13))!=0)
key=KEY1;
else if((i&(1<<15))!=0)
key=KEY2;
else if((i&(1<<7))!=0)
key=KEY3;
else if((i&(1<<6))!=0)
key=KEY4;
else key=NO_KEY;
}
else
key=NO_KEY;
}
return(key);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -