KR200307816Y1 - 컴퓨터 직렬포트용 전자키보드 장치 - Google Patents

컴퓨터 직렬포트용 전자키보드 장치 Download PDF

Info

Publication number
KR200307816Y1
KR200307816Y1 KR20-2002-0038867U KR20020038867U KR200307816Y1 KR 200307816 Y1 KR200307816 Y1 KR 200307816Y1 KR 20020038867 U KR20020038867 U KR 20020038867U KR 200307816 Y1 KR200307816 Y1 KR 200307816Y1
Authority
KR
South Korea
Prior art keywords
key
output
electronic keyboard
gate
controller
Prior art date
Application number
KR20-2002-0038867U
Other languages
English (en)
Inventor
이문기
Original Assignee
이문기
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 이문기 filed Critical 이문기
Priority to KR20-2002-0038867U priority Critical patent/KR200307816Y1/ko
Application granted granted Critical
Publication of KR200307816Y1 publication Critical patent/KR200307816Y1/ko

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/32Constructional details
    • G10H1/34Switch arrangements, e.g. keyboards or mechanical switches specially adapted for electrophonic musical instruments
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/201Physical layer or hardware aspects of transmission to or from an electrophonic musical instrument, e.g. voltage levels, bit streams, code words or symbols over a physical link connecting network nodes or instruments
    • G10H2240/275Musical interface to a personal computer PCI bus, "peripheral component interconnect bus"

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

컴퓨터의 PS2, USB포트 등의 직렬전송 포트(직렬포트)에 연결하여 연주하는 전자키보드 장치로서, 콘트롤러라는 단일의 제어수단을 채용하여 컴퓨터와 키보드 사이의 신호 전송방식을 바꾸고 종래에 전자키보드측에서 수행되던 많은 기능들을 PC측으로 옮겨서 전자키보드측에서는 기본적인 기능만을 수행토록 함으로써 전자키보드의 회로를 단순화하여 제조원가를 낮출 수 있는 고안.

Description

컴퓨터 직렬포트용 전자키보드 장치 {Electronic keyboard apparatus for serial port of computer}
본 고안은 컴퓨터의 PS2, USB포트 등의 직렬전송 포트(직렬포트)에 연결하여 연주하는 전자키보드 장치에 관한 것이다. 컴퓨터와 키보드 사이의 신호 전송방식을 바꾸고, 신호를 해석하는 기능을 키보드 내의 마이컴으로부터 PC로 이동시킴으로써 기존의 전자키보드의 회로를 단순화하여 제조원가를 낮출 수 있는 고안이다.
컴퓨터에 연결하여 사용하는 악기의 하나로서 전자키보드가 있다. 컴퓨터용 전자키보드에는 병렬포트에 연결하여 사용하는 것과 직렬포트에 연결하여 사용하는 것으로 대별된다. 도1에 종래의 컴퓨터 직렬포트용 키보드장치의 개략 구성을 나타내었다. 컴퓨터 직렬포트에 연결하여 사용하는 종래의 전자키보드(10)는 내부에 설치된 마이컴(11)이 키매트릭스 회로(13)(건반스위치가 행렬 형태로 나열된 회로)를 끊임없이 조사하여 각 키의 on, off 상태를 알아내게 되어 있다. 그리고 알아낸 on, off 상태와 그때의 시각(time)을 버퍼인 RAM(15)에 기록한다. 방금 조사한 상태가 이전 상태와 다른 상태라면(즉, 어떤 키의 상태가 on에서 off로 바뀌었거나 off에서 on으로 바뀌었다면) 몇 번째 키가 어떤 상태로 바뀌었는지를 PC에 전송한다. 한편, 보통의 전자키보드는 건반을 누른 속도를 측정하는 방식을 채택하고 있으므로, 한 건반에 두 개의 키를 부착해서 건반을 누르기 시작했을 때와 건반을 더 깊숙이 눌렀을 때 각각 on이 되도록 설계되어 있다. 이 경우 각 키가 on된 시각을 RAM(15)에 기록해 놓고 두 시간차를 계산해서 건반이 눌려진 속도를 구할 수 있다.
이러한 작동 방식은 마이컴(11)에 연결된(또는 마이컴에 포함되는) ROM(17)에 그러한 키매트릭스 회로(13)를 스캔하는 기능과 타건속도 계산과 버퍼 관리를 하는 프로그램(펌웨어 등)이 수록되어 있어야 하고 각 키의 on, off 상태와 on된 시각을 기록하기 위한 버퍼(RAM(15))가 있어야 가능하다.
도1에서 S.I.E. 블록(19)은 "직렬인터페이스엔진(serial interface engine)"의 약어로서, 전송할 병렬데이터를 직렬데이터로 변환하여 PC로 전송해주는 부분이다. 이는 PC의 직렬포트를 통해 전자키보드(10)가 연결될 경우에는 UART라는 칩에 해당한다. 그리고 PC의 USB포트를 통해 전자키보드가 연결될 경우에는 그런 기능을 하는 전용 마이컴 또는 칩이 있다.
도1과 같이 구성되는 종래의 직렬포트용 전자키보드(10)에 있어서는 그 동작원리상, 내부에 마이컴(11)은 물론 ROM(17)과 RAM(15)을 포함하고 있으므로 회로가 복잡하여 제조원가가 높은 문제가 있었다. 본 고안은 이러한 점에 착안하여, 전자키보드의 구조를 간단하게 하기 위하여 콘트롤러라는 단일의 제어수단을 채용하여 종래에 전자키보드측에서 수행되던 많은 기능들을 PC측으로 옮겨서 전자키보드측에서는 기본적인 기능만을 수행토록 하여, 키보드의 구성을 단순화하여 제조원가를 낮추는 직렬포트용 전자키보드 장치를 개발하였다.
도1은 종래의 직렬포트용 키보드의 블록구성도.
도2는 본 고안에 따른 직렬포트용 키보드의 블록구성도.
도3은 본 고안의 제1실시예의 블록구성도.
도4는 본 고안의 제2실시예의 회로도.
도5는 도4의 스위치열(key column)의 구체도.
<도면부호의 설명>
종래의 전자키보드(10), 본 고안의 전자키보드(20), 콘트롤러(26), NOR게이트(43), OR게이트(45), 제2OR게이트(44), 4-16 디멀티플렉서(46), 다이오드(D), 건반(K)
<고안의 개요>
도2에서와 같이, 본 고안에 따른 전자키보드 장치(20)는 종래의 직렬포트용 전자키보드 장치와 유사하게 키매트릭스(22)와 S.I.E.(24)를 포함하고 있지만, 종래와 다른 구성요소로서 콘트롤러(26)라는 단일의 제어수단을 갖고 있다.
본 고안에서의 콘트롤러(26)는 종래 전자키보드의 마이컴과는 다른 것이다. 도1의 마이컴(11)은 ROM(17) 및 RAM(15)과 함께 기능하여 키매트릭스회로(13)의 연속적인 조사를 수행하고 조사결과를 RAM(15)에 저장하고 PC로 인터럽트 전송을 하는 기능을 하는 수단이었다("종래기술의 설명" 참조). 반면에 본 고안에서의 콘트롤러(26)는 다음과 같은 기능을 수행한다 -- 작업1: 콘트롤러(26)가 PC에 키매트릭스(22)를 검사하기 시작한다는 신호(time stamp signal)를 전송한다. 작업2: 콘트롤러(26)가 키매트릭스(22)의 키들을 하나씩 차례대로 스캔하여 on, off 상태를 조사한다. 작업3: 검사 결과, 특정 키가 on인 상태라면 그 키가 몇 번째 키인지를 PC로 즉시 전송한다(S.I.E.(24)를 통한 직렬신호로 전송함). 작업4: 모든 키를 조사했으면 위의 작업1부터 같은 과정을 반복한다.
한편, 전자키보드(20)로부터 직렬신호를 받은 PC는, 설치된 프로그램에 의해 전자키보드(20)로부터 인터럽트 방식으로 신호를 받아 다음과 같은 방식으로 작동한다. (PC에는 사전에, 실행 직후 키의 on, off 여부를 저장할 버퍼와 키가 on된 시각을 기록할 버퍼를 키의 개수만큼 준비하여야 한다. 예를 들어서 건반이 64개이고 각 건반에 2개의 키가 부착되어 있어서 전체의 키가 128개라면 on, off 버퍼 128개와 on된 시각 버퍼 128개가 필요하므로 총 256개의 버퍼를 준비해야 한다. 이는 프로그램에서 배열변수(array)로 구현할 수 있다.)
아무런 키도 눌려지지 않은 경우에, PC측 프로그램은 일정한 시간 간격으로 키매트릭스를 검사하기 시작한다는 신호(time stamp signal)를 수신하고 다음 신호를 대기한다. 만약 수신되지 않았던 키의 번호가 수신되었다면 그 순간에 사용자가 건반을 눌렀다는 것을 의미한다. 만약 수신되던 키의 번호가 두 개의 time stamp 신호가 수신되는 동안 수신되지 않았다면 그 사이에 사용자가 건반에서 손을 떼었다는 것을 의미한다. 따라서 수신된 신호가 몇 번째 키를 나타내는지와 수신된 때의 시각을 측정하면 몇 번째 건반이 얼마나 세게 눌려졌는지 또는 몇 번째 건반에서 사용자가 손을 떼었는지를 알아낼 수 있고 그에 해당하는 악기 소리를 발생시킬 수 있다.
도2에서의 콘트롤러(26)는 마이컴과 ROM으로 구현될 수도 있고, 마이컴 대신에 발진기(oscillator), 카운터, D-멀티플렉서, OR 게이트, NOR 게이트에 의한 조합회로로 구현될 수도 있다. 이하, 콘트롤러(26)의 구현방식에 따른 두 가지 실시예를 설명한다.
<실시예1>
도2의 콘트롤러(26)가 도3에서와 같이 마이컴(31)과 ROM(33)으로 구성된다. ROM(33)에는 앞에서 설명한 본 고안의 콘트롤러(26)의 기능 실현을 위한 프로그램이 저장되고, 이 프로그램에 의해 마이컴(31)이 동작한다. 마이컴(31)의 동작을 반복해서 설명하면 다음과 같다.
① 마이컴(31)이 PC에 키매트릭스를 검사하기 시작한다는 신호(time stamp signal)를 전송한다. ② 마이컴(31)이 키매트릭스의 키들을 하나씩 차례대로 스캔하여 on, off 여부를 조사한다. ③ 만약 검사 결과 특정 키가 on 인 상태라면 그 키가 몇 번째 키인지를 PC로 즉시 전송한다. ④ 모든 키를 조사했으면 위의 ①부터 같은 과정을 반복한다.
이상에서와 같이, 본 실시예에 따르면 종래의 직렬포트용 전자키보드 장치와 달리 RAM 용량을 대폭 줄일 수 있기 때문에 전자키보드의 제조원가를 낮출 수 있을 뿐만 아니라, 프로그램이 보다 단순화될 수 있기 때문에 ROM 사이즈(즉, 펌웨어 크기)를 줄일 수 있고, 따라서 마이컴의 칩사양을 낮추는 것이 가능해진다.
<실시예2>
도2의 콘트롤러는 도4의 콘트롤러 회로(40)와 같이 발진기(oscillator)(41), 카운터(42), NOR게이트(43), OR게이트(44)(45), 4-16 디멀티플렉서(46)로 구성할 수 있다. 본 실시예2에서, 콘트롤러(40)는 일정 주파수의 펄스를 발생하는 발진기(41); 상기 발진기(41)에서 공급되는 펄스를 입력받아 0~(2n-1)까지 차례로 n비트 값을 출력하는 카운터(42); 상기 카운터(42)에서 출력되는 n비트값(이하, "카운터값")을 입력받고 m개의 출력핀은 상기 키매트릭스의 각 열(column)에 연결되며, 상기 카운터값에 해당하는 출력핀만 Hi를 출력하는 n-m 디멀티플렉서(46); 상기 카운터(42)의 출력핀에서 분기되어, 카운터값이 0일 때에만 Hi상태의 출력을 내보내는 NOR게이트(43); 상기 키매트릭스의 각 행(row)에 입력핀이 연결되며, 키매트릭스를 구성하는 키들 중 최소한 1개 이상의 키가 On되면 Hi상태를 출력하는 OR게이트(45); 상기 NOR게이트(43)과 상기 OR게이트(45)의 출력을 입력받아, 카운터값이 0이거나 사용자가 건반을 1개 이상 누르고 있는 경우에 Hi상태를 출력하고, 이 출력은 상기 S.I.E.에 인에이블/디스에이블 신호로서 입력되는 제2OR게이트(44)로 구성된다.
도4에서는, n=4, m=16인 경우를 예시한 것으로서, 카운터값이 4비트이며, 디멀티플렉서의 입력비트수는 4, 출력비트수는 16개인 경우를 나타낸다. 또한 키매트릭스는 16개의 스위치열(Key column)에 의해 8행-16열 키매트릭스를 구성하는 것을 나타내고 있다. 물론, 이러한 8행-16열의 행수와 열수는 하나의 예를 든 것으로, 실제로는 건반 수에 따라 바뀔 수 있다. 스위치열의 보다 구체적인 구성은 도5와 같이 예시할 수 있다. 도5에서, 각 다이오드(D)는 여러 건반(K)을 동시에 누르는 경우에도 키매트릭스가 제대로 동작하기 위해서 필요한 것이다.
다시 도4로 돌아가서, 본 고안에 따른 콘트롤러(40) 회로의 동작방식은 다음과 같다.
발진기(41)는 일정 주파수의 펄스를 끊임없이 카운터(42)에 공급한다. 카운터(42)는 펄스가 입력됨에 따라 0~15까지 차례로 4비트 값을 출력한다. 카운터에서 출력되는 4비트값(이하, "카운터값")이 4-16 디멀티플렉서(46)에 입력되면, 디멀티플렉서(46)의 출력핀 16개중 카운터값에 해당하는 출력만 5V(Hi 상태)가 되고 나머지 핀은 모두 0V(Low 상태)가 된다. 카운터값이 0~15까지 주기적으로 바뀌므로 디멀티플렉서(46)의 5V 출력핀도 주기적으로 바뀐다. 한편, 카운터값이 0일 때에만 카운터(42)에 연결된 NOR게이트(43)의 출력이 5V가 된다.
그리고 건반을 눌러서 최소한 1개 이상의 키가 On이 되면 카운터값이 주기적으로 바뀌기 때문에 키매트릭스(22)에 연결된 OR게이트(45)의 출력이 5V가 되는 순간이 있게 된다. 그리고 카운터(42)에 연결된 NOR(43)의 출력과 키매트릭스(22)에 연결된 OR(45)의 출력은 다른 제2의 OR(44)에 입력되고 이 제2OR(44)의 출력이 S.I.E.(24)에 인에이블/디스에이블 신호로 입력된다.
결과적으로 카운터값이 0이거나 사용자가 건반을 1개 이상 누르고 있는 경우에 S.I.E.(24)에 입력되는 제2OR(44)의 값이 5V가 된다. 그러면 S.I.E.(24)는 그 경우에(즉 인에이블 신호가 5V인 경우에) 카운터값 4비트와 키매트릭스(22)의 출력 8비트를 PC로 전송한다. 카운터값이 0일 때 신호를 PC로 전송하는 것은 실시예1에서의 time stamp 신호에 해당한다. 그러면 time stamp 신호를 주기적으로 수신 받는 PC에서는 카운터값 4비트와 키매트릭스의 출력값 8비트를 통해서 몇 번째 키가 On이 되었는지 알아낼 수 있다.
여기서, 4비트 카운터값은 On 인 상태의 키가 있는 키매트릭스(22)에서의 열(Column)을 나타내는 정보이고, 8비트 키매트릭스 출력값은 키매트릭스에서 On 된 키가 있는 행(row)을 나타내는 정보이다. 여기서 8비트 중 1인 비트가 On 된 키의 행(row) 위치를 나타낸다.
이상에서, 본 고안의 기술적 사상을 구현하는 두 가지 실시예를 설명하였다. 그러나, 본 고안의 기술적 권리범위가 두 가지 실시예에 국한되는 것은 아니다. 본 고안의 기술적 범위는 아래에 첨부한 등록실용신안에 의해 정해지는 것이다.
본 고안의 방식은 기존 방식보다 회로를 구성하는 칩 사양이 낮아도 되기 때문에 제조원가를 낮출 수 있다. 즉 마이컴의 RAM과 ROM의 사이즈가 작아도 되고, 아예 마이컴을 단순한 OR, NOR, D-Multiplexer 같은 게이트를 조합해서 구현할 수도 있다. 그렇기 때문에 새 방식은 제조원가를 낮출 수 있고 기존 제품에 비해 가격 경쟁력이 있다.

Claims (3)

  1. 공지의 S.I.E.(serial interface engine) 및 공지의 행렬형태 키매트릭스 회로를 포함하며, PC의 직렬포트 (또는 USB 포트)에 연결하여 사용하는 전자키보드 장치로서,
    PC에 키매트릭스를 검사하기 시작한다는 신호(time stamp signal)를 전송하며, 콘트롤러가 키매트릭스의 키들을 하나씩 차례대로 스캔하여 on, off 상태를 조사한 다음에, 조사결과, 특정 키가 on인 상태라면 그 키가 몇 번째 키인지를 상기 S.I.E.를 통하여 직렬신호로 PC에 전송하는 콘트롤러를 포함하는 것을 특징으로 하는, 컴퓨터 직렬포트용 전자키보드 장치.
  2. 청구항 1에 있어서, 상기 콘트롤러는
    상기 콘트롤러의 기능을 수행하는 프로그램을 저장하는 ROM과,
    이 ROM의 프로그램 명령어에 의해 동작하는 마이컴으로 구성되는 것을 특징으로 하는, 컴퓨터 직렬포트용 전자키보드 장치.
  3. 청구항 1에 있어서, 상기 콘트롤러는
    일정 주파수의 펄스를 발생하는 발진기(41),
    상기 발진기(41)에서 공급되는 펄스를 입력받아 0~(2n-1)까지 차례로 n비트값을 출력하는 카운터(42),
    상기 카운터(42)에서 출력되는 n비트값(이하, "카운터값")을 입력받고 m개의 출력핀은 상기 키매트릭스의 각 열(column)에 연결되며, 상기 카운터값에 해당하는 출력핀만 Hi를 출력하는 n-m 디멀티플렉서(46),
    상기 카운터(42)의 출력핀에서 분기되어, 카운터값이 0일 때에만 Hi상태의 출력을 내보내는 NOR게이트(43),
    상기 키매트릭스의 각 행(row)에 입력핀이 연결되며, 키매트릭스를 구성하는 키들 중 최소한 1개 이상의 키가 On되면 Hi상태를 출력하는 OR게이트(45),
    상기 NOR게이트(43)과 상기 OR게이트(45)의 출력을 입력받아, 카운터값이 0이거나 사용자가 건반을 1개 이상 누르고 있는 경우에 Hi상태를 출력하고, 이 출력은 상기 S.I.E.에 인에이블/디스에이블 신호로서 입력되는 제2OR게이트(44)로 구성되는 것을 특징으로 하는, 컴퓨터 직렬포트용 전자키보드 장치.
KR20-2002-0038867U 2002-12-30 2002-12-30 컴퓨터 직렬포트용 전자키보드 장치 KR200307816Y1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20-2002-0038867U KR200307816Y1 (ko) 2002-12-30 2002-12-30 컴퓨터 직렬포트용 전자키보드 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20-2002-0038867U KR200307816Y1 (ko) 2002-12-30 2002-12-30 컴퓨터 직렬포트용 전자키보드 장치

Publications (1)

Publication Number Publication Date
KR200307816Y1 true KR200307816Y1 (ko) 2003-03-17

Family

ID=49403156

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20-2002-0038867U KR200307816Y1 (ko) 2002-12-30 2002-12-30 컴퓨터 직렬포트용 전자키보드 장치

Country Status (1)

Country Link
KR (1) KR200307816Y1 (ko)

Similar Documents

Publication Publication Date Title
CN1770637B (zh) 带按键去反跳功能的按键检测方法和系统
KR20070027766A (ko) 키 또는 버튼 매트릭스 스캐닝을 위한 방법 및 장치
US5610601A (en) Multi-purposes keyboard interface
US4918445A (en) Scanning, row-column type keyboard
US6181262B1 (en) Keyboard scan code snooper
JPS60181866A (ja) キ−デ−タエミユレ−シヨン方式
KR100494469B1 (ko) 광 마우스용 단일 집적회로
KR200307816Y1 (ko) 컴퓨터 직렬포트용 전자키보드 장치
JP4027285B2 (ja) キーパッド装置
CN102298445B (zh) 通用速录键盘
CN102722120A (zh) 一种超低功耗的仪器用键盘控制器
GB2060182A (en) Signal monitoring apparatus
TWI670630B (zh) 主動輸入元件操作方法及對應輸入元件、輸入配置及電腦程式產品
CN103048958A (zh) 虚拟电子测量仪器集成系统基础架构
JPH09274538A (ja) マトリックス型タッチパネル入力装置
US20020059357A1 (en) System, method and apparatus of simplifying interpretation of suspend and wake-up functions in operating system for information appliance (IA)
KR100319516B1 (ko) 키입력스캐닝장치
CN105204792B (zh) 打印机控制面板信息提取与解析装置及方法、打印机系统
US20060090043A1 (en) Handling of TxEna in an XDRTM memory controller
SU1473080A1 (ru) Сенсорна клавиатура
CN118168695A (zh) 一种基于fpga的压敏阵列信号采集系统
KR20210121962A (ko) 노이즈 제거 기능을 구비한 고속 키보드장치
SU1418727A1 (ru) Устройство дл обмена данными между процессором и периферийными устройствами
SU888100A1 (ru) Устройство дл ввода информации
JP2631002B2 (ja) キャパシティブキーボード

Legal Events

Date Code Title Description
REGI Registration of establishment
FPAY Annual fee payment

Payment date: 20040213

Year of fee payment: 3

LAPS Lapse due to unpaid annual fee