请教一个长按键的问题

2020-02-04 09:30发布

之前看到一个帖子:新型的按键扫描程序(http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=3941614&bbs_page_no=1&search_mode=1&search_text=%B0%B4%BC%FC%C9%A8%C3%E8&bbs_id=9999),于是想写一个长按键的程序:长按key0键切换LCD1602的屏幕显示,不知道为什么切换不了,程序如下:

unsigned char Trg;  
unsigned char Cont;  
unsigned int i=0;
unsigned char longpress=0;
#define KEY_0       0x01

void KeyRead( void )  

{  
    unsigned char ReadData = P1^0xff;      
    Trg = ReadData & (ReadData ^ Cont);      
    Cont = ReadData;                          

}
void main(void)  
{
        sys_init();   
        lcd_bus=0xff;         
        lcd_delay(10);   
        lcd_init();      
        lcd_clear();     
        while(1){
                KeyRead();
                if(Cont&key0){   
                           i++;        
                        if(i>500){
                        longpress=(~longpress);
                        }
                }
                if(longpress==0){
                        display1(); //屏幕1
                }
                if(longpress!=0){
                        display2();     //屏幕2
                }
        }
}  
开机时显示屏幕1,长按key0键切换不到屏幕2,这是什么原因?求解
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
zt2012
1楼-- · 2020-02-05 08:43
 精彩回答 2  元偷偷看……
xiaobendan001
2楼-- · 2020-02-05 14:41
唉,昨天清理的电脑,把登陆信息清理没有了,结果发现密码也忘记了
重新注_册有不能显示,老大啊,赶快帮我把密码找回来吧
xiaobendan001
3楼-- · 2020-02-05 19:11
我回复都看不到,回复了也没有啥用啊
xiaobendan001
4楼-- · 2020-02-06 00:37
楼主搞定了吗?
yanwenbin333
5楼-- · 2020-02-06 04:12
回复【楼主位】opoop130
-----------------------------------------------------------------------

0.5毫秒,您能看到什么?试试改大点
opoop130
6楼-- · 2020-02-06 07:22
 精彩回答 2  元偷偷看……

一周热门 更多>