KR900000112B1 - 키보드의 키 입력 판독 회로 - Google Patents
키보드의 키 입력 판독 회로 Download PDFInfo
- Publication number
- KR900000112B1 KR900000112B1 KR1019870005413A KR870005413A KR900000112B1 KR 900000112 B1 KR900000112 B1 KR 900000112B1 KR 1019870005413 A KR1019870005413 A KR 1019870005413A KR 870005413 A KR870005413 A KR 870005413A KR 900000112 B1 KR900000112 B1 KR 900000112B1
- Authority
- KR
- South Korea
- Prior art keywords
- key
- counter
- scan
- decoder
- signal
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Input From Keyboards Or The Like (AREA)
Abstract
내용 없음.
Description
제1도는 본 발명의 회로 구성도.
제2도는 본 발명의 키 입력을 판독의 처리 순서도.
제3도는 본 발명에 적용되는 시스템의 메인디코더에서의 선택신호 출력을 보이는블록도이다.
* 도면의 주요부분에 대한 부호의 설명
1 : 카운터 2 : 디코더
3 : 키 매트릭스 4 : 버퍼
본 발명은 키보드(Key Board)의 키 입력상태를 판독하는 회로에 관한 것이다.
일반적으로, 키보드를 통해 키 입력신호를 받는 전자타자기, 워드프로세서 및 컴퓨터 등에 장착된 마이크로 프로세서의 처리기능을 향상시키기 위해서 마이크로 프로세서의 이용 포트 수가 많아야 하는데, 포트수는 제한되어 있으므로 제어 대상에 대한 적용 포트수를 줄이고 여분의 포트 수를 다른 대상을 제어하는데 이용하는 것이 바람직하다.
종래에는 키보드의 키 입력상태를 판독하기 위하여 시스템의 중앙처리장치(이하 CPU라 칭함)로부터 수개의 포트를 할당받아, 이 포트를 통해 스캔 펄스(Scan Pulse)를 출력하기 때문에 제어대상에 따른 포트 수가 부족하게 되어 이를 보충하기 위해 입출력 확장회로(I/O Expander)를 사용하였다.
이와 같이, CPU의 포트 수를 늘이기 위한 확장회로를 사용항에 따른 비용의 증가 및 다른 주변 장치의 접속 등에 따른 또 하나의 확장회로를 필요로 하는 등의 문제가 있었다.
본 발명은 상기한 문제를 해결하기 위해 안출한 것으로서, 키보드의 키 입력상태를 판독하기 위해 CPU의 포트중 하나의 포트를 통해 출력되는 스캔펄스를 카운터로 카운팅한 후 디코딩하여 키 입력을 판독하는 회로를 제공하므로써 여분의 포트를 다른 대상을 제어하는데 이용하도록 하는데 있다.
이를 위해 본 발명은 CPU의 하나의 포트에서 출력되는 스캔 펄스를 카운트하는 카운터와, 카운터의 출력을 입력하여 스캔라인을 판독하는 디코더와, 키를 구성하여 키가 눌러질 때 이에 대응하는 키 데이터를 발생하는 키 매트릭스와, 디코더의 출력이 키 매트릭스의 입력단 신호에 영향을 받지 않도록 디코더와 키 매트릭스 사이에 접속된 역전류 방지용 다이오드군과, 상기 키 매트릭스에서 출력되는 키 데이터를 일시 저장하는 버퍼로 구성된 회로를 제공한다.
이하 첨부된 도면에 의거하여 본 발명의 실시예를 상세히 설명한다.
제1도는 본 발명의 회로도로서, CPU(도면에 도시되어 있지 않음)로 부터의 리세트신호에 의해 클리어되고, CPU의 한 포트를 통하여 발생되는 스캔펄스(SCAN)를 클럭펄스로 하여 카운트 동작을 수행하는 카운터(11)와, 상기 카운터(1)의 출력신호(Q1-Q4)를 입력신호(A-D)로 하여 카운터(1)의 출력상태를 판독하여서 키 매트릭스(3)의 스캔라인(S0-S9)중 하나를 선택하도록 하는 디코더(2)와 상기 디코더(2)의 출력단(Y1-Y10)이 키 매트릭스(3)의 입력단신호(S0-S9)에 영향을 받지 않도록 디코더(2)와 키매트릭스(3) 사이에 접속된 역전류 방지용 다이오드군(D1)과, 키를 구성하여 키가 눌러질 때 이에 대응하는 키 데이터를 발행시키는 키 매트릭스(3)와, 시스템의 디코더에서 출력되는 선택신호(SELECT)에 의하여 출력인에이블(되어 다이오드군(D2)을 통해 입력되는 키 매트릭스(3)의 키 데이터(D0-D7)를 일시 저장하는 버퍼(4)로 구성되어 있다.
상기한 구성을 갖는 본 발명의 동작은 다음과 같다.
시스템에 전원이 초기 공급되면 전체 시스템은 리세트 되어 초기화 되는데, 이때 CPU로부터의 리세트신호에 의해 카운터(1)는 클리어되어 초기상태에서 카운터(1)는 "0"의 데이터값을 출력한다.
그리고, 카운터(1)는 CPU로부터의 스캔펄스(SCAN)에 동기되어 카운팅하게 되고, 카운터(1)에서 카운팅되어 출력되는 출력신호(Q1-Q4)는 디코더(2)에 인가된다. 여기서 카운터(1)의 출력(표 1)과 그에 따른 디코더(2)의 출력(표 2)은 각각 다음에 예시되어 있다.
[표1]
표 1에서 X는 돈 캐어(Don't Care), 은 초기치이다)
[표2]
(표 2에서는 ABCD=0000이 초기치 혹은 키 스캔을 하지 않은 때이다.)
디코더(2)는 카운터(1)에서 출력되는 신호를 분석하여 이 출력신호에 대응하는 신호를 표 2처럼 출력하여 키 매트릭스(3)의 스캔 라인(S0-S9)중 하나를 선택하게 된다.
즉, 디코더(2)는 인에이블단자()가 접지되어 항상 로우상태를 유지하기 때문에 카운터(1)로부터 신호가 인가됨과 동시에 이 출력신호(Q1-Q4)를 분석하여 출력(Y1-Y10)중 어느 한 라인을 하이상태로 출력시킴으로써 키 매트릭스(3)의 스캔라인(S0-S9)중 출력라인(Y1-Y10)에 대응하는 라인을 선택하게 된다.
만약, 카운터(1)가 "0"을 출력하는 경우에는 즉, 출력신호(Q1-Q4)가 000인 경우에는 디코더(2)가 이 값을 분석하여 출력(YO)을 선택하므로 키 매트릭스(3)의 스캔라인(S0-S9)중 아무 것도 선택하지 않게 된다(표 2). 이것은 초기화 또는 키 스캔을 행하지 않은 경우에 선택되어지는 위치이다.
그러나, 카운터(1)에서 출력단(Q1-Q4)을 통하여 스캔 데이터를 출력하면, 디코더(2)는 카운터(1)의 출력신호를 분석하여 카운터(1)의 출력에 대응하는 출력단(Y1-Y10)중 하나에 하이상태의 신호를 출력하게 된다.
따라서, 키 매트릭스(3)는 디코더(2)의 출력신호에 의해 스캔라인(S0-S9)중에 하나의 스캔라인이 선택되어지고, 이에 따라 키 매트릭스(3)에서 출력되는 키 데이터는 다이오드군(D2)을 통하여 버퍼 (4)에 일시저장된다.
버퍼(4)에 저장된 키 데이터를 CPU가 요구할 때는 메인시스템의 디코더(제3도)에서 로우상태의 선택신호(SELECT)를 버퍼(4)의 출력 인에이블단자()에 출력한다. 이에 따라 버퍼(4)가 출력 인에이블되어 버퍼(4)에 저장되어 있던 키 데이터(D0-D7)는 데이터 버스에 실리게 되고, CPU는 키 데이터값을 읽어들여 키를 판독하게 된다.
상기 버퍼(4)를 출력 인에이블시키기 위한 선택신호(SELECT)를 발생하는 회로는, 제3도에 도시한 바와 같이, CPU의 어드레스(A13-A15)를 입력하고, 데이터 독출신호(RD)에 의해 인에이블되는 디코더(DEC)로서 메인 시스템에 구성되어 있고, 이 디코더(DEC)의 출력단자(Y7)를 통하여 선택신호(SELECT)를 출력한다.
이와 같이, 카운터(1)가 CPU의 하나의 포트를 통해 출력되는 스캔펄스에 의해 동기되어서 순차 출력되는 신호는 디코더(2)에 인가되고, 이 디코더(2)에서는 키 매트릭스(3)의 스캔 라인을 순차 선택하여 키 매트릭스(3)의 입력을 체크한다.
그리고, 키 매트릭스(3)의 스캔 라인수와 대응되는 카운터(1)의 최대값이 지나면 카운터(1)는 다시 "0"으로 환원되어 계수동작을 계속한다.
본 발명의 실시예에는 스캔 라인의 수가 10개이므로, 10을 카운트한 후 클럭펄스가 입력되면 카운터(1)는 클리어되어 출력이 "0"이 된다.(표 1)
제2도는 본 발명의 키 입력 판독방법을 도시한 처리 순서도이다.
제2도에서, 메인 시스템의 스캔 포인터(일종의 레지스터)를 초기화시켜 "0"으로 만들어(SP←) 카운터(1)의 값과 동기시키고, 이 카운터(1)는 CPU의 스캔펄스에 의해 계수를 하여 값을 증가시킨다. 이와 동시에 스캔포인터값도 동기시켜 증가시킨다. 따라서, 상기 스캔 포인터값이 최대이면(SP : MAX)클리어시켜서 카운터(1)의 값과 동일하게 한 다음 종료하고, 최대가 아니면 카운터(1)의 출력단을 통해 임의 값이 출력되면서 디코더(2)는 키 매트릭스(3)의 스캔 라인중 어느 하나를 선택한 경우이기 때문에 스캔동작이 계속된다.
이에 따라 키 매트릭스(3)의 선택된 스캔 라인의 키 입력 유무에 따른 키 데이터가 버퍼(4)에 일시 저장된다.
그리고, 상기 상태에서 CPU의 요구신호에 의해 키 입력이 없는 상태이면 다시 스캔펄스를 출력하기 키 매트릭스(3)의 다음 스캔라인을 선택해서 스캔할 수 있도록 계속 반복한다. 상기와 같이 본 발명에 의하면 중앙처리장치의 하나의 포트를 통해 발생되는 스캔펄스 키보드의 키 입력상태를 감지할 수 있어 포트 부족으로 인한 포트 확장회로의 사용을 방지하고, 여분의 포트를 이용하여 다른 기능을 위한 대상을 제어할 수 있다.
Claims (1)
- 스캔라인에 인가되는 신호에 의해 키데이터를 발생하여 버퍼(4)에 저장시켜서 시스템의 중앙처리장치가 키 입력 데이터를 판독하도록 하는 키 매트릭스(3)를 구비하는 시스템에 있어서, 중앙처리장치의 한 포트를 통해 발생되는 스캔펄스에 의해 동기되고 리세트신호로 클리어되는 카운터(1)와, 상기 카운터(1)의 계수동작으로 출력되는 스캔데이터를 인가하여 키 매트릭스(3)의 스캔라인을 선택하는 신호를 출력하는 디코더(2)와, 상기 디코더(2)와, 키 매트릭스(3) 사이에 역전류방지용 다이오드군(D1)을 연결하여, 키매트릭스(3)의 스캔라인에 스캔데이터에 의한 스캔라인신호가 인가되게 함을 특징으로 하는 키보드의 키 입력 판독회로.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019870005413A KR900000112B1 (ko) | 1987-05-29 | 1987-05-29 | 키보드의 키 입력 판독 회로 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019870005413A KR900000112B1 (ko) | 1987-05-29 | 1987-05-29 | 키보드의 키 입력 판독 회로 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR880014454A KR880014454A (ko) | 1988-12-23 |
KR900000112B1 true KR900000112B1 (ko) | 1990-01-20 |
Family
ID=19261760
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019870005413A KR900000112B1 (ko) | 1987-05-29 | 1987-05-29 | 키보드의 키 입력 판독 회로 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR900000112B1 (ko) |
-
1987
- 1987-05-29 KR KR1019870005413A patent/KR900000112B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR880014454A (ko) | 1988-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR880009311A (ko) | 생산라인 제어시스템 | |
JPH0713926A (ja) | バッファ制御回路及びその操作方法 | |
US4888600A (en) | Keyboard arrangement with ghost key condition detection | |
US4998014A (en) | Optical coordinate-input system | |
KR900000112B1 (ko) | 키보드의 키 입력 판독 회로 | |
US3832694A (en) | Processor unit for data retrieval and processing | |
US5428801A (en) | Data array conversion control system for controlling conversion of data arrays being transferred between two processing systems | |
US6784929B1 (en) | Universal two dimensional (frame and line) timing generator | |
US3492648A (en) | Keyboard selection system | |
JPH0313610B2 (ko) | ||
KR930002304B1 (ko) | 키보우드 장치 | |
JP2775744B2 (ja) | デジタル可聴音発生装置 | |
RU2829117C2 (ru) | Система архитектуры квантового компьютера | |
SU1160387A1 (ru) | Устройство дл ввода информации | |
SU1290330A2 (ru) | Вычислительна система | |
SU1198531A1 (ru) | Устройство дл сопр жени абонентов с электронно-вычислительной машиной | |
SU1141394A1 (ru) | Устройство дл ввода информации | |
KR100202611B1 (ko) | 키이보드 스캔장치 | |
KR890002144Y1 (ko) | 레이저 프린터의 그래픽용 메모리 보오드 | |
KR940006299Y1 (ko) | 공유 메모리의 동시 억세스 제어장치 | |
SU1037233A1 (ru) | Устройство дл ввода информации | |
KR950007122B1 (ko) | 키보드 제어 회로 | |
RU2020744C1 (ru) | Универсальный параллельный счетчик по модулю m - дешифратор количества единиц в n-разрядном двоичном коде | |
KR100360472B1 (ko) | 컴퓨터시스템의인터럽트확장장치 | |
KR0139932Y1 (ko) | 컴퓨터 시스템의 점유 디엠에이 검사장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20021230 Year of fee payment: 14 |
|
LAPS | Lapse due to unpaid annual fee |