原创 按键处理程序

2008-12-29 12:47 2638 6 14 分类: MCU/ 嵌入式

工作中遇到这样的问题,在这写出来作为自己的工作笔记,同时也给网友参考学习!


在参考前端控制器的键值处理程序的时候,原来的程序感觉很别扭,可读性不是很强,我喜欢写自己的一些程序,这样自己读程序容易理解


一下是我的键值处理程序:


 while((tmp&0xf0)!=0xf0)            //检测按键按下key check
 {  


  Delay(5000);      //延时5毫秒
  tmp= P2;       //再次把按键值送入tmp检测
  if((tmp&0xf0)!=0xf0) //如果按键按下,处理按键
   Key_no=~tmp; 
  if((tmp&0xf0)==0xf0)   //按键释放 
    break;    //退出本循环
    
 
 }


当时每次调试的时候总是检测不到按键按下,很苦恼,终于不负有心人,最后检测到没有输入这个程序:tmp=P2


按键按下一旦释放准确检测到按键,写完这个程序,这二天的阴霾一扫而光,很高兴! 

PARTNER CONTENT

文章评论8条评论)

登录后参与讨论

用户1616810 2011-8-27 09:05

您好,我想请教您:信号的划分可以以频率为依据么

用户1380545 2009-1-3 18:00

能不能发完整的程序上来呢,学习学习

用户104533 2009-1-1 23:33

支持

用户198554 2008-12-31 12:56

好习惯

用户198554 2008-12-31 12:56

好习惯

用户198554 2008-12-31 12:55

好习惯

用户1409899 2008-12-30 14:28

延时5毫秒主要消除前沿抖动,一般都延时20毫秒消除前沿抖动,做按键消除抖动的时候不浪费单片机资源

用户1140564 2008-12-30 13:51

一个延时就用5毫秒,会被老板骂的

用户42640 2008-12-29 22:35

能不能对变量做一下说明,看的不是很明白
相关推荐阅读
用户1409899 2013-10-31 14:46
modbus协议crc-16算法
/------------------------------------- #if 0 #define uchar unsigned char #define uint  unsig...
用户1409899 2013-10-31 14:42
堆栈指针
  一道嵌入式系统设计师堆栈指针考题引发的思考: 在8086微处理器中,若(SS)=2000H,(SP)=0100H,(AX)=2117H,执行指令 PUSHAX后存放数据21H的物理...
用户1409899 2013-10-24 16:51
转载 :数据结构内存对齐
内存对齐 在我们的程序中,数据结构还有变量等等都需要占有内存,在很多系统中,它都要求内存分配的时候要对齐,这样做的好处就是可以提高访问内存的速度。 我们还是先来看一段简单的程序: 程序一 ...
用户1409899 2013-01-14 09:51
中星微zc301b摄像头
  硬件环境:友善之臂mini2440开发板+中星微zc301b摄像头 软件环境:linux2.6.29内核+上位机Ubuntu8.04 日    期:2012-12-1...
用户1409899 2012-07-05 19:44
国嵌mp3播放器应用程序
************************************************* Function name: main Parameter    : void Descr...
用户1409899 2012-07-05 19:43
国嵌mp3播放器应用程序
1.掌握双向循环链表,对指针,结构体,动态分配内存等C语言要求较高 2.掌握多进程编程,以及共享内存通信相关方面的内容     /*  *     mp3播放器控制程序  * ...
EE直播间
更多
我要评论
8
6
关闭 站长推荐上一条 /3 下一条