matrix_key.c

来自「51单片机及其C语言程序开发实例光盘资料.rar」· C语言 代码 · 共 40 行

C
40
字号
#include "reg51.h"

void Delay(unsigned int i)
{
	unsigned int j;
	for(;i>0;i--)
		for(j=0;j<100;j++);
	}

void IO_Init()
{
	P1 = 0xff;
	P2 = 0xff;
	}
	
void main()
{
	unsigned char temp,key;
	IO_Init();
	while(1)
	{
		P1 = 0xf0;
		temp = P2 & 0x0f;
		if(temp != 0x0f)
		{
			P1 = 0xfe;
			Delay(1);
			key = P2 & 0x0f;
			P1 = 0xfd;
			Delay(1);
			key &= (P2 & 0x0f);
			P1 = 0xfb;
			Delay(1);
			key &= (P2 & 0x0f);
			P1 = 0xf7;
			Delay(1);
			key &= (P2 & 0x0f);			  
			}
		}
	}

⌨️ 快捷键说明

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