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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

求助單片機C語言按鍵的不同時間長按識別程序

  [復制鏈接]
跳轉到指定樓層
樓主
ID:1041297 發表于 2023-3-20 14:08 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問怎么寫3s識別一次長按,Led燈亮,4秒也實現一次長按,Led燈滅。而且不能按鍵松開才執行效果,不能用任何循環語句(while或者for循環),只能用判斷語句來識別.
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:69038 發表于 2023-3-20 14:34 | 只看該作者
3秒和4秒的差別,一個開一個關,普通人實操時還真掐不準這時間。。。不能用循環,就用定時器計數吧~~
回復

使用道具 舉報

板凳
ID:839835 發表于 2023-3-20 14:38 | 只看該作者
void keyscan()
{
   if(keydownd)
{
  timercnt++;
  if(timercnt > 3000)
  {
     timercnt  = 0;
     led_on();
  }
}
else
{
timercnt  = 0;
}
}
回復

使用道具 舉報

地板
ID:624769 發表于 2023-3-20 16:49 來自觸屏版 | 只看該作者
不松開才執行,怎么在三秒的時候知道你不是打算按4秒呢?你不覺得這個要求前后矛盾么?
回復

使用道具 舉報

5#
ID:139866 發表于 2023-3-20 17:29 | 只看該作者
0秒的時候檢測按下,
三秒的時候檢測松開,如果松開用個標志位記下,
四秒的時候檢測松開,如果松開再用個標志位記下,
檢測完了根據這兩個標志位就知道一共按了三秒還是4秒了。

當然,這個方法即時性不高,你可以提高檢測頻率從而提高即時性
回復

使用道具 舉報

6#
ID:354404 發表于 2023-3-20 19:57 | 只看該作者
最好是使用定時器實現會比較方便
回復

使用道具 舉報

7#
ID:213173 發表于 2023-3-21 07:00 | 只看該作者
設計按鍵短按長按本身不是什么難題,問題是邏輯上要能說得通。長按不等按鍵松開就執行效果也很簡單。但你按下時間達3秒,單片機如何判斷你想按3秒還是4秒必須有另一個判斷條件,否則辦不到。比如按下時間達3秒,查詢LED狀態,LED狀態滅則開亮,否則等待到達4秒時關閉。
回復

使用道具 舉報

8#
ID:384109 發表于 2023-3-21 08:01 | 只看該作者
這是純粹的偷懶,想通過單一的東西獲得多個結果,最后只得到一個大麻煩
回復

使用道具 舉報

9#
ID:1034262 發表于 2023-3-21 09:59 | 只看該作者
檢測到按下,計數即可,超級簡單
回復

使用道具 舉報

10#
ID:123036 發表于 2023-3-21 11:24 | 只看該作者
MultiButton你值得擁有github.com/0x1abin/MultiButton
回復

使用道具 舉報

11#
ID:485350 發表于 2023-4-4 17:54 | 只看該作者
//10ms內處理
if(Key1_IO == 0)
{
    if(Key_Count != 0xffff)
   {
     Key_Count++;
   }
    if(Key_Count == 300)
    {
      Led_IO = ON;
    }
    if(Key_Count == 400)
    {
     Led_IO = OFF;
    }
}
else

{
   Key_Count = 0;

}

回復

使用道具 舉報

12#
ID:1045628 發表于 2023-4-6 14:41 | 只看該作者
這樣吧,直接開一個定時器的輸入捕獲通道,然后再讀捕獲到的電平時間,就能判斷是3秒還是4秒了;當然,確保你的按鍵沒有抖動,但機械按鍵沒抖動好像不太可能,那就吧抖動忽略,畢竟對于3、4秒來說抖動是很短暫的
回復

使用道具 舉報

13#
ID:517951 發表于 2023-4-8 08:17 | 只看該作者
用定時器1ms中斷計時, 加狀態機就可以實現按鍵防抖功能以及單按,長按,雙擊,等功能.
回復

使用道具 舉報

14#
ID:291668 發表于 2023-4-8 10:20 | 只看該作者
不知道要實現什么效果,如果按著一直不動,按你的要求會看到燈亮一下就滅掉。然后就沒有了。除非松開 再重新長按。可以開個定時器來實現,10ms中斷。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品亚洲精品久久 | www.操.com | 欧美精品乱码久久久久久按摩 | 日韩尤物视频 | 亚洲成人av| 日韩无 | 欧美一级淫片免费视频黄 | 精品综合久久 | 国产黄a一级| 亚洲国产福利视频 | 亚洲一区在线播放 | 91深夜福利视频 | 成人精品久久日伦片大全免费 | 欧美日韩综合精品 | 人人澡人人射 | 欧美成人一级视频 | 国内91在线 | 欧美日本亚洲 | 欧美性极品xxxx做受 | 亚洲综合二区 | 欧美亚洲日本 | 国产欧美在线 | 91色视频在线观看 | 日日干日日射 | 国产欧美日韩一区 | 亚洲 一区 | 91精品国产色综合久久不卡蜜臀 | 午夜视频在线观看网站 | 国产精品久久久久久久久久 | 丁香婷婷成人 | 黄色三级毛片 | 中文字幕亚洲精品在线观看 | 天天看夜夜| 国产激情偷乱视频一区二区三区 | 91精品久久久久久久久久入口 | 蜜桃传媒av | www亚洲一区| 日本特黄a级高清免费大片 成年人黄色小视频 | 特黄视频| av片在线播放 | 男人天堂久久 |