key_74165.c
来自「C语言单片机编程的代码及教程文献」· C语言 代码 · 共 42 行
C
42 行
#define KEY_74165_GLOBALS
#include<reg51.h>
#include"Key_74165.h"
/*******************************************************************
函数名称:GetKey
即时返回扫描到的键值
********************************************************************/
uint8 GetKey(void)
{
uint8 i,buf;
Key_CS =1;
Key_CLK=1;
Key_SL =0;
Key_SL =1;
Key_CS =0;
buf=0x00;
for(i=1;i<17;i++) //读入键值
{
Key_CLK=1;
Key_CLK=0;
if(Key_OUT==0)return i;
buf<<=1;
}
return 0;//没有读到键值,返回0
}
/*******************************************************************
函数名称:GetOneKey
扫描键盘,等用户释放再返回键值,ASCII码:0~f
********************************************************************/
uint8 GetOneKey(void)
{
uint8 key1=0;
uint8 key2=0;
while(key1==0)key1=GetKey();
key2=GetKey();
while(key1==key2)key2=GetKey();
if(key1<10)return key1+'0';
else return (key1+'a'-10);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?