Abstract
In this paper, we propose a software algorithm that can configure n-key roll-over that detects all keys without limitation on the number of pressed keys in the dynamic scanning detection of a keyboard composed of a matrix. The proposed algorithm uses the timer interrupt of the microcontroller for computer keyboard control, so that a constant and accurate detection interval can be obtained, and an accurate debounce time can be provided. In order to confirm the effectiveness of the proposed algorithm, a microcontroller was connected to a toy keyboard constructed in the form of a clavier and experiments were conducted. As a result of the experiment, it was confirmed that detection of all keys was performed accurately regardless of the number of keys pressed.
본 논문에서는 매트릭스 형태로 구성된 키보드의 다이나믹 스캐닝 검출에 있어 눌리는 키의 수에 제한 없이 모든 키를 감지하는 n-키 롤-오버를 구성할 수 있는 소프트웨어 알고리즘을 제시하였다. 제시한 알고리즘은 컴퓨터 키보드 제어용 마이크로컨트롤러의 타이머 인터럽트를 이용하므로 일정하고 정확한 검출 간격을 얻을 수 있으며, 정확한 디바운스 시간을 부여할 수 있는 장점이 있다. 제시한 알고리즘의 효과를 확인하기 위해 건반 형태로 구성된 장난감 키보드에 마이크로컨트롤러를 접속하고 실험을 진행하였으며, 실험 결과 동시에 눌리는 키의 수에 관계없이 모든 키에 대한 검출이 정확히 이루어짐을 확인하였다.