欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 一個C語言開關(guān)程序問題 [打印本頁]

作者: 373630833    時間: 2019-8-25 00:58
標(biāo)題: 一個C語言開關(guān)程序問題
請問一個開關(guān)問題:
    if(P1^0 == 0)
        {
            delayms(10);
            if(P1^0 == 0)
                {
                      P0^0 = 1 ;
                }
        }

我想在這個開關(guān)設(shè)置一個計數(shù)程序,計數(shù)10次。
就是說按下10次后,不管有沒有按下,P0^0   都沒有輸出(P0^0 = 0)。
怎么編寫?


作者: chenyinhu    時間: 2019-8-25 06:08
定義一個p=0   if (p1^0==0)    delay..     if  p1..{p++;if  p=10{p0*0=0    p=0}else p0*0=1}
作者: chenyinhu    時間: 2019-8-25 06:10
p到底是9還是10我沒仔細(xì)推,要是我編程序的話我會這樣,沒實際實驗過不知道能不能行的通
作者: yzwzfyz    時間: 2019-8-25 13:05
太笨,不適合選單片機行業(yè)。
作者: aaaaabangw    時間: 2019-8-25 13:21
要計數(shù)就加一個計數(shù)標(biāo)志位,判斷標(biāo)志位,滿足條件就對應(yīng)輸出就行了
作者: 373630833    時間: 2019-8-26 22:18
chenyinhu 發(fā)表于 2019-8-25 06:08
定義一個p=0   if (p1^0==0)    delay..     if  p1..{p++;if  p=10{p0*0=0    p=0}else p0*0=1}

試過了,
沒有效果

作者: 373630833    時間: 2019-8-26 22:19
aaaaabangw 發(fā)表于 2019-8-25 13:21
要計數(shù)就加一個計數(shù)標(biāo)志位,判斷標(biāo)志位,滿足條件就對應(yīng)輸出就行了

能不能舉個例子呀
謝謝
作者: 373630833    時間: 2019-8-26 22:20
yzwzfyz 發(fā)表于 2019-8-25 13:05
太笨,不適合選單片機行業(yè)。

我知道我笨
不用你說

作者: 月之光芒    時間: 2019-8-27 10:01
if(pcount<10)  
{
  if(P1^0 == 0)
        {
            delayms(10);
pcount++;
            if(P1^0 == 0)
                {
                      P0^0 = 1 ;
                }
        }
}
else
{
P0^0 = 0;
}
作者: csmyldl    時間: 2019-8-27 11:40
if(P1^0 == 0)                 //按鍵按下
        {
            delayms(10);       //消抖
            if(P1^0 == 0)     //再次判斷按鈕按下
                {
                      count++;       //計數(shù)
                      if (count==10)
                      {
                         P0^0 = ~P0^0 ;            //求反輸出
                         count=0;
                       }
                }
        }
//注意P0口是否接了上拉電阻,如果未接,可能實現(xiàn)不了輸出高電平
作者: zqy876    時間: 2019-8-27 16:09
if( P1^0 == 0)                 //按鍵按下
{
        delayms(10);       //消抖
        if(P1^0 == 0)     //再次判斷按鈕按下
          {
                if( keycount <10)
               {
                   keycount++;       //計數(shù)
                   P0^0 = 1;
                }
                else
                P0^0 = 0;
            }
        }
}
//說按下10次后,不管有沒有按下,P0^0   都沒有輸出(P0^0 = 0)
作者: wulin    時間: 2019-8-27 17:31
這段代碼明顯是樓主想當(dāng)然寫的。判斷一個開關(guān)或按鍵不可能對P1全部端口測試,所以 if(P1^0 == 0)并不是異或運算表達(dá)式,而是樓主想判斷P1.0端口的電平。要寫成 sbit key = P1^0; if(key == 0)......
作者: DesertLegend    時間: 2019-8-27 21:20
你的計數(shù)呢
作者: wind2233    時間: 2019-8-29 15:48
小伙子們,這個功能函數(shù)如果不加松手檢測可能會持續(xù)累加按鍵次數(shù),根本不能正常計數(shù)
作者: ccdmcu    時間: 2019-8-31 16:29
14# 加一,應(yīng)該在松手檢測后計數(shù)位++




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