標(biāo)題: 51單片機的按鍵松手檢測 [打印本頁]

作者: kkk09    時間: 2022-12-27 17:33
標(biāo)題: 51單片機的按鍵松手檢測
51單片機的按鍵松手檢測為啥沒有延時函數(shù)消除抖動呀
作者: kkk09    時間: 2022-12-27 17:34
這個是代碼

IMG20221227173300.jpg (1.49 MB, 下載次數(shù): 83)

IMG20221227173300.jpg

作者: TTQ001    時間: 2022-12-28 01:43
這應(yīng)該由程序員完成,鍵盤輸入去抖動應(yīng)該一直實施。
作者: lkc8210    時間: 2022-12-28 09:41
下次截代碼請包含行數(shù)






作者: univers    時間: 2022-12-28 10:16
上面不是逍抖了一次么。。。。。。。。。。
作者: 名字不是重點    時間: 2022-12-28 11:38
參考地板的圖,很清楚地說明了一件事,放開按鍵時的抖動會被按鍵按下時的去抖動代碼捕捉,被判為無效按鍵,所以放開按鍵時,只要放開了,就是確認(rèn)放開了,不必再去抖了。如要你要計算按鍵時長則另說。
作者: laohu_zz    時間: 2022-12-28 14:57
延時消抖是最簡單的課本實例,實際用狀態(tài)機等方式,不占用運行時間。
作者: JJJ1234    時間: 2022-12-28 16:52
delay(20); 再判斷  按鍵是否按下 這種就是 傳統(tǒng)的軟件消抖。  如果是硬件消抖的話,直接在按鍵兩端并聯(lián)一個100pf的電容即可。
作者: Canliacen    時間: 2022-12-29 16:32
定時器最好了
作者: kkk09    時間: 2022-12-30 00:16
TTQ001 發(fā)表于 2022-12-28 01:43
這應(yīng)該由程序員完成,鍵盤輸入去抖動應(yīng)該一直實施。

謝謝!
作者: kkk09    時間: 2022-12-30 00:16
lkc8210 發(fā)表于 2022-12-28 09:41
下次截代碼請包含行數(shù)

謝謝!我下次注意!
作者: kkk09    時間: 2023-1-2 16:37
univers 發(fā)表于 2022-12-28 10:16
上面不是逍抖了一次么。。。。。。。。。!

謝謝

作者: kkk09    時間: 2023-1-2 16:37
名字不是重點 發(fā)表于 2022-12-28 11:38
參考地板的圖,很清楚地說明了一件事,放開按鍵時的抖動會被按鍵按下時的去抖動代碼捕捉,被判為無效按鍵, ...

謝謝

作者: kkk09    時間: 2023-1-2 16:42
lkc8210 發(fā)表于 2022-12-28 09:41
下次截代碼請包含行數(shù)

大佬,我能再問幾個51單片機的問題嘛
作者: 船長丶    時間: 2023-1-5 09:54
按下的時候消抖, 松開的抖動不會觸發(fā)按鍵按下, 沒有必要重復(fù)檢測
作者: coody_sz    時間: 2023-1-5 11:26
按一定的時隙間隔(比如20ms)讀按鍵,不需要軟件延時(現(xiàn)在的MCU延時20ms則超過40萬條指令時間被耗掉),比較前后兩次讀鍵狀態(tài)相等則有效,強干擾場合還可以回溯前幾次的值。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1