⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 key.c

📁 DS1302时钟+DS18B20程序 LCD1602显示 51单片机 keil 环境 和大家分享共同学习
💻 C
字号:
#include <REGX51.H>
/*code char key_code[]={0x7E,0XBE,0XBD,0XBB,0XDE,0XDD,0XDB,0XEE,
                      0XED,0XEB,0X7D,0X7B,0XE7,0XD7,0XB7,0X77};	  */
code char key_code[]={0X77,0XB7,0XD7,0XE7,0X7B,0X7D,0XEB,0XED,
                      0XEE,0XDB,0XDD,0XDE,0XBB,0XBD,0XBE,0X7E};
code ksp[4]={0x7F,0xBF,0xDF,0xEF};
void delay (void)  {                   /* 时间延迟函数 */
  unsigned char i,j;                  
     for (i=0;i<5;i++)
          for(j=0;j<255;j++)
          ;
}
char keypad_scan()
{
    char key,i;
    P2=0xF0;
    while (P2!=0xF0);
      do{
       for(i=0;i<=3;i++)
       {         
           P2=ksp[i];
           if(P2!=ksp[i])
           {
              delay();
              key=P2;
              if(key!=ksp[i])
              {
                  return(key);
              }
           }
       }
    } while(1);
}
// 检查是否有按键按下
char gotkey()
{
     char temp,i;
     temp=keypad_scan();
     for (i=0;i<=15;i++) {
          if(temp==key_code[i]) return(i);
     }
     return(16);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -