[問題] FPGA鍵盤使用Verilog進行操控

看板Electronics作者 (Dinex)時間13年前 (2011/06/17 15:23), 編輯推噓2(2016)
留言18則, 3人參與, 最新討論串1/1
各位大大好,本人最近要使用Verilog來撰寫可以使用上面的4*4鍵盤 現在目前遇到的問題是,由於考量到Debounce的因素,所以想請問一下 1.大多Debounce設幾秒較為恰當? 2.由於要求要連續讀取兩個數值,本人採用Finite State的方式(第一個state讀第一個 數值,第二個便讀第二個)進行撰寫,但發現由於設定第一個state讀取到第一個數值時便 立刻換到第二個state,會因為Debounce後產生的連續訊號延續到下個state而造成第二 個state會有直接讀取的疑慮。請問該如何解決?謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.34.25.243

06/17 17:23, , 1F
1. 一般大概20的CLOCK以上都蠻有效果了
06/17 17:23, 1F

06/17 17:24, , 2F
2. 應該是debounce沒濾好造成跑到下一個FSM吧
06/17 17:24, 2F

06/17 17:25, , 3F
不過你FSM是用哪個訊號當triger? 可以採用LED燈當做
06/17 17:25, 3F

06/17 17:25, , 4F
檢測的方式,看是不是你只暗一個數字,可是就跑了
06/17 17:25, 4F

06/17 17:25, , 5F
兩個FSM,如果是,那應該是debounce沒濾好
06/17 17:25, 5F

06/17 17:26, , 6F
"按" 對不起 打錯字
06/17 17:26, 6F

06/17 17:57, , 7F
兩個字儲存都是用同一個FSM進行,只是用STATE來區分(第一個
06/17 17:57, 7F

06/17 17:58, , 8F
STATE:存第一個字,第二個STATE:存第二個字),觸發方式是當
06/17 17:58, 8F

06/17 17:59, , 9F
鍵盤所讀出的數值不等於沒有按下任何鍵的預設數值就指定下一
06/17 17:59, 9F

06/17 18:00, , 10F
CLK正緣觸發時輸入下一個STATE
06/17 18:00, 10F

06/17 18:03, , 11F
上述狀況是本人尚未燒板子前突然想到的,不過我想就是這種觸
06/17 18:03, 11F

06/17 18:04, , 12F
發是否會導致造成此結果(Debounce使用按持續一段時間才承認)
06/17 18:04, 12F

06/17 23:25, , 13F
還是說有更好的寫法?
06/17 23:25, 13F

06/18 00:23, , 14F
我的建議:把sensitive list改為按鈕數字的變化
06/18 00:23, 14F

06/18 00:23, , 15F
或許可以解決這問題,不過這要看您的debounce作的好不好
06/18 00:23, 15F

06/19 22:37, , 16F
謝謝。那請問一下鍵盤的CLK掃描速度設定多快較好?
06/19 22:37, 16F

08/13 19:13, , 17F
謝謝。那請問一下鍵盤的 https://muxiv.com
08/13 19:13, 17F

09/17 23:07, , 18F
不過你FSM是用哪個訊 https://daxiv.com
09/17 23:07, 18F
文章代碼(AID): #1D-m3Z-c (Electronics)