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

標題: 單片機按鍵程序,弄了幾天了,實在搞不出來才問的 [打印本頁]

作者: jianuli    時間: 2020-9-30 22:47
標題: 單片機按鍵程序,弄了幾天了,實在搞不出來才問的
各位大神,幫忙寫個簡單的按鍵程序,我弄了幾天了,實在搞不出來才問的,新手,哈哈。謝謝啦。
要求是這樣的:S1表示檢測開關,S2表示按鍵開關。當S1檢測到0時,S2可以按3次,按了3次之后如果S1還檢測到0,那S2還是可以再按3下。如果S1不為0了,那么S2就不能按了,只有S1再次為0,S2才能再按3下...
大家幫幫忙,謝謝啦~
作者: jianuli    時間: 2020-9-30 22:51
版主,網絡問題,把前面一樣的帖子刪啦,謝謝
作者: jianuli    時間: 2020-9-30 23:00
版主,網絡問題,重發帖了幾遍,把前邊的帖子刪啦,謝謝
作者: xianfajushi    時間: 2020-10-1 05:24
while(!s1)if(!s2)...試看
作者: jianuli    時間: 2020-10-1 12:36
xianfajushi 發表于 2020-10-1 05:24
while(!s1)if(!s2)...試看

您好,不能用while
作者: SaPmon    時間: 2020-10-1 13:14
令s2按得計數為i.while(s1==0),if(i<6),i++(響應)else(不響應)
作者: jianuli    時間: 2020-10-1 14:29
大家幫幫忙咯
作者: jianuli    時間: 2020-10-1 15:03
SaPmon 發表于 2020-10-1 13:14
令s2按得計數為i.while(s1==0),if(i

可以幫寫出來一下嗎,謝謝啦
作者: jianuli    時間: 2020-10-1 16:40
大家路過幫幫啦
作者: liuzx66    時間: 2020-10-1 16:57
  int S2_AN = 0;//按下S2次數
  while (1)
  {
    if (S1 == 0)
    {
      S2_AN = 0;
      while (S2_AN < 3) //按下3次退出
      {
        if (S2 == 0)  S2_AN++;
      }
    }
  }

作者: jianuli    時間: 2020-10-1 23:39
liuzx66 發表于 2020-10-1 16:57
int S2_AN = 0;//按下S2次數
  while (1)
  {

您好,試了下,不行喲,可以不用while嗎?程序會卡住
作者: wulin    時間: 2020-10-2 07:10
本帖最后由 wulin 于 2020-10-2 07:37 編輯

        基本邏輯關系

        unsigned char num=0;
        bit sign=0;

        if(S1==0)
        {
                sign=1;
        }
        if(S2==0 && sign==1 && num<3)
        {
                num++;
                if(num==1)
                        //任務1
                if(num==2)
                        //任務2
                if(num>=3)
                {
                        //任務3
                        sign=0;       
                        num=0;
                }
                while(!S2);//S2松手
        }

作者: 王秋冬    時間: 2020-10-2 08:13
把S2_AN改為S2-AN試試,有師傅說可以。
作者: man1234567    時間: 2020-10-2 09:53
按表述的邏輯分析,S1=0時S2可按3下,再次測S1=0時S2還可以按3下,只有S1非0時S2不可按......
所以就是S1非0時S2不事按,其他都是腦筋急轉彎
你甚至可以寫成S1=0時S2可按5下,再次測S1=0時S2還可以按1下,再次測S1=0時S2還可以按9下,........
作者: liuzx66    時間: 2020-10-2 11:53
jianuli 發表于 2020-10-1 23:39
您好,試了下,不行喲,可以不用while嗎?程序會卡住

你的按鍵處理程序沒有處理好,這個只是給你參考,是不能直接拿來用的。要根據你的實際情況改一下




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