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

📄 key.c.bak

📁 单片机开发板源程序适合初学者 第一部分4*4矩阵式键盘
💻 BAK
字号:
/*

*/

#include <reg51.h>
//LCD的口线
sbit E=P3^5;
sbit RW=P3^6;
sbit RS=P3^7;	

//8字LED的连接方法
//P0.7,P0.6,P0.5,P0.4,P0.3,P0.2,P0.1,P0.0
//G,   F   A   E   B   H  C   D


unsigned char code ledcode[]={0x84,0xf5,0x46,0x54,0x35,0x1c,0x0c,0xd5,	
			      0x04,0x14,0x05,0x2c,0x8e,0x64,0x0e,0x0f};	//数码管段码表
void scankey(void);

void main(void)
{
	E=0;			//取消LCD对LED的影响
	RW=0;
	RS=1;
	P2=0xfe;		//用第一个8字数码管显示
	P0=0x8c;		//上电显示"P"
	while(1)
	{
		P1=0xef;
		scankey();
		P1=0xdf;
		scankey();
		P1=0Xbf;
		scankey();
		P1=0x7f;
		scankey();
	}
}

void	scankey(void)
{
	switch(P1)
	{
		case 0xee:	{ P0=ledcode[0];}break; // 键 "0"
	 	case 0xed:	{ P0=ledcode[1];}break; // 键 "1"
	 	case 0xeb:	{ P0=ledcode[2];}break; // 键 "2
	 	case 0xe7: 	{ P0=ledcode[3];}break; // 键 "3"

		case 0xde:	{ P0=ledcode[4];}break; // 键 "4
	 	case 0xdd:	{ P0=ledcode[5];}break; // 键 "5
	 	case 0xdb:	{ P0=ledcode[6];}break; // 键 "6
	 	case 0xd7:	{ P0=ledcode[7];}break; // 键 "7

	 	case 0xbe:	{ P0=ledcode[8];}break; // 键 "8
	 	case 0xbd:	{ P0=ledcode[9];}break; // 键 "9
	 	case 0xbb:	{ P0=ledcode[10];}break; // 键 "a
		case 0xb7:	{ P0=ledcode[11];}break; // 键 "b

	 	case 0x7e:	{ P0=ledcode[12];}break; //键 "c"
	 	case 0x7d:	{ P0=ledcode[13];}break; //键 "d"
	 	case 0x7b:	{ P0=ledcode[14];}break; //键 "e"
	 	case 0x77:	{ P0=ledcode[15];}break; //键 "f"

	 	default: 	break;
	}
}

⌨️ 快捷键说明

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