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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機10mS主循環,按鍵和蜂鳴器如何處理?

[復制鏈接]
跳轉到指定樓層
樓主
ID:1040201 發表于 2022-7-30 15:04 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問大佬,如果主循環以10mS的基礎時鐘運行,那么在這種情況下,1:按鍵使用中斷觸發是如何消抖的? 2:蜂鳴器是如何連續發聲1秒的?是否有好的示例可以參考?
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:332444 發表于 2022-8-1 08:22 | 只看該作者
按鍵使用中斷觸發是硬件消抖,有源蜂鳴器是計時1秒執行
回復

使用道具 舉報

板凳
ID:123289 發表于 2022-8-1 09:42 | 只看該作者
1:按鍵使用中斷觸發是如何消抖的?
方案很多,與【主循環以10mS的基礎時鐘運行】沒有矛盾。
舉例:每N毫秒(例5ms,你用10ms也行)檢測一次按鍵,M次(6次,你用3次也行)檢測得到的開關狀態一致,就判斷開關穩定了。
2:蜂鳴器是如何連續發聲1秒的?
它的開關變化,只是瞬間的事,只與你需要對它作業的瞬間操作即可,更何況音響多個少個10ms,人是聽不出來的。
回復

使用道具 舉報

地板
ID:451718 發表于 2022-8-1 10:07 | 只看該作者
節拍計數,符合條件停止。
KeySign ++;   
if(KeySign>=2)
{
   KeySign = 0;
  //執行案件操作
}


Buz = 1;
BuzSign ++;
if(BuzSign>=100)
{
   BuzSign = 0;
   Buz = 0;
}
回復

使用道具 舉報

5#
ID:161164 發表于 2022-8-1 10:11 | 只看該作者
先假設你用C51

  1. void main()
  2. {
  3.         while(1)
  4.         {
  5.                 if(Flag10ms)
  6.                 {
  7.                         static unit8_t Delay_XD = 0;
  8.                         static unit8_t Delay_Beep = 0;
  9.                         Flag10ms = 0;
  10.                         if(!Key)//有鍵按下,低電平
  11.                         {
  12.                                 if(Delay_XD<0xFF)Delay_XD++;
  13.                                 if(Delay_XD==2)
  14.                                 {
  15.                                         Delay_Beep = 100;                                       
  16.                                 }
  17.                         }else{                                
  18.                                 Delay_XD = 0;
  19.                         }
  20.                         if(Delay_Beep)
  21.                         {
  22.                                 Beep = 0;//低電平啟動蜂鳴器輸出
  23.                                 Delay_Beep--;
  24.                         }else
  25.                         {
  26.                                 Beep = 1;//高電平停止蜂鳴器輸出
  27.                         }
  28.                 }
  29.         }        
  30. }
復制代碼
回復

使用道具 舉報

6#
ID:195496 發表于 2022-8-4 08:51 | 只看該作者
定時器中斷定時,產生一個時間標志,在主程序中判斷調用
回復

使用道具 舉報

7#
ID:1042823 發表于 2022-8-24 16:32 | 只看該作者
按鍵消抖可以用CPU去執行別的代碼在回頭執行按鍵,例如1ms蜂鳴器
回復

使用道具 舉報

8#
ID:1042965 發表于 2022-8-26 00:09 | 只看該作者
可以多次檢測,例如20ms內檢測若干次,若結果穩定了才處理。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 精品不卡 | 性精品| 91精品一区二区三区久久久久久 | 国产乱码高清区二区三区在线 | 久久久久国产精品www | 久热久热 | 五月天婷婷激情 | 欧美不卡一区二区三区 | 欧美日韩视频 | 啪啪精品 | 午夜影院在线观看 | www.47久久青青 | 国产精品区二区三区日本 | 国产精品一区二区视频 | 99精品欧美一区二区蜜桃免费 | 欧美三区视频 | 欧美区在线 | 综合激情av| 天堂av在线影院 | 色永久 | 国产精品视频网 | 国产999精品久久久久久 | 成人免费高清 | 97综合在线 | 激情91 | 国产美女视频 | 日韩精品久久久久久 | www国产成人免费观看视频,深夜成人网 | 色婷婷综合成人av | 欧美性大战xxxxx久久久 | 国产福利91精品 | 欧美性网 | 国产日韩视频 | 亚洲精品68久久久一区 | 五月网婷婷 | 欧美日韩中文国产一区发布 | 一级电影免费看 | 免费在线播放黄色 | 成年人在线观看 | 久久久久久久久久久国产 | 亚洲国产网站 |