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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4810|回復: 9
打印 上一主題 下一主題
收起左側

分享一個單片機按鍵抬起不用死等的代碼

  [復制鏈接]
跳轉到指定樓層
樓主
ID:101869 發表于 2021-5-23 18:03 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
我們經常用到按鍵抬起檢測,很多人用while(!key)程序走到這里會死等,影響效率。分享一個不用死等的代碼,實際用著還不錯。代碼如下
if(key==0&&key_sign==0) //檢測輸入如果為0(按鍵按下)并且按鍵標志為0.
        {
                   delay(10);  //抗抖延時                  

                      key_sign=1; //按鍵狀態標志置1。        

        }
              if(key==1&&key_sign==1)//如果松開按鍵
              {
                 key_sign=0;//按鍵狀態標志置0。
                           //寫執行的程序。
                                                      
                }        

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏6 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:907675 發表于 2021-5-23 18:27 | 只看該作者
好思路
回復

使用道具 舉報

板凳
ID:584814 發表于 2021-5-23 18:35 | 只看該作者
為何不在中斷中用 ?
回復

使用道具 舉報

地板
ID:47286 發表于 2021-5-24 01:22 來自觸屏版 | 只看該作者
man1234567 發表于 2021-5-23 18:35
為何不在中斷中用 ?

因為中斷資源少 而且按鍵沒必要
回復

使用道具 舉報

5#
ID:451718 發表于 2021-5-24 16:32 | 只看該作者
在按鍵檢測過程中用delay 有很多弊端,如下解決方法,即可防止抖動,又可調節按鍵手感,更加不會出現while(!key)的尷尬。  而且資源占用少。
switch(key)
{
    case 0:
        if((Systick-Tpress)<100) break;
        //------------按鍵響應操作
        Tpress = Systick;
    break;
    case 1:
        Tpress = Systick;
    break;
}
Systick和Tpress是什么變量? 不做解釋了,不懂的看多點例程就知道了。
回復

使用道具 舉報

6#
ID:299626 發表于 2021-5-26 00:09 | 只看該作者
mark,如果可以的話,按鍵用帶中斷的IO是最方便的,
回復

使用道具 舉報

7#
ID:47286 發表于 2021-5-26 10:26 來自觸屏版 | 只看該作者
我還是覺得用定時器好點 一個定時器中斷可以給多個變量累加 中斷只有2 擴展了也沒幾個 相比中斷資源比定時器寶貴 一個按鍵就用中斷有點可惜
回復

使用道具 舉報

8#
ID:951974 發表于 2021-8-30 20:24 | 只看該作者
  delay(10);  //抗抖延時  這就是瞎胡鬧
回復

使用道具 舉報

9#
ID:624769 發表于 2021-9-1 20:49 | 只看該作者
delay(10) 抗抖這個,和 While 等按鍵抬起,半斤八兩。不管你括號里的10代表什么,真要達到消抖的效果至少需要10毫秒。用死等消抖,和等按鍵抬起其實是同根同源。
真要不死等,就是定時器計數,連續5次為0表示確實按下,為1的時候就是釋放,計數到200就標記為長按。
回復

使用道具 舉報

10#
ID:119977 發表于 2021-9-7 10:15 | 只看該作者
我見過的 大師板子都是硬件加個104電容消抖  不差那幾分錢
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表