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

📄 keyboard.c

📁 89s51单片机做的计数器
💻 C
字号:
#include "reg51.h"
#include "intrins.h"
#include "keyboard.h"

sbit P1_7=P1^7;
//sbit P1_6=P1^6;
void delay(void)
{
 unsigned char i;
 for(i=0;i<10;i++)//i=10  210
 _nop_();
}
unsigned  scan_key(void)
  { 
    unsigned char result=0;
	P1_7=0;
    P1|=0x40;
    P3|=0x33;
    switch ((P3&0x33)|(P1&0x40))
	   {
	     case 0x33:  result=1; break;
	     case 0x72:  result=2; break;
		 case 0x71:  result=3; break;
		 case 0x63:  result=4; break;
		 case 0x53:  result=5; break;
		 default: 	 result=0; break;		
	   }
    return result;
  }
unsigned get_key(void)
  {
   unsigned char temp1,key_num=0;
   unsigned int i=4000;//按键时间
   if((temp1=scan_key())!=0);
      {
	    delay();
        if( temp1==scan_key())
		{
		 key_num=temp1;
	     while(scan_key()!=0&&i--);//放开按键或时间到都可以退出循环
		}
	   }
   return key_num;
  }

⌨️ 快捷键说明

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