手把手教你51单片机——矩阵键盘

4×4矩阵键盘代码

代码

u16 keyinit()
{
u16 keyvalue;
key=0xf0; //列扫描
if(key!=0xf0)
{
delay(100); //延时10ms 消抖
if(key!=0xf0)
{
switch (key)
{
case 0xe0: keyvalue=1;break;
case 0xd0: keyvalue=2;break;
case 0xb0: keyvalue=3;break;
case 0x70: keyvalue=4;break;
}
}
}

key=0x0f;     //行扫描
if(key!=0x0f)
{
	delay(100);  //延时10ms 消抖
	if(key!=0x0f)
	{
		switch (key)
		{
			case 0x0e: keyvalue=keyvalue;break;
			case 0x0d: keyvalue=keyvalue+4;break;
			case 0x0b: keyvalue=keyvalue+8;break;
			case 0x07: keyvalue=keyvalue+12;break;
		}
	}
}

return keyvalue;

}

仿真图

在这里插入图片描述
元器件
button (按钮)

发布了5 篇原创文章 · 获赞 3 · 访问量 43

猜你喜欢

转载自blog.csdn.net/weixin_44871327/article/details/104396404
今日推荐