久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4128|回復(fù): 9
收起左側(cè)

分享一個(gè)單片機(jī)按鍵抬起不用死等的代碼

  [復(fù)制鏈接]
ID:101869 發(fā)表于 2021-5-23 18:03 | 顯示全部樓層 |閱讀模式
我們經(jīng)常用到按鍵抬起檢測,很多人用while(!key)程序走到這里會(huì)死等,影響效率。分享一個(gè)不用死等的代碼,實(shí)際用著還不錯(cuò)。代碼如下
if(key==0&&key_sign==0) //檢測輸入如果為0(按鍵按下)并且按鍵標(biāo)志為0.
        {
                   delay(10);  //抗抖延時(shí)                  

                      key_sign=1; //按鍵狀態(tài)標(biāo)志置1。        

        }
              if(key==1&&key_sign==1)//如果松開按鍵
              {
                 key_sign=0;//按鍵狀態(tài)標(biāo)志置0。
                           //寫執(zhí)行的程序。
                                                      
                }        

回復(fù)

使用道具 舉報(bào)

ID:907675 發(fā)表于 2021-5-23 18:27 | 顯示全部樓層
好思路
回復(fù)

使用道具 舉報(bào)

ID:584814 發(fā)表于 2021-5-23 18:35 | 顯示全部樓層
為何不在中斷中用 ?
回復(fù)

使用道具 舉報(bào)

ID:47286 發(fā)表于 2021-5-24 01:22 來自觸屏版 | 顯示全部樓層
man1234567 發(fā)表于 2021-5-23 18:35
為何不在中斷中用 ?

因?yàn)橹袛噘Y源少 而且按鍵沒必要
回復(fù)

使用道具 舉報(bào)

ID:451718 發(fā)表于 2021-5-24 16:32 | 顯示全部樓層
在按鍵檢測過程中用delay 有很多弊端,如下解決方法,即可防止抖動(dòng),又可調(diào)節(jié)按鍵手感,更加不會(huì)出現(xiàn)while(!key)的尷尬。  而且資源占用少。
switch(key)
{
    case 0:
        if((Systick-Tpress)<100) break;
        //------------按鍵響應(yīng)操作
        Tpress = Systick;
    break;
    case 1:
        Tpress = Systick;
    break;
}
Systick和Tpress是什么變量? 不做解釋了,不懂的看多點(diǎn)例程就知道了。
回復(fù)

使用道具 舉報(bào)

ID:299626 發(fā)表于 2021-5-26 00:09 | 顯示全部樓層
mark,如果可以的話,按鍵用帶中斷的IO是最方便的,
回復(fù)

使用道具 舉報(bào)

ID:47286 發(fā)表于 2021-5-26 10:26 來自觸屏版 | 顯示全部樓層
我還是覺得用定時(shí)器好點(diǎn) 一個(gè)定時(shí)器中斷可以給多個(gè)變量累加 中斷只有2 擴(kuò)展了也沒幾個(gè) 相比中斷資源比定時(shí)器寶貴 一個(gè)按鍵就用中斷有點(diǎn)可惜
回復(fù)

使用道具 舉報(bào)

ID:951974 發(fā)表于 2021-8-30 20:24 | 顯示全部樓層
  delay(10);  //抗抖延時(shí)  這就是瞎胡鬧
回復(fù)

使用道具 舉報(bào)

ID:624769 發(fā)表于 2021-9-1 20:49 | 顯示全部樓層
delay(10) 抗抖這個(gè),和 While 等按鍵抬起,半斤八兩。不管你括號里的10代表什么,真要達(dá)到消抖的效果至少需要10毫秒。用死等消抖,和等按鍵抬起其實(shí)是同根同源。
真要不死等,就是定時(shí)器計(jì)數(shù),連續(xù)5次為0表示確實(shí)按下,為1的時(shí)候就是釋放,計(jì)數(shù)到200就標(biāo)記為長按。
回復(fù)

使用道具 舉報(bào)

ID:119977 發(fā)表于 2021-9-7 10:15 | 顯示全部樓層
我見過的 大師板子都是硬件加個(gè)104電容消抖  不差那幾分錢
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品久久久久avwww潮水 | 中文字幕一区二区三区在线乱码 | 男人天堂网址 | 亚洲国产精品自拍 | 特黄色一级毛片 | 日本免费一区二区三区视频 | 亚洲乱码国产乱码精品精98午夜 | 亚洲视频区| 毛片久久久| 久久不卡区 | 久久久久久成人 | 国产成人免费视频网站高清观看视频 | 国产精品欧美精品日韩精品 | 视频一区欧美 | 操久久| 久久一区二区三区四区五区 | 四虎影院新网址 | 日本精品一区二区在线观看 | 2一3sex性hd| 免费在线黄色av | 国产精品视频入口 | 成人av一区| 91视频一区 | 国产99热在线 | 久久国产精品一区二区三区 | 91佛爷在线观看 | 亚洲精品电影在线观看 | 激情一区 | 久久久夜色精品亚洲 | 国产激情 | 91短视频网址| 国产免费一区二区三区最新6 | 亚洲精品一级 | 婷婷久久精品一区二区 | 午夜国产 | 欧美日韩国产不卡 | 久久久久久久久久久一区二区 | 国产精品久久久乱弄 | 新超碰97 | 在线亚洲人成电影网站色www | 精品久久久久久久久久久久 |