看板 Electronics 關於我們 聯絡資訊
各位大大好,本人最近要使用Verilog來撰寫可以使用上面的4*4鍵盤 現在目前遇到的問題是,由於考量到Debounce的因素,所以想請問一下 1.大多Debounce設幾秒較為恰當? 2.由於要求要連續讀取兩個數值,本人採用Finite State的方式(第一個state讀第一個 數值,第二個便讀第二個)進行撰寫,但發現由於設定第一個state讀取到第一個數值時便 立刻換到第二個state,會因為Debounce後產生的連續訊號延續到下個state而造成第二 個state會有直接讀取的疑慮。請問該如何解決?謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.34.25.243
bearpower:1. 一般大概20的CLOCK以上都蠻有效果了 06/17 17:23
bearpower:2. 應該是debounce沒濾好造成跑到下一個FSM吧 06/17 17:24
bearpower:不過你FSM是用哪個訊號當triger? 可以採用LED燈當做 06/17 17:25
bearpower:檢測的方式,看是不是你只暗一個數字,可是就跑了 06/17 17:25
bearpower:兩個FSM,如果是,那應該是debounce沒濾好 06/17 17:25
bearpower:"按" 對不起 打錯字 06/17 17:26
dinex:兩個字儲存都是用同一個FSM進行,只是用STATE來區分(第一個 06/17 17:57
dinex:STATE:存第一個字,第二個STATE:存第二個字),觸發方式是當 06/17 17:58
dinex:鍵盤所讀出的數值不等於沒有按下任何鍵的預設數值就指定下一 06/17 17:59
dinex:CLK正緣觸發時輸入下一個STATE 06/17 18:00
dinex:上述狀況是本人尚未燒板子前突然想到的,不過我想就是這種觸 06/17 18:03
dinex:發是否會導致造成此結果(Debounce使用按持續一段時間才承認) 06/17 18:04
dinex:還是說有更好的寫法? 06/17 23:25
bearpower:我的建議:把sensitive list改為按鈕數字的變化 06/18 00:23
bearpower:或許可以解決這問題,不過這要看您的debounce作的好不好 06/18 00:23
dinex:謝謝。那請問一下鍵盤的CLK掃描速度設定多快較好? 06/19 22:37
sneak: 謝謝。那請問一下鍵盤的 https://muxiv.com 08/13 19:13
sneak: 不過你FSM是用哪個訊 https://daxiv.com 09/17 23:07