亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

標題: 單片機按鍵長短按識別程序的問題 [打印本頁]

作者: daiya    時間: 2018-11-17 14:49
標題: 單片機按鍵長短按識別程序的問題
以下是一段識別按鍵長短按得單片機程序段,可是放到程序里卻不能執行,請各位高手指導一下問題出在哪里?
void key_scan(void)
{
        if(key == KEY_DOWN)
        {
                delay_ms(30);
                for(keytime = 0; ((key == KEY_DOWN) && (keytime < LONG_KEY)); keytime++)
                {
                        delay_ms(50);
                }
                if(keytime >= LONG_KEY)
                {

                        led1 = LED_ON;
                        led2 = LED_OFF;               
                }                        
                if((keytime > 0) && (keytime < LONG_KEY))
                {
                    
                        led1 = LED_OFF;
                        led2 = LED_ON;
                }
        }
}   

作者: 紅楓葉    時間: 2018-11-17 15:32
可以改一下延時
作者: xiong2013    時間: 2018-11-17 17:56
可能for循環語句中當出現for循環過程中松開按鍵,沒有及時跳出循環,用break跳出當前循環,有問題估計也就在循環體內
作者: HC6800-ES-V2.0    時間: 2018-11-18 09:08
你這個程序的關鍵,就是for的循環時間,你確定你的長按時間是多少嗎?如果你的長按時間沒到,也就不會有你預計的結果了。
我是這樣做的:
if (K1==0)
                {
                        n=0;
                        while(~Agoto)
                        {
                                n++;
                                Delay10ms(1);
                                if (n>200)
                                {
                                        break;
                                }
                        }
                        if (n>30)
                        {
                                LED=0xf0;
                        }
                        else
                        {
                                LED=0x0f;
                        }
                }
我這個是已經實驗成功了的。
作者: zl2168    時間: 2018-11-18 15:44
本帖最后由 zl2168 于 2018-11-19 16:12 編輯

給你介紹幾個按鍵長短按參考案例
實例5  4種不同方式鍵控信號燈

Proteus仿真一下,確認有效。 實例5 不同方式鍵控燈.rar (31.72 KB, 下載次數: 17)
以上摘自張志良編著《80C51單片機仿真設計實例教程——基于Keil CProteus》清華大學出版社ISBN 978-7-302-41682-1.書中電路和程序設計有詳細說明,程序語句條條有注解。

作者: yong761228    時間: 2018-11-18 17:26
我也剛學單片機不久,是不是for循環語句應該這樣寫,for(keytime = 0; ((key == KEY_DOWN) && keytime < LONG_KEY); keytime++)




歡迎光臨 (http://www.denmoz.com/bbs/) Powered by Discuz! X3.1