📄 keys.h
字号:
/*******************************************************************
*【文 件 名】:keys.h *
*【建立日期】:2008年7月3日 *
*【修改日期】:2008年7月4日 *
*【文件作用】:液晶12864驱动程序,包括所有关于液晶得函数 *
*【说 明】:操作按键提供直接调用函数,内部包括按键去抖 *
*------------------------------------------------------------------*
*【作 者】:郭鑫(ben) *
*【版 权】:国家创新性实验项目,编号GCS07001 *
*******************************************************************/
#ifndef _KEYS_08_07_04_
#define _KEYS_08_07_04_
/***************************头文件部分*****************************/
//#include <reg52.h>
/*
sbit key5 = P0^5;
sbit key4 = P0^4;
sbit key3 = P0^3;
sbit key2 = P0^2;
sbit key1 = P0^1;
sbit key0 = P0^0;
/***************************函数声明*******************************/
uchar key_check(uchar num);
/*******************************************************************
*【函 数 名】:key_check *
*【修改日期】:2008年7月3日 *
*【函数作用】:检测按键情况, 1:有相应按键按下 0:反之 *
*------------------------------------------------------------------*
*【备 注】: *
*******************************************************************/
uchar key_check(uchar num)
{
uchar sta;
P0 = 255;
delayMs(1);
switch(num)
{
case 1:
if(P0 == 0xfd)
{
delay(8);
if(P0 == 0xfd)
{
while(P0 == 0xfd);
sta = 1;
}
}
else
sta = 0;
break;
case 2:
if(P0 == 0xfb)
{
delay(8);
if(P0 == 0xfb)
{
while(P0 == 0xfb);
sta = 1;
}
}
else
sta = 0;
break;
case 3:
if(P0 == 0xf7)
{
delay(8);
if(P0 == 0xf7)
{
while(P0 == 0xf7);
sta = 1;
}
}
else
sta = 0;
break;
case 4:
if(P0 == 0xef)
{
delay(8);
if(P0 == 0xef)
{
while(P0 == 0xef);
sta = 1;
}
}
else
sta = 0;
break;
case 5:
if(P0 == 0xdf)
{
delay(8);
if(P0 == 0xdf)
{
while(P0 == 0xdf);
sta = 1;
}
}
else
sta = 0;
break;
case 0:
if(P0 == 0xfe)
{
delay(8);
if(P0 == 0xfe)
{
while(P0 == 0xfe);
sta = 1;
}
}
else
sta = 0;
break;
}
// P0 = 255;
// delayMs(1);
return sta;
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -