按键扫描1

转载 2013年12月03日 23:35:50
u8 KEY_Scan(void)
{  
static u8 key_up=1;//按键按松开标志
if(key_up&&(KEY0==0||KEY1==0||KEY2==1))
{
delay_ms(10); //去抖动 
key_up=0; //清楚按键松开标志位
if(KEY0==0)
{
return 1;
}
else if(KEY1==0)
{
return 2;
}
else if(KEY2==1)
{
return 3;
}

}

else if(KEY0==1&&KEY1==1&&KEY2==0)

{

key_up=1;    

return 0;// 无按键按下

}

}

相关文章推荐

新型的按键扫描程序(转)长按 短按 写的很棒

不过我在网上游逛了很久,也看过不少源程序了,没有发现这种按键处理办法的踪迹,所以,我将他共享出来,和广大同僚们共勉。我非常坚信这种按键处理办法的便捷和高效,你可以移植到任何一种嵌入式处理器上面,因为C...
  • xie0812
  • xie0812
  • 2014年01月13日 09:38
  • 841

独立按键扫描程序的思考(整合两种算法)

摘自:http://blog.csdn.net/xuechaojie/article/details/6761772 网上看到Etual 2008年总结的《新型按键扫描》的博文,很有感触。关于按键扫...
  • li_qcxy
  • li_qcxy
  • 2017年01月13日 11:36
  • 90

基于状态机的新型按键消抖扫描程序

一般的按键输入软件接口程序非常简单,在程序中一旦检测到按键输入口为低电平(有时可能为高),便采用软件延时的方法来进行消抖,然后再次检测按键输入,如果再次确认为低电平则表示有按键按下,转入执行按键处理程...
  • yzb1012
  • yzb1012
  • 2015年03月27日 20:28
  • 1254

键盘的扫描码虚拟码概念 常见Windows键盘按键虚拟码

'当用户按下某个键时, ' 1.键盘会检测到这个动作,并通过键盘控制器把扫描码(scan code)传送到计算机; '       键盘扫描码跟具体的硬件有关的,不同厂商对同一个键的扫描码有可能不...
  • whatday
  • whatday
  • 2011年12月08日 19:29
  • 4222

经典的按键扫描算法

在做项目(工程)的时候,我们经常要用到比较多的按键,而且IO资源紧张,于是我们就想方设法地在别的模块中节省IO口,好不容易挤出一两个IO口,却发现仍然不够用,实在没办法了就添加一个IC来扫键。一个IC...

platform设备驱动之按键扫描(misc设备)

一、开发环境 1、硬件平台:FS2410 2、主机:Ubuntu 10.10 3、内核版本:linux 2.6.35 4、交叉编译工具链:arm-none-linux-gnueabi- ...

单片机按键扫描新方法的讨论

新型的按键扫描程序  不过我在网上游逛了很久,也看过不少源程序了,没有发现这种按键处理办法的踪迹,所以,我将他共享出来,和广大同僚们共勉。我非常坚信这种按键处理办法的便捷和高效,你可以移植到任何一种...

51单片机开发系列五_矩阵按键扫描

51单片机开发系列五 矩阵按键扫描 象棋小子    1048272975 在嵌入式系统中,用的最多的输入设备就是按键,用户的应用需求可通过相应按键传递到系统软件中,软件转而完成用户请求,实现简单的人机...

字符设备驱动之按键扫描——FS2410

一、开发环境 1、硬件平台:FS2410 2、主机:Ubuntu 10.10 3、内核版本: linux 2.6.35 4、交叉编译工具链:arm-none-linux-gnueabi- ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:按键扫描1
举报原因:
原因补充:

(最多只允许输入30个字)