找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4447|回复: 2
收起左侧

51单片机按键问题

[复制链接]
ID:29829 发表于 2011-8-10 18:00 | 显示全部楼层 |阅读模式

//-----------------------------------第一行按键的检测----------------------------
P0=0xfe;
temp=P0;
temp=temp&0xf0;
//如果有按键按下
while(temp!=0xf0)
{
delay(5); //消抖之后如果依然按下,则再次赋值检测
temp=P0;
temp=temp&0xf0;
while(temp!=0xf0) //有键按下
{
switch(temp)
{
case 0xe0:
beep=0;
keyNum=1;
break;
case 0xd0:
beep=0;
keyNum=2;
break;
case 0xb0:
beep=0;
keyNum=3;
break;
case 0x70:
beep=0;
keyNum=4;
break;
}
}
}

这是我写的键盘侦听函数,不能返回按键值,大家帮忙看看是怎么回事??

回复

使用道具 举报

ID:31227 发表于 2011-9-11 09:45 | 显示全部楼层
 试试在这两行之间加上 temp=P0;
回复

使用道具 举报

ID:31227 发表于 2011-9-11 09:46 | 显示全部楼层

在switch语句前再上的(补充)

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表