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

📄 keyboard.c

📁 弹片机的行列式(矩阵式)键盘
💻 C
字号:
#include <reg51.h>
Uart_Init();
sbit P10=0x87;
sbit P11=0x86;
sbit P12=0x85;
sbit P13=0x84;
sbit P14=0x80;
sbit P15=0x81;
sbit P16=0x82;
sbit P17=0x83;
sbit ii=0xb0;
int nkeynumber;

void getkeynumber();

main()
{ 	
	
	
	Uart_Init();
	while(1)
	{ nkeynumber=0xFF;
		getkeynumber();
		 
	
			switch(nkeynumber)
			{	
			        case(0xff):;
				                        break;
				case(0x00):;
							break;
				case(0x01):;
							break;
				case(0x02):;
							break;
				case(0x03):;
							break;
				case(0x04):;
							break;
				case(0x05):;
							break;
				case(0x06):;
							break;
				case(0x07):;
							break;
				case(0x08): ;
							break;
				case(0x09):;
							break;
				case(0x0a):;
							break;
				case(0x0b):;
							break;
				case(0x0c):;
							break;
				case(0x0d):;
							break;
				case(0x0e):;
							break;
				case(0x0f):;
							break;
			
			}

	}
}
Uart_Init()
	{SCON = 0x52;    /* 设置串行口控制寄存器SCON*/
	 TMOD = 0x20;    /* 12M时钟时波特率为2400  */
	 TCON = 0x69;    /* TCON */
	 TH1 =  0xf3;    /* TH1 */
	}
void getkeynumber()
{
P14=0;
{
  if(P13==0) nkeynumber=0x00;
  if(P12==0) nkeynumber=0x01;
  if(P11==0) nkeynumber=0x02;
  if(P10==0) nkeynumber=0x03;
  if(nkeynumber!=0xff)
  return;
  }P14=1;
P15=0;
{
  if(P13==0) nkeynumber=0x04;
  if(P12==0) nkeynumber=0x05;
  if(P11==0) nkeynumber=0x06;
  if(P10==0) nkeynumber=0x07;
  if(nkeynumber!=0xff)
  return;
  }P15=1;
P16=0;
{
  if(P13==0) nkeynumber=0x08;
  if(P12==0) nkeynumber=0x09;
  if(P11==0) nkeynumber=0x0a;
  if(P10==0) nkeynumber=0x0b;
  if(nkeynumber!=0xff)
  return;
  }P16=1;
P17=0;
{
  if(P13==0) nkeynumber=0x0c;
  if(P12==0) nkeynumber=0x0d;
  if(P11==0) nkeynumber=0x0e;
  if(P10==0) nkeynumber=0x0f;
  if(nkeynumber!=0xff)
  return;
  }P17=1;
}

⌨️ 快捷键说明

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