标题: 求大神,单片机矩阵按键如何检测松手 [打印本页]

作者: 寒林    时间: 2015-12-12 23:46
标题: 求大神,单片机矩阵按键如何检测松手
写了个单片机矩阵按键的程序,灵敏,但不知道如何实现判断按键已经松手了,松手后执行另一条程序!

/***************************************************************/  
uchar KeyRvs(void)  
{
        uchar temH, temL,tem ,key1,key;
        P1 = 0xf0; temH = P1;//低四位先输出0;读入,高四位含有按键信息
        P1 = 0x0f; temL = P1;//然后反转输出0;读入,低四位含有按键信息
        tem=temH+temL;
       switch(tem)
        {                                                               
                 case 0xee: key = 1; break;               
                 case 0xde: key = 2; break;
                 case 0xbe: key = 3; break;
                 case 0x7e: key = 10; break;  //A

                 case 0xed: key = 4; break;
                 case 0xdd: key = 5; break;
                 case 0xbd: key = 6; break;
                 case 0x7d: key = 11;break;         //B

                 case 0xeb: key = 7; break;
                 case 0xdb: key = 8; break;
                 case 0xbb: key = 9; break;
                 case 0x7b: key = 12;break;         //C

                 case 0xe7: key = 15;break;         //F
                 case 0xd7: key = 0; break;
                 case 0xb7: key = 14;break;         //E
                 case 0x77: key = 13;break;         //D
//                 case 0xff: key = 16;break;         //
                  
        }
        return key;
}


作者: 红尘有你    时间: 2015-12-19 12:17
松手后键值就为0了,用while(键值为真);就ok了




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1