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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機按鍵長短按源程序(不需要通過等待來判定)

  [復制鏈接]
跳轉到指定樓層
樓主
ID:74777 發表于 2018-7-25 22:18 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
從做項目編寫的程序里拆解出來

單片機源程序如下:
  1. uint m;
  2.         static        uchar flag_key=1;                //按鍵松開標志
  3.         static uchar pass=0;                        //長按動作標志,為1時,長按已動作,為0時長按未動作
  4.         if(KEY==0)
  5.         {
  6.                 flag_key=0;                //按鍵按下標志
  7.                 m++;
  8.         }
  9.         else
  10.                 flag_key=1;                //按鍵松開標志
  11.         if((flag_key==1)&&(m>10)&&(m<500))        //按鍵松開,并且m值處于10~500之間,為短按
  12.         {
  13.                 m=0;                                                        //m值清零
  14.                         //短按操作內容                                                        
  15.         }
  16.         if((m>=500)&&(pass==0))                                //判斷是否是長按并且是否已動作,如果是長按并且未動作執行下面括號內的語句
  17.         {                                                
  18.                 pass=1;                                                        //長按動作置1表示長按已動作
  19.                 //長按操作內容
  20.         }
  21.         if(KEY==1)                                                        //判斷按鍵是否松開,松開的話執行下面語句
  22.         {
  23.                 pass=0;                                                        //長按動作標志位置0為下次長按做準備
  24.                 m=0;                                                        //m值清零,為下次按鍵按下做準備
  25.         }
  26. m值大小根據需要進行調整
復制代碼

以上程序51hei提供打包下載:
按鍵長短按.rar (524 Bytes, 下載次數: 165)




評分

參與人數 2黑幣 +20 收起 理由
六月六月 + 5
楊雪飛 + 15 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

來自 2#
ID:160932 發表于 2020-11-22 00:04 | 只看該作者
剛剛在學單片機,搜了下長、短按的方法,就看到這個帖子了。
首先多謝樓主,學習了。
其次看了下代碼,是不是這樣的:
短按總是檢測按鍵彈起時執行動作,意思是按鍵按下后m開始計時,然后判斷彈起了,且是很短的延時就是短按。
如果按下后計時時間較長,那就是長按了。
但是我想無論長按還是短按都是在檢測下按鍵被按下后立即動作,此時如何判斷短按還是長按呢?且只能執行短按或長按的動作,而不能先執行短按的動作,再接著執行長按的動作,這個是不是比較不好實現呢?
回復

使用道具 舉報

板凳
ID:46999 發表于 2018-7-26 10:25 | 只看該作者
好思路,下載收藏以后借鑒
回復

使用道具 舉報

地板
ID:304313 發表于 2019-2-11 08:58 | 只看該作者
學習學習,謝謝分享!
回復

使用道具 舉報

5#
ID:457181 發表于 2019-2-19 08:38 | 只看該作者
剛好要用到,謝謝了!
回復

使用道具 舉報

6#
ID:399179 發表于 2019-4-20 19:56 | 只看該作者
正在學習,收藏了!
回復

使用道具 舉報

7#
ID:9727 發表于 2019-9-18 15:13 | 只看該作者
學習了,謝謝分享
回復

使用道具 舉報

8#
ID:435636 發表于 2019-9-18 18:27 | 只看該作者
看了代碼 ,感覺還是要 不停的調用這個“函數”,再判斷
回復

使用道具 舉報

9#
ID:111376 發表于 2019-9-19 08:49 | 只看該作者
感謝樓主,已學習
回復

使用道具 舉報

10#
ID:56665 發表于 2019-9-19 14:57 | 只看該作者
這種方法有沒有做按鍵雙擊的。
回復

使用道具 舉報

11#
ID:230975 發表于 2019-9-19 15:27 | 只看該作者
謝謝樓主分享
回復

使用道具 舉報

12#
ID:293762 發表于 2019-10-17 19:11 來自觸屏版 | 只看該作者
謝謝分享!學習了。
回復

使用道具 舉報

13#
ID:47652 發表于 2019-11-6 02:54 | 只看該作者
嗯,不錯的資料,謝謝分享!
回復

使用道具 舉報

14#
ID:598207 發表于 2021-10-23 13:19 | 只看該作者
請問各位師傅,有沒有獨立按鍵實現多個功能,使用定時器寫的程序。發來學習一下。謝謝。
回復

使用道具 舉報

15#
ID:609524 發表于 2021-10-23 16:17 | 只看該作者
HEGUANGKUO65667 發表于 2021-10-23 13:19
請問各位師傅,有沒有獨立按鍵實現多個功能,使用定時器寫的程序。發來學習一下。謝謝。

短按,長按,雙擊?
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲一区二区三 | 国产男女视频 | 国产精品视频在线免费观看 | 精品日韩 | 久久噜 | 国产91 在线播放 | 国产精品毛片在线 | 欧洲一区视频 | 亚洲 欧美 综合 | 华丽的挑战在线观看 | 玩丰满女领导对白露脸hd | 亚洲综合色自拍一区 | 亚洲精品久久久一区二区三区 | 国产高清一区二区三区 | 国产中文字幕网 | 国产精品毛片 | 精精精精xxxx免费视频 | 中文字幕一区二区三区乱码图片 | 精品欧美乱码久久久久久 | 亚洲综合日韩精品欧美综合区 | 在线a视频网站 | 久久9久 | 久久里面有精品 | 成人福利在线视频 | 国产乱码高清区二区三区在线 | 九九热在线观看视频 | 亚洲国产精品91 | 成人午夜激情 | 一本岛道一二三不卡区 | 国产中文一区二区三区 | 精品av | 国户精品久久久久久久久久久不卡 | 91综合网| 亚洲黄色一级毛片 | 欧美黄色大片在线观看 | 国产精品国产三级国产aⅴ无密码 | 国产日韩欧美激情 | 久国久产久精永久网页 | 久久综合婷婷 | 国产激情视频 | 久久久91精品国产一区二区三区 |