标题: 请问程序如何添加才能做到,按键K6或者K7能够长按后每隔一段时间自动加或自动减。感谢 [打印本页]

作者: -xiaolong    时间: 2021-6-10 12:40
标题: 请问程序如何添加才能做到,按键K6或者K7能够长按后每隔一段时间自动加或自动减。感谢

作者: jinzhishuai    时间: 2021-6-10 14:41
    if(R_KEY2 == 0)
    {
        delay_ms(5); //消抖
        while(R_KEY2 == 0)
        {
                time_min ++;//设置时间
                time_sec = 0;
                if(time_min >= 59)
                    time_min = 59;
                memset(str, 0, 10);
                sprintf((char *)str, "%02d:%02d", time_min, time_sec);
                Lcd_P16x16Ch(80, 6, str, 0); //更新显示

            delay_ms(300); //连续间隔时长
        }
    }

作者: boboxuexi    时间: 2021-6-10 15:25
阻塞试延时都不好。。。
作者: shumivan    时间: 2021-6-15 13:48
首先可设定一个10ms的定时器,然后没进一次中断检查一次按键高低状态,如果和上次状态一样为按下,那么加一,如果不一样则清零.然后在这段代码之后,判断10ms的个数值,如果大于你想要设定的长按有效值,那么就在这地方依次连增连减,具体连增连减间距,可自行设定.




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