diode_open.gif

위와 같이 다이오드를 배치하면 어떠한 키 조합에서도 고스트 현상이 발생하지 않습니다.


위 링크에 가 보면 키보드에서 발생하는 다양한 상황과 그에 대한 대처가 자세히 나와 있어, 소개해 봅니다.

참고로 다이오드는 흔히 쓰는 1N4001 이 아닌, 1N4148 을 쓰라고 충고하고 있습니다. 1N4001은 fault tolerance가 60Hz에 불과해 1초에 60번 이상의 신호가 가해지면(여러분이 치는게 아니고, 컨트롤러가 신호를 보내는 횟수입니다) 제대로 된 동작을 보장하지 않으므로, 4ns 의 동작 타임을 보장하는 1N4148을 쓰라고 하는군요.

아꽈님이 컨트롤러에서 blocking 관련 로직을 뺄 수 있는 옵션을 넣어주신다면 위와 같이 회로를 살짝 개조해서 간편하게 무한입력 키보드를 만들 수 있겠네요.

그리 어려운 작업은 아니니 혹시 이 글을 보신다면 한번 부탁드려 봅니다.

추가사항 ) 이 배치를 기판에 어떻게 적용할 수 있을지에 대해서 그려봤습니다. 모든 row쪽 스위치 납땜 구멍에 대해서

diod_placement.jpg

위와 같이 작업하면 최소한의 작업으로 다이오드를 심을 수 있을 것 같습니다.

http://devicemart.co.kr/mart7/mall.php?cat=034009000&query=view&no=8289

에서 구매할 수 있는 SMD4148 다이오드를 쓰면 될 것 같습니다. 일반적인 키보드를 작업한다고 생각하면 약 6천원어치 사면 해결되네요.

오류가 있거나 더 좋은 방법이 있다면 댓글 달아 주세요 :)

ps. 키 네 개에서의 실험은 성공했습니다.
참고해주세요.
Share