

應該會有人好奇會什麼掃描鍵盤需要這個多1N4148二極體?
測試韌體在文末
所有ARDUINO通用
我就來解釋一下
如果不加裝二極體
電流就不會依照我們想要的方式流動
相對的
掃描鍵盤就會發生錯誤
不加任何二極體電路如下圖


為按鍵取名
AC
BD
先按下BD

輸出正常

按下AB

疑?
全零

因為3、4為輸出
同一時間一定是一正一負極
所以造成短路
電流就直接從3流到4,或者是4流到3

按下AD

正常顯示

按下BC

正常顯示

按下CD

跟同時按下AB一樣
造成短路
掃描得到的結果就錯了

因為3、4為輸出
同一時間一定是一正一負極
所以造成短路
電流就直接從3流到4,或者是4流到3

所以要修改電路
其實以上BUG
不是我主要要跟大家說明的BUG

我先加上兩顆1N4148在3、4腳上面

實際就像這樣

原先正常的我就不記錄了
按下AB

正常了

電流方向已被導正


如果同時按下CD
電流亦被導正


音樂一定有機會同時發出超過3種以上的聲音
最大的問題在於同時按下3顆按鈕
電流還是會亂流(這問題叫作GHOST KEY)
同時按下ABD

明明只有按下3顆按鈕
但卻顯示4顆按鈕被按下
是…..是誰幫我按的(汗顏~

問題出在BD
雞婆的把A的訊號帶回給C

同時按下BCD

亦有類似情況

BD把C的訊號帶回給A

這時就需要加裝二極體
稍早增加的二極體可以拿來用
以下加裝的二極體亦可避免短路問題


同時按下ABD

掃描正常了

電流流向正常

同時按下BCD

顯示正常

電流流向正確

以上是以4顆矩陣按鈕為例
想要更多按鈕可以自行擴充
成品使用影片位大家解解渴:
傳送門:
下一篇

上一篇
